@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.4.3
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto; } }

/* Font Face */
/*! 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 {
  -webkit-box-sizing: content-box;
          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 */
  -webkit-text-decoration: underline dotted;
          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"] {
  -webkit-box-sizing: border-box;
          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 {
  -webkit-box-sizing: border-box;
          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 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 100%; }

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  font-family: "FordAntenna-Regular", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #000000;
  -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 {
  -webkit-box-sizing: border-box;
          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;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
  cursor: pointer; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.row {
  max-width: 75rem;
  margin-right: auto;
  margin-left: auto; }
  .row::before, .row::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .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; } }

.grid-container {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  max-width: 75rem;
  margin: 0 auto; }
  @media print, screen and (min-width: 40em) {
    .grid-container {
      padding-right: 0.5rem;
      padding-left: 0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-container {
      padding-right: 1rem;
      padding-left: 1rem; } }
  .grid-container.fluid {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    max-width: 100%;
    margin: 0 auto; }
    @media print, screen and (min-width: 40em) {
      .grid-container.fluid {
        padding-right: 0.5rem;
        padding-left: 0.5rem; } }
    @media print, screen and (min-width: 64em) {
      .grid-container.fluid {
        padding-right: 1rem;
        padding-left: 1rem; } }
  .grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin: 0 auto; }

.grid-x {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.cell {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%; }
  .cell.auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .cell.shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }

.grid-x > .auto {
  width: auto; }

.grid-x > .shrink {
  width: auto; }

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

.grid-x > .small-1 {
  width: 8.33333%; }

.grid-x > .small-2 {
  width: 16.66667%; }

.grid-x > .small-3 {
  width: 25%; }

.grid-x > .small-4 {
  width: 33.33333%; }

.grid-x > .small-5 {
  width: 41.66667%; }

.grid-x > .small-6 {
  width: 50%; }

.grid-x > .small-7 {
  width: 58.33333%; }

.grid-x > .small-8 {
  width: 66.66667%; }

.grid-x > .small-9 {
  width: 75%; }

.grid-x > .small-10 {
  width: 83.33333%; }

.grid-x > .small-11 {
  width: 91.66667%; }

.grid-x > .small-12 {
  width: 100%; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .medium-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto; }
  .grid-x > .medium-1 {
    width: 8.33333%; }
  .grid-x > .medium-2 {
    width: 16.66667%; }
  .grid-x > .medium-3 {
    width: 25%; }
  .grid-x > .medium-4 {
    width: 33.33333%; }
  .grid-x > .medium-5 {
    width: 41.66667%; }
  .grid-x > .medium-6 {
    width: 50%; }
  .grid-x > .medium-7 {
    width: 58.33333%; }
  .grid-x > .medium-8 {
    width: 66.66667%; }
  .grid-x > .medium-9 {
    width: 75%; }
  .grid-x > .medium-10 {
    width: 83.33333%; }
  .grid-x > .medium-11 {
    width: 91.66667%; }
  .grid-x > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .large-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto; }
  .grid-x > .large-1 {
    width: 8.33333%; }
  .grid-x > .large-2 {
    width: 16.66667%; }
  .grid-x > .large-3 {
    width: 25%; }
  .grid-x > .large-4 {
    width: 33.33333%; }
  .grid-x > .large-5 {
    width: 41.66667%; }
  .grid-x > .large-6 {
    width: 50%; }
  .grid-x > .large-7 {
    width: 58.33333%; }
  .grid-x > .large-8 {
    width: 66.66667%; }
  .grid-x > .large-9 {
    width: 75%; }
  .grid-x > .large-10 {
    width: 83.33333%; }
  .grid-x > .large-11 {
    width: 91.66667%; }
  .grid-x > .large-12 {
    width: 100%; } }

.grid-margin-x:not(.grid-x) > .cell {
  width: auto; }

.grid-margin-y:not(.grid-y) > .cell {
  height: auto; }

.grid-margin-x {
  margin-left: -0.5rem;
  margin-right: -0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x {
      margin-left: -0.5rem;
      margin-right: -0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x {
      margin-left: -1rem;
      margin-right: -1rem; } }
  .grid-margin-x > .cell {
    width: calc(100% - 1rem);
    margin-left: 0.5rem;
    margin-right: 0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1rem);
      margin-left: 0.5rem;
      margin-right: 0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .cell {
      width: calc(100% - 2rem);
      margin-left: 1rem;
      margin-right: 1rem; } }
  .grid-margin-x > .auto {
    width: auto; }
  .grid-margin-x > .shrink {
    width: auto; }
  .grid-margin-x > .small-1 {
    width: calc(8.33333% - 1rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 1rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 1rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 1rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 1rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 1rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 1rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 1rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 2rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 2rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 2rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 2rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 2rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 2rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 2rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 2rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 2rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 2rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 2rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 2rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 2rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 2rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 2rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 2rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 2rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 2rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 2rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 2rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 2rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 2rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 2rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 2rem); }
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 2rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 2rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 2rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 2rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 2rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 2rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 2rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 2rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 2rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 2rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 2rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 2rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.5rem;
  margin-left: -0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.5rem;
      margin-left: -0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -1rem;
      margin-left: -1rem; } }

.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.5rem;
  margin-left: -0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -0.5rem;
      margin-left: -0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -1rem;
      margin-left: -1rem; } }

.grid-padding-x > .cell {
  padding-right: 0.5rem;
  padding-left: 0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x > .cell {
      padding-right: 0.5rem;
      padding-left: 0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-x > .cell {
      padding-right: 1rem;
      padding-left: 1rem; } }

.small-up-1 > .cell {
  width: 100%; }

.small-up-2 > .cell {
  width: 50%; }

.small-up-3 > .cell {
  width: 33.33333%; }

.small-up-4 > .cell {
  width: 25%; }

.small-up-5 > .cell {
  width: 20%; }

.small-up-6 > .cell {
  width: 16.66667%; }

.small-up-7 > .cell {
  width: 14.28571%; }

.small-up-8 > .cell {
  width: 12.5%; }

@media print, screen and (min-width: 40em) {
  .medium-up-1 > .cell {
    width: 100%; }
  .medium-up-2 > .cell {
    width: 50%; }
  .medium-up-3 > .cell {
    width: 33.33333%; }
  .medium-up-4 > .cell {
    width: 25%; }
  .medium-up-5 > .cell {
    width: 20%; }
  .medium-up-6 > .cell {
    width: 16.66667%; }
  .medium-up-7 > .cell {
    width: 14.28571%; }
  .medium-up-8 > .cell {
    width: 12.5%; } }

@media print, screen and (min-width: 64em) {
  .large-up-1 > .cell {
    width: 100%; }
  .large-up-2 > .cell {
    width: 50%; }
  .large-up-3 > .cell {
    width: 33.33333%; }
  .large-up-4 > .cell {
    width: 25%; }
  .large-up-5 > .cell {
    width: 20%; }
  .large-up-6 > .cell {
    width: 16.66667%; }
  .large-up-7 > .cell {
    width: 14.28571%; }
  .large-up-8 > .cell {
    width: 12.5%; } }

.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 1rem); }

.grid-margin-x.small-up-2 > .cell {
  width: calc(50% - 1rem); }

.grid-margin-x.small-up-3 > .cell {
  width: calc(33.33333% - 1rem); }

.grid-margin-x.small-up-4 > .cell {
  width: calc(25% - 1rem); }

.grid-margin-x.small-up-5 > .cell {
  width: calc(20% - 1rem); }

.grid-margin-x.small-up-6 > .cell {
  width: calc(16.66667% - 1rem); }

.grid-margin-x.small-up-7 > .cell {
  width: calc(14.28571% - 1rem); }

.grid-margin-x.small-up-8 > .cell {
  width: calc(12.5% - 1rem); }

@media print, screen and (min-width: 40em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1rem); }
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 2rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 2rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 2rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 2rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 2rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 2rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 2rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 2rem); } }

.small-margin-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0; }
  .small-margin-collapse > .small-1 {
    width: 8.33333%; }
  .small-margin-collapse > .small-2 {
    width: 16.66667%; }
  .small-margin-collapse > .small-3 {
    width: 25%; }
  .small-margin-collapse > .small-4 {
    width: 33.33333%; }
  .small-margin-collapse > .small-5 {
    width: 41.66667%; }
  .small-margin-collapse > .small-6 {
    width: 50%; }
  .small-margin-collapse > .small-7 {
    width: 58.33333%; }
  .small-margin-collapse > .small-8 {
    width: 66.66667%; }
  .small-margin-collapse > .small-9 {
    width: 75%; }
  .small-margin-collapse > .small-10 {
    width: 83.33333%; }
  .small-margin-collapse > .small-11 {
    width: 91.66667%; }
  .small-margin-collapse > .small-12 {
    width: 100%; }
  @media print, screen and (min-width: 40em) {
    .small-margin-collapse > .medium-1 {
      width: 8.33333%; }
    .small-margin-collapse > .medium-2 {
      width: 16.66667%; }
    .small-margin-collapse > .medium-3 {
      width: 25%; }
    .small-margin-collapse > .medium-4 {
      width: 33.33333%; }
    .small-margin-collapse > .medium-5 {
      width: 41.66667%; }
    .small-margin-collapse > .medium-6 {
      width: 50%; }
    .small-margin-collapse > .medium-7 {
      width: 58.33333%; }
    .small-margin-collapse > .medium-8 {
      width: 66.66667%; }
    .small-margin-collapse > .medium-9 {
      width: 75%; }
    .small-margin-collapse > .medium-10 {
      width: 83.33333%; }
    .small-margin-collapse > .medium-11 {
      width: 91.66667%; }
    .small-margin-collapse > .medium-12 {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .small-margin-collapse > .large-1 {
      width: 8.33333%; }
    .small-margin-collapse > .large-2 {
      width: 16.66667%; }
    .small-margin-collapse > .large-3 {
      width: 25%; }
    .small-margin-collapse > .large-4 {
      width: 33.33333%; }
    .small-margin-collapse > .large-5 {
      width: 41.66667%; }
    .small-margin-collapse > .large-6 {
      width: 50%; }
    .small-margin-collapse > .large-7 {
      width: 58.33333%; }
    .small-margin-collapse > .large-8 {
      width: 66.66667%; }
    .small-margin-collapse > .large-9 {
      width: 75%; }
    .small-margin-collapse > .large-10 {
      width: 83.33333%; }
    .small-margin-collapse > .large-11 {
      width: 91.66667%; }
    .small-margin-collapse > .large-12 {
      width: 100%; } }

.small-padding-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0; }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .small-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .small-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .small-3 {
    width: 25%; }
  .medium-margin-collapse > .small-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .small-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .small-6 {
    width: 50%; }
  .medium-margin-collapse > .small-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .small-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .small-9 {
    width: 75%; }
  .medium-margin-collapse > .small-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .small-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .medium-3 {
    width: 25%; }
  .medium-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .medium-6 {
    width: 50%; }
  .medium-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .medium-9 {
    width: 75%; }
  .medium-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .large-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .large-3 {
    width: 25%; }
  .medium-margin-collapse > .large-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .large-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .large-6 {
    width: 50%; }
  .medium-margin-collapse > .large-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .large-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .large-9 {
    width: 75%; }
  .medium-margin-collapse > .large-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .large-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .large-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.33333%; }
  .large-margin-collapse > .small-2 {
    width: 16.66667%; }
  .large-margin-collapse > .small-3 {
    width: 25%; }
  .large-margin-collapse > .small-4 {
    width: 33.33333%; }
  .large-margin-collapse > .small-5 {
    width: 41.66667%; }
  .large-margin-collapse > .small-6 {
    width: 50%; }
  .large-margin-collapse > .small-7 {
    width: 58.33333%; }
  .large-margin-collapse > .small-8 {
    width: 66.66667%; }
  .large-margin-collapse > .small-9 {
    width: 75%; }
  .large-margin-collapse > .small-10 {
    width: 83.33333%; }
  .large-margin-collapse > .small-11 {
    width: 91.66667%; }
  .large-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .large-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .large-margin-collapse > .medium-3 {
    width: 25%; }
  .large-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .large-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .large-margin-collapse > .medium-6 {
    width: 50%; }
  .large-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .large-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .large-margin-collapse > .medium-9 {
    width: 75%; }
  .large-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .large-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .large-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.33333%; }
  .large-margin-collapse > .large-2 {
    width: 16.66667%; }
  .large-margin-collapse > .large-3 {
    width: 25%; }
  .large-margin-collapse > .large-4 {
    width: 33.33333%; }
  .large-margin-collapse > .large-5 {
    width: 41.66667%; }
  .large-margin-collapse > .large-6 {
    width: 50%; }
  .large-margin-collapse > .large-7 {
    width: 58.33333%; }
  .large-margin-collapse > .large-8 {
    width: 66.66667%; }
  .large-margin-collapse > .large-9 {
    width: 75%; }
  .large-margin-collapse > .large-10 {
    width: 83.33333%; }
  .large-margin-collapse > .large-11 {
    width: 91.66667%; }
  .large-margin-collapse > .large-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

.small-offset-0 {
  margin-left: 0%; }

.grid-margin-x > .small-offset-0 {
  margin-left: calc(0% + 0.5rem); }

.small-offset-1 {
  margin-left: 8.33333%; }

.grid-margin-x > .small-offset-1 {
  margin-left: calc(8.33333% + 0.5rem); }

.small-offset-2 {
  margin-left: 16.66667%; }

.grid-margin-x > .small-offset-2 {
  margin-left: calc(16.66667% + 0.5rem); }

.small-offset-3 {
  margin-left: 25%; }

.grid-margin-x > .small-offset-3 {
  margin-left: calc(25% + 0.5rem); }

.small-offset-4 {
  margin-left: 33.33333%; }

.grid-margin-x > .small-offset-4 {
  margin-left: calc(33.33333% + 0.5rem); }

.small-offset-5 {
  margin-left: 41.66667%; }

.grid-margin-x > .small-offset-5 {
  margin-left: calc(41.66667% + 0.5rem); }

.small-offset-6 {
  margin-left: 50%; }

.grid-margin-x > .small-offset-6 {
  margin-left: calc(50% + 0.5rem); }

.small-offset-7 {
  margin-left: 58.33333%; }

.grid-margin-x > .small-offset-7 {
  margin-left: calc(58.33333% + 0.5rem); }

.small-offset-8 {
  margin-left: 66.66667%; }

.grid-margin-x > .small-offset-8 {
  margin-left: calc(66.66667% + 0.5rem); }

.small-offset-9 {
  margin-left: 75%; }

.grid-margin-x > .small-offset-9 {
  margin-left: calc(75% + 0.5rem); }

.small-offset-10 {
  margin-left: 83.33333%; }

.grid-margin-x > .small-offset-10 {
  margin-left: calc(83.33333% + 0.5rem); }

.small-offset-11 {
  margin-left: 91.66667%; }

.grid-margin-x > .small-offset-11 {
  margin-left: calc(91.66667% + 0.5rem); }

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 0.5rem); }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.33333% + 0.5rem); }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.66667% + 0.5rem); }
  .medium-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 0.5rem); }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.33333% + 0.5rem); }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.66667% + 0.5rem); }
  .medium-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 0.5rem); }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.33333% + 0.5rem); }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.66667% + 0.5rem); }
  .medium-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 0.5rem); }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.33333% + 0.5rem); }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.66667% + 0.5rem); } }

@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 1rem); }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.33333% + 1rem); }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.66667% + 1rem); }
  .large-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 1rem); }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.33333% + 1rem); }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.66667% + 1rem); }
  .large-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 1rem); }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.33333% + 1rem); }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.66667% + 1rem); }
  .large-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 1rem); }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.33333% + 1rem); }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.66667% + 1rem); } }

.grid-y {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }
  .grid-y > .cell {
    width: auto; }
  .grid-y > .auto {
    height: auto; }
  .grid-y > .shrink {
    height: auto; }
  .grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  .grid-y > .small-1 {
    height: 8.33333%; }
  .grid-y > .small-2 {
    height: 16.66667%; }
  .grid-y > .small-3 {
    height: 25%; }
  .grid-y > .small-4 {
    height: 33.33333%; }
  .grid-y > .small-5 {
    height: 41.66667%; }
  .grid-y > .small-6 {
    height: 50%; }
  .grid-y > .small-7 {
    height: 58.33333%; }
  .grid-y > .small-8 {
    height: 66.66667%; }
  .grid-y > .small-9 {
    height: 75%; }
  .grid-y > .small-10 {
    height: 83.33333%; }
  .grid-y > .small-11 {
    height: 91.66667%; }
  .grid-y > .small-12 {
    height: 100%; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .medium-shrink {
      height: auto; }
    .grid-y > .medium-1 {
      height: 8.33333%; }
    .grid-y > .medium-2 {
      height: 16.66667%; }
    .grid-y > .medium-3 {
      height: 25%; }
    .grid-y > .medium-4 {
      height: 33.33333%; }
    .grid-y > .medium-5 {
      height: 41.66667%; }
    .grid-y > .medium-6 {
      height: 50%; }
    .grid-y > .medium-7 {
      height: 58.33333%; }
    .grid-y > .medium-8 {
      height: 66.66667%; }
    .grid-y > .medium-9 {
      height: 75%; }
    .grid-y > .medium-10 {
      height: 83.33333%; }
    .grid-y > .medium-11 {
      height: 91.66667%; }
    .grid-y > .medium-12 {
      height: 100%; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .large-shrink {
      height: auto; }
    .grid-y > .large-1 {
      height: 8.33333%; }
    .grid-y > .large-2 {
      height: 16.66667%; }
    .grid-y > .large-3 {
      height: 25%; }
    .grid-y > .large-4 {
      height: 33.33333%; }
    .grid-y > .large-5 {
      height: 41.66667%; }
    .grid-y > .large-6 {
      height: 50%; }
    .grid-y > .large-7 {
      height: 58.33333%; }
    .grid-y > .large-8 {
      height: 66.66667%; }
    .grid-y > .large-9 {
      height: 75%; }
    .grid-y > .large-10 {
      height: 83.33333%; }
    .grid-y > .large-11 {
      height: 91.66667%; }
    .grid-y > .large-12 {
      height: 100%; } }

.grid-padding-y .grid-padding-y {
  margin-top: -0.5rem;
  margin-bottom: -0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.5rem;
      margin-bottom: -0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -1rem;
      margin-bottom: -1rem; } }

.grid-padding-y > .cell {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-y > .cell {
      padding-top: 0.5rem;
      padding-bottom: 0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-y > .cell {
      padding-top: 1rem;
      padding-bottom: 1rem; } }

.grid-margin-y {
  margin-top: -0.5rem;
  margin-bottom: -0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -0.5rem;
      margin-bottom: -0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y {
      margin-top: -1rem;
      margin-bottom: -1rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1rem);
    margin-top: 0.5rem;
    margin-bottom: 0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1rem);
      margin-top: 0.5rem;
      margin-bottom: 0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .cell {
      height: calc(100% - 2rem);
      margin-top: 1rem;
      margin-bottom: 1rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 2rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 2rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 2rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 2rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 2rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 2rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 2rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 2rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 2rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 2rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 2rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 2rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 2rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 2rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 2rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 2rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 2rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 2rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 2rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 2rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 2rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 2rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 2rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 2rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 2rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 2rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 2rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 2rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 2rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 2rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 2rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 2rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 2rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 2rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 2rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 2rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100vw; }

.cell .grid-frame {
  width: 100%; }

.cell-block {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-stype: -ms-autohiding-scrollbar; }

.cell-block-y {
  overflow-y: auto;
  max-height: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-stype: -ms-autohiding-scrollbar; }

.cell-block-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  max-height: 100%; }
  .cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; }

@media print, screen and (min-width: 40em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .medium-grid-frame {
    width: 100%; }
  .medium-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; }
  .medium-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .medium-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .medium-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 64em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .large-grid-frame {
    width: 100%; }
  .large-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; }
  .large-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .large-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .large-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh; }

@media print, screen and (min-width: 40em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

.cell .grid-y.grid-frame {
  height: 100%; }

@media print, screen and (min-width: 40em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%; } }

@media print, screen and (min-width: 64em) {
  .cell .grid-y.large-grid-frame {
    height: 100%; } }

.grid-margin-y {
  margin-top: -0.5rem;
  margin-bottom: -0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -0.5rem;
      margin-bottom: -0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y {
      margin-top: -1rem;
      margin-bottom: -1rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1rem);
    margin-top: 0.5rem;
    margin-bottom: 0.5rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1rem);
      margin-top: 0.5rem;
      margin-bottom: 0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .cell {
      height: calc(100% - 2rem);
      margin-top: 1rem;
      margin-bottom: 1rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 2rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 2rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 2rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 2rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 2rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 2rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 2rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 2rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 2rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 2rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 2rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 2rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 2rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 2rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 2rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 2rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 2rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 2rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 2rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 2rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 2rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 2rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 2rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 2rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 2rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 2rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 2rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 2rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 2rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 2rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 2rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 2rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 2rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 2rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 2rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 2rem); } }

.grid-frame.grid-margin-y {
  height: calc(100vh + 1rem); }
  @media print, screen and (min-width: 40em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2rem); } }

@media print, screen and (min-width: 40em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 1rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 2rem); } }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.6;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: bold;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "FordAntenna-Regular", sans-serif;
  font-style: normal;
  font-weight: normal;
  color: inherit;
  text-rendering: optimizeLegibility; }
  h1 small, .h1 small,
  h2 small, .h2 small,
  h3 small, .h3 small,
  h4 small, .h4 small,
  h5 small, .h5 small,
  h6 small, .h6 small {
    line-height: 0;
    color: #cacaca; }

h1, .h1 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h2, .h2 {
  font-size: 1.25rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h3, .h3 {
  font-size: 1.1875rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h4, .h4 {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5, .h5 {
  font-size: 1.0625rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6, .h6 {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 3rem; }
  h2, .h2 {
    font-size: 2.5rem; }
  h3, .h3 {
    font-size: 1.9375rem; }
  h4, .h4 {
    font-size: 1.5625rem; }
  h5, .h5 {
    font-size: 1.25rem; }
  h6, .h6 {
    font-size: 1rem; } }

a {
  line-height: inherit;
  color: #0075b6;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #00659d; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 75rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #cacaca;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.6; }

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: bold; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #333333; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #333333; }
  cite:before {
    content: "— "; }

abbr, abbr[title] {
  border-bottom: 1px dotted #000000;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #cacaca;
  background-color: #f7f7f7;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #000000; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #f7f7f7;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #000000; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #333333; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

ul.no-bullet, ol.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;
    -webkit-box-shadow: none !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 #333333;
    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,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  font-family: inherit;
  padding: 0.85em 1em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 0.9rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #0075b6;
  color: #ffffff; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button:hover, .button:focus {
    background-color: #005889;
    color: #ffffff; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary {
    background-color: #0075b6;
    color: #ffffff; }
    .button.primary:hover, .button.primary:focus {
      background-color: #005e92;
      color: #ffffff; }
  .button.secondary {
    background-color: #082a47;
    color: #ffffff; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: #062239;
      color: #ffffff; }
  .button.success {
    background-color: #3adb76;
    color: #000000; }
    .button.success:hover, .button.success:focus {
      background-color: #22bb5b;
      color: #000000; }
  .button.warning {
    background-color: #ffae00;
    color: #000000; }
    .button.warning:hover, .button.warning:focus {
      background-color: #cc8b00;
      color: #000000; }
  .button.alert {
    background-color: #cc4b37;
    color: #000000; }
    .button.alert:hover, .button.alert:focus {
      background-color: #a53b2a;
      color: #000000; }
  .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: #0075b6;
      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: #0075b6;
        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: #082a47;
        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: #000000; }
    .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: #000000; }
    .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: #000000; }
  .button.hollow {
    border: 3px solid #0075b6;
    color: #0075b6; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: #003b5b;
      color: #003b5b; }
      .button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] {
        border: 3px solid #0075b6;
        color: #0075b6; }
    .button.hollow.primary {
      border: 3px solid #0075b6;
      color: #0075b6; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: #003b5b;
        color: #003b5b; }
        .button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] {
          border: 3px solid #0075b6;
          color: #0075b6; }
    .button.hollow.secondary {
      border: 3px solid #082a47;
      color: #082a47; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: #041524;
        color: #041524; }
        .button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] {
          border: 3px solid #082a47;
          color: #082a47; }
    .button.hollow.success {
      border: 3px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .button.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] {
          border: 3px solid #3adb76;
          color: #3adb76; }
    .button.hollow.warning {
      border: 3px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] {
          border: 3px solid #ffae00;
          color: #ffae00; }
    .button.hollow.alert {
      border: 3px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .button.hollow.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] {
          border: 3px solid #cc4b37;
          color: #cc4b37; }
  .button.clear {
    border: 3px solid #0075b6;
    color: #0075b6; }
    .button.clear, .button.clear:hover, .button.clear:focus {
      background-color: transparent; }
    .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
      background-color: transparent; }
    .button.clear:hover, .button.clear:focus {
      border-color: #003b5b;
      color: #003b5b; }
      .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] {
        border: 3px solid #0075b6;
        color: #0075b6; }
    .button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] {
      border-color: transparent; }
    .button.clear.primary {
      border: 3px solid #0075b6;
      color: #0075b6; }
      .button.clear.primary:hover, .button.clear.primary:focus {
        border-color: #003b5b;
        color: #003b5b; }
        .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
          border: 3px solid #0075b6;
          color: #0075b6; }
      .button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
        border-color: transparent; }
    .button.clear.secondary {
      border: 3px solid #082a47;
      color: #082a47; }
      .button.clear.secondary:hover, .button.clear.secondary:focus {
        border-color: #041524;
        color: #041524; }
        .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
          border: 3px solid #082a47;
          color: #082a47; }
      .button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
        border-color: transparent; }
    .button.clear.success {
      border: 3px solid #3adb76;
      color: #3adb76; }
      .button.clear.success:hover, .button.clear.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
          border: 3px solid #3adb76;
          color: #3adb76; }
      .button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
        border-color: transparent; }
    .button.clear.warning {
      border: 3px solid #ffae00;
      color: #ffae00; }
      .button.clear.warning:hover, .button.clear.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
          border: 3px solid #ffae00;
          color: #ffae00; }
      .button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
        border-color: transparent; }
    .button.clear.alert {
      border: 3px solid #cc4b37;
      color: #cc4b37; }
      .button.clear.alert:hover, .button.clear.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
          border: 3px solid #cc4b37;
          color: #cc4b37; }
      .button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
        border-color: transparent; }
  .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: 1em; }
  .button.dropdown.hollow::after {
    border-top-color: #0075b6; }
  .button.dropdown.hollow.primary::after {
    border-top-color: #0075b6; }
  .button.dropdown.hollow.secondary::after {
    border-top-color: #082a47; }
  .button.dropdown.hollow.success::after {
    border-top-color: #3adb76; }
  .button.dropdown.hollow.warning::after {
    border-top-color: #ffae00; }
  .button.dropdown.hollow.alert::after {
    border-top-color: #cc4b37; }
  .button.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

a.button:hover, a.button:focus {
  text-decoration: none; }

[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;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #ffffff;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #000000;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -webkit-appearance: none;
     -moz-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 #333333;
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 5px #cacaca;
            box-shadow: 0 0 5px #cacaca;
    -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }

textarea {
  max-width: 100%; }
  textarea[rows] {
    height: auto; }

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #cacaca; }

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #cacaca; }

input::placeholder,
textarea::placeholder {
  color: #cacaca; }

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #f7f7f7;
  cursor: not-allowed; }

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0; }

input[type='search'] {
  -webkit-box-sizing: border-box;
          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: normal;
  line-height: 1.8;
  color: #000000; }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #000000; }

.input-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .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; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #f7f7f7;
  color: #000000;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

.input-group-field {
  border-radius: 0;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  height: auto;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    height: auto;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1rem; }

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 #cacaca; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #ffffff;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #000000;
  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%2851, 51, 51%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }
  @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 #333333;
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 5px #cacaca;
            box-shadow: 0 0 5px #cacaca;
    -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }
  select:disabled {
    background-color: #f7f7f7;
    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: bold;
  color: #cc4b37; }
  .form-error.is-visible {
    display: block; }

.accordion {
  margin-left: 0;
  background: #ffffff;
  list-style-type: none; }
  .accordion[disabled] .accordion-title {
    cursor: not-allowed; }

.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: 1px solid #f7f7f7;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #0075b6; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: 1px solid #f7f7f7;
    border-radius: 0 0 0 0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #ffffff; }
  .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: 1px solid #f7f7f7;
  border-bottom: 0;
  background-color: #f7f7f7;
  color: #000000; }
  :last-child > .accordion-content:last-child {
    border-bottom: 1px solid #f7f7f7; }

.accordion-menu li {
  width: 100%; }

.accordion-menu a {
  padding: 0.7rem 1rem; }

.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem; }

.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem; }

.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0; }

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative; }
  .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0075b6 transparent transparent;
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 1rem; }

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  left: auto;
  right: 1rem; }

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem; }

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.is-accordion-submenu-parent {
  position: relative; }

.has-submenu-toggle > a {
  margin-right: 40px; }

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  width: 40px;
  height: 40px; }
  .submenu-toggle::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0075b6 transparent transparent;
    top: 0;
    bottom: 0;
    margin: auto; }

.submenu-toggle[aria-expanded='true']::after {
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.submenu-toggle-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0; }

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #0075b6;
  color: #ffffff; }
  .badge.primary {
    background: #0075b6;
    color: #ffffff; }
  .badge.secondary {
    background: #082a47;
    color: #ffffff; }
  .badge.success {
    background: #3adb76;
    color: #000000; }
  .badge.warning {
    background: #ffae00;
    color: #000000; }
  .badge.alert {
    background: #cc4b37;
    color: #000000; }

.breadcrumbs {
  margin: 0 0 1rem 0;
  list-style: none; }
  .breadcrumbs::before, .breadcrumbs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    font-size: 0.6875rem;
    color: #000000;
    cursor: default;
    text-transform: uppercase; }
    .breadcrumbs li:not(:last-child)::after {
      position: relative;
      margin: 0 0.75rem;
      opacity: 1;
      content: "/";
      color: #cacaca; }
  .breadcrumbs a {
    color: #0075b6; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #cacaca;
    cursor: not-allowed; }

.button-group {
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .button-group::before, .button-group::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .button-group::after {
    clear: both; }
  .button-group .button {
    margin: 0;
    margin-right: 1px;
    margin-bottom: 1px;
    font-size: 0.9rem;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .button-group .button:last-child {
      margin-right: 0; }
  .button-group.tiny .button {
    font-size: 0.6rem; }
  .button-group.small .button {
    font-size: 0.75rem; }
  .button-group.large .button {
    font-size: 1.25rem; }
  .button-group.expanded .button {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .button-group.primary .button {
    background-color: #0075b6;
    color: #ffffff; }
    .button-group.primary .button:hover, .button-group.primary .button:focus {
      background-color: #005e92;
      color: #ffffff; }
  .button-group.secondary .button {
    background-color: #082a47;
    color: #ffffff; }
    .button-group.secondary .button:hover, .button-group.secondary .button:focus {
      background-color: #062239;
      color: #ffffff; }
  .button-group.success .button {
    background-color: #3adb76;
    color: #000000; }
    .button-group.success .button:hover, .button-group.success .button:focus {
      background-color: #22bb5b;
      color: #000000; }
  .button-group.warning .button {
    background-color: #ffae00;
    color: #000000; }
    .button-group.warning .button:hover, .button-group.warning .button:focus {
      background-color: #cc8b00;
      color: #000000; }
  .button-group.alert .button {
    background-color: #cc4b37;
    color: #000000; }
    .button-group.alert .button:hover, .button-group.alert .button:focus {
      background-color: #a53b2a;
      color: #000000; }
  .button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%; }
      .button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
        margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .button-group.stacked-for-small .button {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
    .button-group.stacked-for-medium .button {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      margin-bottom: 0; } }
  @media screen and (max-width: 39.9375em) {
    .button-group.stacked-for-small.expanded {
      display: block; }
      .button-group.stacked-for-small.expanded .button {
        display: block;
        margin-right: 0; } }

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(0, 0, 0, 0.25);
  border-radius: 0;
  background-color: white;
  color: #000000; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #ceedff;
    color: #000000; }
  .callout.secondary {
    background-color: #c5e1f8;
    color: #000000; }
  .callout.success {
    background-color: #e1faea;
    color: #000000; }
  .callout.warning {
    background-color: #fff3d9;
    color: #000000; }
  .callout.alert {
    background-color: #f7e4e1;
    color: #000000; }
  .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 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #f7f7f7;
  border-radius: 0;
  background: #ffffff;
  -webkit-box-shadow: none;
          box-shadow: none;
  overflow: hidden;
  color: #000000; }
  .card > :last-child {
    margin-bottom: 0; }

.card-divider {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem;
  background: #f7f7f7; }
  .card-divider > :last-child {
    margin-bottom: 0; }

.card-section {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: 1rem; }
  .card-section > :last-child {
    margin-bottom: 0; }

.card-image {
  min-height: 1px; }

.close-button {
  position: absolute;
  color: #333333;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #000000; }
  .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 {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.7rem 1rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.simple {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .menu.simple li + li {
      margin-left: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.medium-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.medium-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.medium-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.large-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.large-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.large-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  .menu.nested {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.icons a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-left li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg {
      margin-right: 0.25rem; }
  .menu.icon-right li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg {
      margin-left: 0.25rem; }
  .menu.icon-top li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: #0075b6;
    color: #ffffff; }
  .menu .active > a {
    background: #0075b6;
    color: #ffffff; }
  .menu.align-left {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .menu.align-right li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .menu.align-right li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu.align-right.vertical li {
    display: block;
    text-align: right; }
    .menu.align-right.vertical li .submenu li {
      text-align: right; }
  .menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0; }
  .menu.align-center li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu.align-center li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.7rem 1rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .menu-centered > .menu li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu-centered > .menu li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }

.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: #0075b6;
    -webkit-box-shadow: 0 7px 0 #0075b6, 0 14px 0 #0075b6;
            box-shadow: 0 7px 0 #0075b6, 0 14px 0 #0075b6;
    content: ''; }
  .menu-icon:hover::after {
    background: #082a47;
    -webkit-box-shadow: 0 7px 0 #082a47, 0 14px 0 #082a47;
            box-shadow: 0 7px 0 #082a47, 0 14px 0 #082a47; }

.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: #000000;
    -webkit-box-shadow: 0 7px 0 #000000, 0 14px 0 #000000;
            box-shadow: 0 7px 0 #000000, 0 14px 0 #000000;
    content: ''; }
  .menu-icon.dark:hover::after {
    background: #333333;
    -webkit-box-shadow: 0 7px 0 #333333, 0 14px 0 #333333;
            box-shadow: 0 7px 0 #333333, 0 14px 0 #333333; }

.is-drilldown {
  position: relative;
  overflow: hidden; }
  .is-drilldown li {
    display: block; }
  .is-drilldown.animate-height {
    -webkit-transition: height 0.5s;
    transition: height 0.5s; }

.drilldown a {
  padding: 0.7rem 1rem;
  background: #ffffff; }

.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #ffffff;
  -webkit-transition: -webkit-transform 0.15s linear;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear; }
  .drilldown .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); }
  .drilldown .is-drilldown-submenu.is-closing {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%); }
  .drilldown .is-drilldown-submenu a {
    padding: 0.7rem 1rem; }

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0; }

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%; }

.drilldown .is-drilldown-submenu-parent > a {
  position: relative; }
  .drilldown .is-drilldown-submenu-parent > a::after {
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0075b6; }

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  left: auto;
  right: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #0075b6; }

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  right: auto;
  left: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #0075b6 transparent transparent; }

.drilldown .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 #0075b6 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;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  display: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #ffffff;
  font-size: 1rem; }
  .dropdown-pane.is-opening {
    display: block; }
  .dropdown-pane.is-open {
    visibility: visible;
    display: block; }

.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: #0075b6 transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px; }

.dropdown.menu a {
  padding: 0.7rem 1rem; }
  [data-whatinput='mouse'] .dropdown.menu a {
    outline: 0; }

.dropdown.menu .is-active > a {
  background: transparent;
  color: #0075b6; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto;
  top: 0; }

.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 {
  right: auto;
  left: 5px;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #0075b6 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 #0075b6; }

@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: #0075b6 transparent transparent;
    right: 5px;
    left: auto;
    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;
    top: 0; }
  .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 {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0075b6 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 #0075b6; } }

@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: #0075b6 transparent transparent;
    right: 5px;
    left: auto;
    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;
    top: 0; }
  .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 {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0075b6 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 #0075b6; } }

.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;
    left: auto;
    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: 200px;
  border: 1px solid #cacaca;
  background: #ffffff; }
  .dropdown .is-dropdown-submenu a {
    padding: 0.7rem 1rem; }
  .is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
    right: 14px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0075b6 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 #0075b6; }
  .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: #0075b6;
  color: #ffffff; }
  .label.primary {
    background: #0075b6;
    color: #ffffff; }
  .label.secondary {
    background: #082a47;
    color: #ffffff; }
  .label.success {
    background: #3adb76;
    color: #000000; }
  .label.warning {
    background: #ffae00;
    color: #000000; }
  .label.alert {
    background: #cc4b37;
    color: #000000; }

.media-object {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.9375em) {
    .media-object.stack-for-small {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  @media screen and (max-width: 39.9375em) {
    .media-object.stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      -webkit-flex-basis: 100%;
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%;
      max-width: 100%; }
      .media-object.stack-for-small .media-object-section img {
        width: 100%; } }

.media-object-section {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }
  .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.main-section {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }

.is-off-canvas-open {
  overflow: hidden; }

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(255, 255, 255, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden; }
  .js-off-canvas-overlay.is-visible {
    opacity: 1;
    visibility: visible; }
  .js-off-canvas-overlay.is-closable {
    cursor: pointer; }
  .js-off-canvas-overlay.is-overlay-absolute {
    position: absolute; }
  .js-off-canvas-overlay.is-overlay-fixed {
    position: fixed; }

.off-canvas-wrapper {
  position: relative;
  overflow: hidden; }

.off-canvas {
  position: fixed;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #f7f7f7; }
  [data-whatinput='mouse'] .off-canvas {
    outline: 0; }
  .off-canvas.is-transition-push {
    z-index: 12; }
  .off-canvas.is-closed {
    visibility: hidden; }
  .off-canvas.is-transition-overlap {
    z-index: 13; }
    .off-canvas.is-transition-overlap.is-open {
      -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
              box-shadow: 0 0 10px rgba(0, 0, 0, 0.7); }
  .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #f7f7f7; }
  [data-whatinput='mouse'] .off-canvas-absolute {
    outline: 0; }
  .off-canvas-absolute.is-transition-push {
    z-index: 12; }
  .off-canvas-absolute.is-closed {
    visibility: hidden; }
  .off-canvas-absolute.is-transition-overlap {
    z-index: 13; }
    .off-canvas-absolute.is-transition-overlap.is-open {
      -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
              box-shadow: 0 0 10px rgba(0, 0, 0, 0.7); }
  .off-canvas-absolute.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px); }
  .off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
    .off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
  .position-left.is-transition-push {
    -webkit-box-shadow: inset -13px 0 20px -13px rgba(0, 0, 0, 0.25);
            box-shadow: inset -13px 0 20px -13px rgba(0, 0, 0, 0.25); }

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px); }
  .off-canvas-content .off-canvas.position-right {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
    .off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-right.has-transition-push {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
  .position-right.is-transition-push {
    -webkit-box-shadow: inset 13px 0 20px -13px rgba(0, 0, 0, 0.25);
            box-shadow: inset 13px 0 20px -13px rgba(0, 0, 0, 0.25); }

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px); }
  .off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
    .off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-top.has-transition-push {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
  .position-top.is-transition-push {
    -webkit-box-shadow: inset 0 -13px 20px -13px rgba(0, 0, 0, 0.25);
            box-shadow: inset 0 -13px 20px -13px rgba(0, 0, 0, 0.25); }

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px); }
  .off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
    .off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-bottom.has-transition-push {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
  .position-bottom.is-transition-push {
    -webkit-box-shadow: inset 0 13px 20px -13px rgba(0, 0, 0, 0.25);
            box-shadow: inset 0 13px 20px -13px rgba(0, 0, 0, 0.25); }

.off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .off-canvas-content.has-transition-push {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }
  .off-canvas-content .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-medium ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-medium ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-large ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-large ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
      -webkit-box-shadow: none;
              box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-medium .close-button {
      display: none; } }

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
      -webkit-box-shadow: none;
              box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-large .close-button {
      display: none; } }

.orbit {
  position: relative; }

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden; }

.orbit-slide {
  width: 100%; }
  .orbit-slide.no-motionui.is-active {
    top: 0;
    left: 0; }

.orbit-figure {
  margin: 0; }

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0; }

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(0, 0, 0, 0.5);
  color: #ffffff; }

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #ffffff; }
  [data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
    outline: 0; }
  .orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next:focus {
    background-color: rgba(0, 0, 0, 0.5); }

.orbit-previous {
  left: 0; }

.orbit-next {
  left: auto;
  right: 0; }

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center; }
  [data-whatinput='mouse'] .orbit-bullets {
    outline: 0; }
  .orbit-bullets button {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0.1rem;
    border-radius: 50%;
    background-color: #cacaca; }
    .orbit-bullets button:hover {
      background-color: #333333; }
    .orbit-bullets button.is-active {
      background-color: #333333; }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .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: #000000; }
    .pagination a:hover,
    .pagination button:hover {
      background: #f7f7f7; }
  .pagination .current, .pagination .current:hover {
    padding: 0.1875rem 0.625rem;
    background: #0075b6;
    color: #ffffff;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #666666;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #000000; }

.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'; }
  
/* vjeya */
.pagination-previous-new a::before,
.pagination-previous-new.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
}

.pagination-next-new a::after,
.pagination-next-new.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
}

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #cacaca; }
  .progress.primary .progress-meter {
    background-color: #0075b6; }
  .progress.secondary .progress-meter {
    background-color: #082a47; }
  .progress.success .progress-meter {
    background-color: #3adb76; }
  .progress.warning .progress-meter {
    background-color: #ffae00; }
  .progress.alert .progress-meter {
    background-color: #cc4b37; }

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #0075b6; }

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #ffffff;
  white-space: nowrap; }

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #f7f7f7;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none; }

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #cacaca;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }
  .slider-fill.is-dragging {
    -webkit-transition: all 0s linear;
    transition: all 0s linear; }

.slider-handle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #0075b6;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation; }
  [data-whatinput='mouse'] .slider-handle {
    outline: 0; }
  .slider-handle:hover {
    background-color: #00639b; }
  .slider-handle.is-dragging {
    -webkit-transition: all 0s linear;
    transition: all 0s linear; }

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed; }

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
      -ms-transform: scale(1, -1);
          transform: scale(1, -1); }
  .slider.vertical .slider-fill {
    top: 0;
    width: 0.5rem;
    max-height: 100%; }
  .slider.vertical .slider-handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1.4rem;
    height: 1.4rem;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

.sticky-container {
  position: relative; }

.sticky {
  position: relative;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%; }
  .sticky.is-stuck.is-at-top {
    top: 0; }
  .sticky.is-stuck.is-at-bottom {
    bottom: 0; }

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto; }
  .sticky.is-anchored.is-at-bottom {
    bottom: 0; }

body.is-reveal-open {
  overflow: hidden; }

html.is-reveal-open,
html.is-reveal-open body {
  min-height: 100%;
  overflow: hidden;
  position: fixed;
  -webkit-user-select: none;
     -moz-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(0, 0, 0, 0.45);
  overflow-y: scroll; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #cacaca;
  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 {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 75rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 75rem; } }
  .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; }

.switch {
  height: 2rem;
  position: relative;
  margin-bottom: 1rem;
  outline: 0;
  font-size: 0.875rem;
  font-weight: bold;
  color: #ffffff;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.switch-input {
  position: absolute;
  margin-bottom: 0;
  opacity: 0; }

.switch-paddle {
  position: relative;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 0;
  background: #cacaca;
  -webkit-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  font-weight: inherit;
  color: inherit;
  cursor: pointer; }
  input + .switch-paddle {
    margin: 0; }
  .switch-paddle::after {
    position: absolute;
    top: 0.25rem;
    left: 0.25rem;
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    border-radius: 0;
    background: #ffffff;
    -webkit-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
    content: ''; }
  input:checked ~ .switch-paddle {
    background: #0075b6; }
    input:checked ~ .switch-paddle::after {
      left: 2.25rem; }
  [data-whatinput='mouse'] input:focus ~ .switch-paddle {
    outline: 0; }

.switch-active, .switch-inactive {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.switch-active {
  left: 8%;
  display: none; }
  input:checked + label > .switch-active {
    display: block; }

.switch-inactive {
  right: 15%; }
  input:checked + label > .switch-inactive {
    display: none; }

.switch.tiny {
  height: 1.5rem; }
  .switch.tiny .switch-paddle {
    width: 3rem;
    height: 1.5rem;
    font-size: 0.625rem; }
  .switch.tiny .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 1rem;
    height: 1rem; }
  .switch.tiny input:checked ~ .switch-paddle::after {
    left: 1.75rem; }

.switch.small {
  height: 1.75rem; }
  .switch.small .switch-paddle {
    width: 3.5rem;
    height: 1.75rem;
    font-size: 0.75rem; }
  .switch.small .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 1.25rem;
    height: 1.25rem; }
  .switch.small input:checked ~ .switch-paddle::after {
    left: 2rem; }

.switch.large {
  height: 2.5rem; }
  .switch.large .switch-paddle {
    width: 5rem;
    height: 2.5rem;
    font-size: 1rem; }
  .switch.large .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 2rem;
    height: 2rem; }
  .switch.large input:checked ~ .switch-paddle::after {
    left: 2.75rem; }

table {
  border-collapse: collapse;
  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: bold; }
  thead {
    background: #f9f9f9;
    color: #000000; }
  tfoot {
    background: #f2f2f2;
    color: #000000; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
    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 #f7f7f7;
  background: #f7f7f7;
  list-style-type: none; }
  .tabs::before, .tabs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .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: #0075b6; }
  .tabs.primary > li > a {
    color: #ffffff; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #0080c6; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 0.75rem;
    line-height: 1;
    color: #0075b6; }
    .tabs-title > a:hover {
      background: #ffffff;
      color: #00659d; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #f7f7f7;
      color: #0075b6; }

.tabs-content {
  border: 1px solid #f7f7f7;
  border-top: 0;
  background: #f7f7f7;
  color: #000000;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid #f7f7f7;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel.is-active {
    display: block; }

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #ffffff;
  border-radius: 0;
  -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
  line-height: 0; }

a.thumbnail {
  -webkit-transition: -webkit-box-shadow 200ms ease-out;
  transition: -webkit-box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out, -webkit-box-shadow 200ms ease-out; }
  a.thumbnail:hover, a.thumbnail:focus {
    -webkit-box-shadow: 0 0 6px 1px rgba(0, 117, 182, 0.5);
            box-shadow: 0 0 6px 1px rgba(0, 117, 182, 0.5); }
  a.thumbnail image {
    -webkit-box-shadow: none;
            box-shadow: none; }

.title-bar {
  padding: 0.5rem;
  background: #ffffff;
  color: #ffffff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .title-bar .menu-icon {
    margin-left: 0.25rem;
    margin-right: 0.25rem; }

.title-bar-left,
.title-bar-right {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }

.title-bar-right {
  text-align: right; }

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold; }

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #0075b6;
  font-weight: bold;
  cursor: help; }

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 22rem;
  padding: 0.75rem;
  border-radius: 0;
  background-color: #0075b6;
  font-size: 80%;
  color: #ffffff; }
  .tooltip::before {
    position: absolute; }
  .tooltip.bottom::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-top-width: 0;
    border-bottom-style: solid;
    border-color: transparent transparent #0075b6;
    bottom: 100%; }
  .tooltip.bottom.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.top::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0075b6 transparent transparent;
    top: 100%;
    bottom: auto; }
  .tooltip.top.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.left::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0075b6;
    left: 100%; }
  .tooltip.left.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.right::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0075b6 transparent transparent;
    right: 100%;
    left: auto; }
  .tooltip.right.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.align-top::before {
    bottom: auto;
    top: 10%; }
  .tooltip.align-bottom::before {
    bottom: 10%;
    top: auto; }
  .tooltip.align-left::before {
    left: 10%;
    right: auto; }
  .tooltip.align-right::before {
    left: auto;
    right: 10%; }

.top-bar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .top-bar,
  .top-bar ul {
    background-color: #ffffff; }
  .top-bar input {
    max-width: 200px;
    margin-right: 1rem; }
  .top-bar .input-group-field {
    width: 100%;
    margin-right: 0; }
  .top-bar input.button {
    width: auto; }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  @media print, screen and (min-width: 40em) {
    .top-bar {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
      .top-bar .top-bar-left {
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 auto;
            -ms-flex: 1 1 auto;
                flex: 1 1 auto;
        margin-right: auto; }
      .top-bar .top-bar-right {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        margin-left: auto; } }
  @media screen and (max-width: 63.9375em) {
    .top-bar.stacked-for-medium {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-medium .top-bar-left,
      .top-bar.stacked-for-medium .top-bar-right {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 74.9375em) {
    .top-bar.stacked-for-large {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-large .top-bar-left,
      .top-bar.stacked-for-large .top-bar-right {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }

.top-bar-title {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0.5rem 1rem 0.5rem 0; }

.top-bar-left,
.top-bar-right {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.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;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0; }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
  -webkit-clip-path: none;
          clip-path: none; }

.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; } }

.align-right {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

.align-right.vertical.menu > li > a {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-top {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

.align-self-top {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start; }

.align-bottom {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.align-self-bottom {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end; }

.align-middle {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.align-self-middle {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center; }

.align-stretch {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.align-self-stretch {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch; }

.align-center-middle {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center; }

.small-order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.small-order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2; }

.small-order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3; }

.small-order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4; }

.small-order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5; }

.small-order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6; }

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.flex-child-grow {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.flex-child-shrink {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }

.flex-dir-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.flex-dir-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.flex-dir-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.slide-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 0;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 1;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          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;
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  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 {
  -webkit-transition-duration: 750ms !important;
          transition-duration: 750ms !important; }

.fast {
  -webkit-transition-duration: 250ms !important;
          transition-duration: 250ms !important; }

.linear {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important; }

.ease {
  -webkit-transition-timing-function: ease !important;
          transition-timing-function: ease !important; }

.ease-in {
  -webkit-transition-timing-function: ease-in !important;
          transition-timing-function: ease-in !important; }

.ease-out {
  -webkit-transition-timing-function: ease-out !important;
          transition-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-transition-timing-function: ease-in-out !important;
          transition-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-transition-delay: 300ms !important;
          transition-delay: 300ms !important; }

.long-delay {
  -webkit-transition-delay: 700ms !important;
          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-ccw-1turn;
          animation-name: spin-ccw-1turn; }

@-webkit-keyframes spin-ccw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); } }

@keyframes spin-ccw-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; }

body[data-aos-duration='50'] [data-aos], [data-aos][data-aos][data-aos-duration='50'] {
  -webkit-transition-duration: 50ms;
          transition-duration: 50ms; }

body[data-aos-delay='50'] [data-aos], [data-aos][data-aos][data-aos-delay='50'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='50'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='50'].aos-animate {
    -webkit-transition-delay: 50ms;
            transition-delay: 50ms; }

body[data-aos-duration='100'] [data-aos], [data-aos][data-aos][data-aos-duration='100'] {
  -webkit-transition-duration: 100ms;
          transition-duration: 100ms; }

body[data-aos-delay='100'] [data-aos], [data-aos][data-aos][data-aos-delay='100'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='100'].aos-animate {
    -webkit-transition-delay: 100ms;
            transition-delay: 100ms; }

body[data-aos-duration='150'] [data-aos], [data-aos][data-aos][data-aos-duration='150'] {
  -webkit-transition-duration: 150ms;
          transition-duration: 150ms; }

body[data-aos-delay='150'] [data-aos], [data-aos][data-aos][data-aos-delay='150'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='150'].aos-animate {
    -webkit-transition-delay: 150ms;
            transition-delay: 150ms; }

body[data-aos-duration='200'] [data-aos], [data-aos][data-aos][data-aos-duration='200'] {
  -webkit-transition-duration: 200ms;
          transition-duration: 200ms; }

body[data-aos-delay='200'] [data-aos], [data-aos][data-aos][data-aos-delay='200'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='200'].aos-animate {
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms; }

body[data-aos-duration='250'] [data-aos], [data-aos][data-aos][data-aos-duration='250'] {
  -webkit-transition-duration: 250ms;
          transition-duration: 250ms; }

body[data-aos-delay='250'] [data-aos], [data-aos][data-aos][data-aos-delay='250'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='250'].aos-animate {
    -webkit-transition-delay: 250ms;
            transition-delay: 250ms; }

body[data-aos-duration='300'] [data-aos], [data-aos][data-aos][data-aos-duration='300'] {
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms; }

body[data-aos-delay='300'] [data-aos], [data-aos][data-aos][data-aos-delay='300'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='300'].aos-animate {
    -webkit-transition-delay: 300ms;
            transition-delay: 300ms; }

body[data-aos-duration='350'] [data-aos], [data-aos][data-aos][data-aos-duration='350'] {
  -webkit-transition-duration: 350ms;
          transition-duration: 350ms; }

body[data-aos-delay='350'] [data-aos], [data-aos][data-aos][data-aos-delay='350'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='350'].aos-animate {
    -webkit-transition-delay: 350ms;
            transition-delay: 350ms; }

body[data-aos-duration='400'] [data-aos], [data-aos][data-aos][data-aos-duration='400'] {
  -webkit-transition-duration: 400ms;
          transition-duration: 400ms; }

body[data-aos-delay='400'] [data-aos], [data-aos][data-aos][data-aos-delay='400'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='400'].aos-animate {
    -webkit-transition-delay: 400ms;
            transition-delay: 400ms; }

body[data-aos-duration='450'] [data-aos], [data-aos][data-aos][data-aos-duration='450'] {
  -webkit-transition-duration: 450ms;
          transition-duration: 450ms; }

body[data-aos-delay='450'] [data-aos], [data-aos][data-aos][data-aos-delay='450'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='450'].aos-animate {
    -webkit-transition-delay: 450ms;
            transition-delay: 450ms; }

body[data-aos-duration='500'] [data-aos], [data-aos][data-aos][data-aos-duration='500'] {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms; }

body[data-aos-delay='500'] [data-aos], [data-aos][data-aos][data-aos-delay='500'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='500'].aos-animate {
    -webkit-transition-delay: 500ms;
            transition-delay: 500ms; }

body[data-aos-duration='550'] [data-aos], [data-aos][data-aos][data-aos-duration='550'] {
  -webkit-transition-duration: 550ms;
          transition-duration: 550ms; }

body[data-aos-delay='550'] [data-aos], [data-aos][data-aos][data-aos-delay='550'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='550'].aos-animate {
    -webkit-transition-delay: 550ms;
            transition-delay: 550ms; }

body[data-aos-duration='600'] [data-aos], [data-aos][data-aos][data-aos-duration='600'] {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms; }

body[data-aos-delay='600'] [data-aos], [data-aos][data-aos][data-aos-delay='600'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='600'].aos-animate {
    -webkit-transition-delay: 600ms;
            transition-delay: 600ms; }

body[data-aos-duration='650'] [data-aos], [data-aos][data-aos][data-aos-duration='650'] {
  -webkit-transition-duration: 650ms;
          transition-duration: 650ms; }

body[data-aos-delay='650'] [data-aos], [data-aos][data-aos][data-aos-delay='650'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='650'].aos-animate {
    -webkit-transition-delay: 650ms;
            transition-delay: 650ms; }

body[data-aos-duration='700'] [data-aos], [data-aos][data-aos][data-aos-duration='700'] {
  -webkit-transition-duration: 700ms;
          transition-duration: 700ms; }

body[data-aos-delay='700'] [data-aos], [data-aos][data-aos][data-aos-delay='700'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='700'].aos-animate {
    -webkit-transition-delay: 700ms;
            transition-delay: 700ms; }

body[data-aos-duration='750'] [data-aos], [data-aos][data-aos][data-aos-duration='750'] {
  -webkit-transition-duration: 750ms;
          transition-duration: 750ms; }

body[data-aos-delay='750'] [data-aos], [data-aos][data-aos][data-aos-delay='750'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='750'].aos-animate {
    -webkit-transition-delay: 750ms;
            transition-delay: 750ms; }

body[data-aos-duration='800'] [data-aos], [data-aos][data-aos][data-aos-duration='800'] {
  -webkit-transition-duration: 800ms;
          transition-duration: 800ms; }

body[data-aos-delay='800'] [data-aos], [data-aos][data-aos][data-aos-delay='800'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='800'].aos-animate {
    -webkit-transition-delay: 800ms;
            transition-delay: 800ms; }

body[data-aos-duration='850'] [data-aos], [data-aos][data-aos][data-aos-duration='850'] {
  -webkit-transition-duration: 850ms;
          transition-duration: 850ms; }

body[data-aos-delay='850'] [data-aos], [data-aos][data-aos][data-aos-delay='850'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='850'].aos-animate {
    -webkit-transition-delay: 850ms;
            transition-delay: 850ms; }

body[data-aos-duration='900'] [data-aos], [data-aos][data-aos][data-aos-duration='900'] {
  -webkit-transition-duration: 900ms;
          transition-duration: 900ms; }

body[data-aos-delay='900'] [data-aos], [data-aos][data-aos][data-aos-delay='900'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='900'].aos-animate {
    -webkit-transition-delay: 900ms;
            transition-delay: 900ms; }

body[data-aos-duration='950'] [data-aos], [data-aos][data-aos][data-aos-duration='950'] {
  -webkit-transition-duration: 950ms;
          transition-duration: 950ms; }

body[data-aos-delay='950'] [data-aos], [data-aos][data-aos][data-aos-delay='950'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='950'].aos-animate {
    -webkit-transition-delay: 950ms;
            transition-delay: 950ms; }

body[data-aos-duration='1000'] [data-aos], [data-aos][data-aos][data-aos-duration='1000'] {
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms; }

body[data-aos-delay='1000'] [data-aos], [data-aos][data-aos][data-aos-delay='1000'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1000'].aos-animate {
    -webkit-transition-delay: 1000ms;
            transition-delay: 1000ms; }

body[data-aos-duration='1050'] [data-aos], [data-aos][data-aos][data-aos-duration='1050'] {
  -webkit-transition-duration: 1050ms;
          transition-duration: 1050ms; }

body[data-aos-delay='1050'] [data-aos], [data-aos][data-aos][data-aos-delay='1050'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1050'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1050'].aos-animate {
    -webkit-transition-delay: 1050ms;
            transition-delay: 1050ms; }

body[data-aos-duration='1100'] [data-aos], [data-aos][data-aos][data-aos-duration='1100'] {
  -webkit-transition-duration: 1100ms;
          transition-duration: 1100ms; }

body[data-aos-delay='1100'] [data-aos], [data-aos][data-aos][data-aos-delay='1100'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1100'].aos-animate {
    -webkit-transition-delay: 1100ms;
            transition-delay: 1100ms; }

body[data-aos-duration='1150'] [data-aos], [data-aos][data-aos][data-aos-duration='1150'] {
  -webkit-transition-duration: 1150ms;
          transition-duration: 1150ms; }

body[data-aos-delay='1150'] [data-aos], [data-aos][data-aos][data-aos-delay='1150'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1150'].aos-animate {
    -webkit-transition-delay: 1150ms;
            transition-delay: 1150ms; }

body[data-aos-duration='1200'] [data-aos], [data-aos][data-aos][data-aos-duration='1200'] {
  -webkit-transition-duration: 1200ms;
          transition-duration: 1200ms; }

body[data-aos-delay='1200'] [data-aos], [data-aos][data-aos][data-aos-delay='1200'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1200'].aos-animate {
    -webkit-transition-delay: 1200ms;
            transition-delay: 1200ms; }

body[data-aos-duration='1250'] [data-aos], [data-aos][data-aos][data-aos-duration='1250'] {
  -webkit-transition-duration: 1250ms;
          transition-duration: 1250ms; }

body[data-aos-delay='1250'] [data-aos], [data-aos][data-aos][data-aos-delay='1250'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1250'].aos-animate {
    -webkit-transition-delay: 1250ms;
            transition-delay: 1250ms; }

body[data-aos-duration='1300'] [data-aos], [data-aos][data-aos][data-aos-duration='1300'] {
  -webkit-transition-duration: 1300ms;
          transition-duration: 1300ms; }

body[data-aos-delay='1300'] [data-aos], [data-aos][data-aos][data-aos-delay='1300'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1300'].aos-animate {
    -webkit-transition-delay: 1300ms;
            transition-delay: 1300ms; }

body[data-aos-duration='1350'] [data-aos], [data-aos][data-aos][data-aos-duration='1350'] {
  -webkit-transition-duration: 1350ms;
          transition-duration: 1350ms; }

body[data-aos-delay='1350'] [data-aos], [data-aos][data-aos][data-aos-delay='1350'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1350'].aos-animate {
    -webkit-transition-delay: 1350ms;
            transition-delay: 1350ms; }

body[data-aos-duration='1400'] [data-aos], [data-aos][data-aos][data-aos-duration='1400'] {
  -webkit-transition-duration: 1400ms;
          transition-duration: 1400ms; }

body[data-aos-delay='1400'] [data-aos], [data-aos][data-aos][data-aos-delay='1400'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1400'].aos-animate {
    -webkit-transition-delay: 1400ms;
            transition-delay: 1400ms; }

body[data-aos-duration='1450'] [data-aos], [data-aos][data-aos][data-aos-duration='1450'] {
  -webkit-transition-duration: 1450ms;
          transition-duration: 1450ms; }

body[data-aos-delay='1450'] [data-aos], [data-aos][data-aos][data-aos-delay='1450'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1450'].aos-animate {
    -webkit-transition-delay: 1450ms;
            transition-delay: 1450ms; }

body[data-aos-duration='1500'] [data-aos], [data-aos][data-aos][data-aos-duration='1500'] {
  -webkit-transition-duration: 1500ms;
          transition-duration: 1500ms; }

body[data-aos-delay='1500'] [data-aos], [data-aos][data-aos][data-aos-delay='1500'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1500'].aos-animate {
    -webkit-transition-delay: 1500ms;
            transition-delay: 1500ms; }

body[data-aos-duration='1550'] [data-aos], [data-aos][data-aos][data-aos-duration='1550'] {
  -webkit-transition-duration: 1550ms;
          transition-duration: 1550ms; }

body[data-aos-delay='1550'] [data-aos], [data-aos][data-aos][data-aos-delay='1550'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1550'].aos-animate {
    -webkit-transition-delay: 1550ms;
            transition-delay: 1550ms; }

body[data-aos-duration='1600'] [data-aos], [data-aos][data-aos][data-aos-duration='1600'] {
  -webkit-transition-duration: 1600ms;
          transition-duration: 1600ms; }

body[data-aos-delay='1600'] [data-aos], [data-aos][data-aos][data-aos-delay='1600'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1600'].aos-animate {
    -webkit-transition-delay: 1600ms;
            transition-delay: 1600ms; }

body[data-aos-duration='1650'] [data-aos], [data-aos][data-aos][data-aos-duration='1650'] {
  -webkit-transition-duration: 1650ms;
          transition-duration: 1650ms; }

body[data-aos-delay='1650'] [data-aos], [data-aos][data-aos][data-aos-delay='1650'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1650'].aos-animate {
    -webkit-transition-delay: 1650ms;
            transition-delay: 1650ms; }

body[data-aos-duration='1700'] [data-aos], [data-aos][data-aos][data-aos-duration='1700'] {
  -webkit-transition-duration: 1700ms;
          transition-duration: 1700ms; }

body[data-aos-delay='1700'] [data-aos], [data-aos][data-aos][data-aos-delay='1700'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1700'].aos-animate {
    -webkit-transition-delay: 1700ms;
            transition-delay: 1700ms; }

body[data-aos-duration='1750'] [data-aos], [data-aos][data-aos][data-aos-duration='1750'] {
  -webkit-transition-duration: 1750ms;
          transition-duration: 1750ms; }

body[data-aos-delay='1750'] [data-aos], [data-aos][data-aos][data-aos-delay='1750'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1750'].aos-animate {
    -webkit-transition-delay: 1750ms;
            transition-delay: 1750ms; }

body[data-aos-duration='1800'] [data-aos], [data-aos][data-aos][data-aos-duration='1800'] {
  -webkit-transition-duration: 1800ms;
          transition-duration: 1800ms; }

body[data-aos-delay='1800'] [data-aos], [data-aos][data-aos][data-aos-delay='1800'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1800'].aos-animate {
    -webkit-transition-delay: 1800ms;
            transition-delay: 1800ms; }

body[data-aos-duration='1850'] [data-aos], [data-aos][data-aos][data-aos-duration='1850'] {
  -webkit-transition-duration: 1850ms;
          transition-duration: 1850ms; }

body[data-aos-delay='1850'] [data-aos], [data-aos][data-aos][data-aos-delay='1850'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1850'].aos-animate {
    -webkit-transition-delay: 1850ms;
            transition-delay: 1850ms; }

body[data-aos-duration='1900'] [data-aos], [data-aos][data-aos][data-aos-duration='1900'] {
  -webkit-transition-duration: 1900ms;
          transition-duration: 1900ms; }

body[data-aos-delay='1900'] [data-aos], [data-aos][data-aos][data-aos-delay='1900'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1900'].aos-animate {
    -webkit-transition-delay: 1900ms;
            transition-delay: 1900ms; }

body[data-aos-duration='1950'] [data-aos], [data-aos][data-aos][data-aos-duration='1950'] {
  -webkit-transition-duration: 1950ms;
          transition-duration: 1950ms; }

body[data-aos-delay='1950'] [data-aos], [data-aos][data-aos][data-aos-delay='1950'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1950'].aos-animate {
    -webkit-transition-delay: 1950ms;
            transition-delay: 1950ms; }

body[data-aos-duration='2000'] [data-aos], [data-aos][data-aos][data-aos-duration='2000'] {
  -webkit-transition-duration: 2000ms;
          transition-duration: 2000ms; }

body[data-aos-delay='2000'] [data-aos], [data-aos][data-aos][data-aos-delay='2000'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2000'].aos-animate {
    -webkit-transition-delay: 2000ms;
            transition-delay: 2000ms; }

body[data-aos-duration='2050'] [data-aos], [data-aos][data-aos][data-aos-duration='2050'] {
  -webkit-transition-duration: 2050ms;
          transition-duration: 2050ms; }

body[data-aos-delay='2050'] [data-aos], [data-aos][data-aos][data-aos-delay='2050'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2050'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2050'].aos-animate {
    -webkit-transition-delay: 2050ms;
            transition-delay: 2050ms; }

body[data-aos-duration='2100'] [data-aos], [data-aos][data-aos][data-aos-duration='2100'] {
  -webkit-transition-duration: 2100ms;
          transition-duration: 2100ms; }

body[data-aos-delay='2100'] [data-aos], [data-aos][data-aos][data-aos-delay='2100'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2100'].aos-animate {
    -webkit-transition-delay: 2100ms;
            transition-delay: 2100ms; }

body[data-aos-duration='2150'] [data-aos], [data-aos][data-aos][data-aos-duration='2150'] {
  -webkit-transition-duration: 2150ms;
          transition-duration: 2150ms; }

body[data-aos-delay='2150'] [data-aos], [data-aos][data-aos][data-aos-delay='2150'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2150'].aos-animate {
    -webkit-transition-delay: 2150ms;
            transition-delay: 2150ms; }

body[data-aos-duration='2200'] [data-aos], [data-aos][data-aos][data-aos-duration='2200'] {
  -webkit-transition-duration: 2200ms;
          transition-duration: 2200ms; }

body[data-aos-delay='2200'] [data-aos], [data-aos][data-aos][data-aos-delay='2200'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2200'].aos-animate {
    -webkit-transition-delay: 2200ms;
            transition-delay: 2200ms; }

body[data-aos-duration='2250'] [data-aos], [data-aos][data-aos][data-aos-duration='2250'] {
  -webkit-transition-duration: 2250ms;
          transition-duration: 2250ms; }

body[data-aos-delay='2250'] [data-aos], [data-aos][data-aos][data-aos-delay='2250'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2250'].aos-animate {
    -webkit-transition-delay: 2250ms;
            transition-delay: 2250ms; }

body[data-aos-duration='2300'] [data-aos], [data-aos][data-aos][data-aos-duration='2300'] {
  -webkit-transition-duration: 2300ms;
          transition-duration: 2300ms; }

body[data-aos-delay='2300'] [data-aos], [data-aos][data-aos][data-aos-delay='2300'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2300'].aos-animate {
    -webkit-transition-delay: 2300ms;
            transition-delay: 2300ms; }

body[data-aos-duration='2350'] [data-aos], [data-aos][data-aos][data-aos-duration='2350'] {
  -webkit-transition-duration: 2350ms;
          transition-duration: 2350ms; }

body[data-aos-delay='2350'] [data-aos], [data-aos][data-aos][data-aos-delay='2350'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2350'].aos-animate {
    -webkit-transition-delay: 2350ms;
            transition-delay: 2350ms; }

body[data-aos-duration='2400'] [data-aos], [data-aos][data-aos][data-aos-duration='2400'] {
  -webkit-transition-duration: 2400ms;
          transition-duration: 2400ms; }

body[data-aos-delay='2400'] [data-aos], [data-aos][data-aos][data-aos-delay='2400'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2400'].aos-animate {
    -webkit-transition-delay: 2400ms;
            transition-delay: 2400ms; }

body[data-aos-duration='2450'] [data-aos], [data-aos][data-aos][data-aos-duration='2450'] {
  -webkit-transition-duration: 2450ms;
          transition-duration: 2450ms; }

body[data-aos-delay='2450'] [data-aos], [data-aos][data-aos][data-aos-delay='2450'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2450'].aos-animate {
    -webkit-transition-delay: 2450ms;
            transition-delay: 2450ms; }

body[data-aos-duration='2500'] [data-aos], [data-aos][data-aos][data-aos-duration='2500'] {
  -webkit-transition-duration: 2500ms;
          transition-duration: 2500ms; }

body[data-aos-delay='2500'] [data-aos], [data-aos][data-aos][data-aos-delay='2500'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2500'].aos-animate {
    -webkit-transition-delay: 2500ms;
            transition-delay: 2500ms; }

body[data-aos-duration='2550'] [data-aos], [data-aos][data-aos][data-aos-duration='2550'] {
  -webkit-transition-duration: 2550ms;
          transition-duration: 2550ms; }

body[data-aos-delay='2550'] [data-aos], [data-aos][data-aos][data-aos-delay='2550'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2550'].aos-animate {
    -webkit-transition-delay: 2550ms;
            transition-delay: 2550ms; }

body[data-aos-duration='2600'] [data-aos], [data-aos][data-aos][data-aos-duration='2600'] {
  -webkit-transition-duration: 2600ms;
          transition-duration: 2600ms; }

body[data-aos-delay='2600'] [data-aos], [data-aos][data-aos][data-aos-delay='2600'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2600'].aos-animate {
    -webkit-transition-delay: 2600ms;
            transition-delay: 2600ms; }

body[data-aos-duration='2650'] [data-aos], [data-aos][data-aos][data-aos-duration='2650'] {
  -webkit-transition-duration: 2650ms;
          transition-duration: 2650ms; }

body[data-aos-delay='2650'] [data-aos], [data-aos][data-aos][data-aos-delay='2650'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2650'].aos-animate {
    -webkit-transition-delay: 2650ms;
            transition-delay: 2650ms; }

body[data-aos-duration='2700'] [data-aos], [data-aos][data-aos][data-aos-duration='2700'] {
  -webkit-transition-duration: 2700ms;
          transition-duration: 2700ms; }

body[data-aos-delay='2700'] [data-aos], [data-aos][data-aos][data-aos-delay='2700'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2700'].aos-animate {
    -webkit-transition-delay: 2700ms;
            transition-delay: 2700ms; }

body[data-aos-duration='2750'] [data-aos], [data-aos][data-aos][data-aos-duration='2750'] {
  -webkit-transition-duration: 2750ms;
          transition-duration: 2750ms; }

body[data-aos-delay='2750'] [data-aos], [data-aos][data-aos][data-aos-delay='2750'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2750'].aos-animate {
    -webkit-transition-delay: 2750ms;
            transition-delay: 2750ms; }

body[data-aos-duration='2800'] [data-aos], [data-aos][data-aos][data-aos-duration='2800'] {
  -webkit-transition-duration: 2800ms;
          transition-duration: 2800ms; }

body[data-aos-delay='2800'] [data-aos], [data-aos][data-aos][data-aos-delay='2800'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2800'].aos-animate {
    -webkit-transition-delay: 2800ms;
            transition-delay: 2800ms; }

body[data-aos-duration='2850'] [data-aos], [data-aos][data-aos][data-aos-duration='2850'] {
  -webkit-transition-duration: 2850ms;
          transition-duration: 2850ms; }

body[data-aos-delay='2850'] [data-aos], [data-aos][data-aos][data-aos-delay='2850'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2850'].aos-animate {
    -webkit-transition-delay: 2850ms;
            transition-delay: 2850ms; }

body[data-aos-duration='2900'] [data-aos], [data-aos][data-aos][data-aos-duration='2900'] {
  -webkit-transition-duration: 2900ms;
          transition-duration: 2900ms; }

body[data-aos-delay='2900'] [data-aos], [data-aos][data-aos][data-aos-delay='2900'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2900'].aos-animate {
    -webkit-transition-delay: 2900ms;
            transition-delay: 2900ms; }

body[data-aos-duration='2950'] [data-aos], [data-aos][data-aos][data-aos-duration='2950'] {
  -webkit-transition-duration: 2950ms;
          transition-duration: 2950ms; }

body[data-aos-delay='2950'] [data-aos], [data-aos][data-aos][data-aos-delay='2950'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2950'].aos-animate {
    -webkit-transition-delay: 2950ms;
            transition-delay: 2950ms; }

body[data-aos-duration='3000'] [data-aos], [data-aos][data-aos][data-aos-duration='3000'] {
  -webkit-transition-duration: 3000ms;
          transition-duration: 3000ms; }

body[data-aos-delay='3000'] [data-aos], [data-aos][data-aos][data-aos-delay='3000'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='3000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='3000'].aos-animate {
    -webkit-transition-delay: 3000ms;
            transition-delay: 3000ms; }

body[data-aos-easing="linear"] [data-aos], [data-aos][data-aos][data-aos-easing="linear"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
          transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75); }

body[data-aos-easing="ease"] [data-aos], [data-aos][data-aos][data-aos-easing="ease"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
          transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1); }

body[data-aos-easing="ease-in"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in"] {
  -webkit-transition-timing-function: cubic-bezier(0.42, 0, 1, 1);
          transition-timing-function: cubic-bezier(0.42, 0, 1, 1); }

body[data-aos-easing="ease-out"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out"] {
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
          transition-timing-function: cubic-bezier(0, 0, 0.58, 1); }

body[data-aos-easing="ease-in-out"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out"] {
  -webkit-transition-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
          transition-timing-function: cubic-bezier(0.42, 0, 0.58, 1); }

body[data-aos-easing="ease-in-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-back"] {
  -webkit-transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
          transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045); }

body[data-aos-easing="ease-out-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-back"] {
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
          transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275); }

body[data-aos-easing="ease-in-out-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-back"] {
  -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }

body[data-aos-easing="ease-in-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-sine"] {
  -webkit-transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
          transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); }

body[data-aos-easing="ease-out-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-sine"] {
  -webkit-transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
          transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); }

body[data-aos-easing="ease-in-out-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-sine"] {
  -webkit-transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
          transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95); }

body[data-aos-easing="ease-in-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-quad"] {
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
          transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-quad"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
          transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-quad"] {
  -webkit-transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
          transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

body[data-aos-easing="ease-in-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-cubic"] {
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
          transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-cubic"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
          transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-cubic"] {
  -webkit-transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
          transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

body[data-aos-easing="ease-in-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-quart"] {
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
          transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-quart"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
          transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-quart"] {
  -webkit-transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
          transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

/**
 * Fade animations:
 * fade
 * fade-up, fade-down, fade-left, fade-right
 * fade-up-right, fade-up-left, fade-down-right, fade-down-left
 */
[data-aos^='fade'][data-aos^='fade'] {
  opacity: 0;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform; }
  [data-aos^='fade'][data-aos^='fade'].aos-animate {
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

[data-aos='fade-up'] {
  -webkit-transform: translate(0, 100px);
      -ms-transform: translate(0, 100px);
          transform: translate(0, 100px); }

[data-aos='fade-down'] {
  -webkit-transform: translate(0, -100px);
      -ms-transform: translate(0, -100px);
          transform: translate(0, -100px); }

[data-aos='fade-right'] {
  -webkit-transform: translate(-100px, 0);
      -ms-transform: translate(-100px, 0);
          transform: translate(-100px, 0); }

[data-aos='fade-left'] {
  -webkit-transform: translate(100px, 0);
      -ms-transform: translate(100px, 0);
          transform: translate(100px, 0); }

[data-aos='fade-up-right'] {
  -webkit-transform: translate(-100px, 100px);
      -ms-transform: translate(-100px, 100px);
          transform: translate(-100px, 100px); }

[data-aos='fade-up-left'] {
  -webkit-transform: translate(100px, 100px);
      -ms-transform: translate(100px, 100px);
          transform: translate(100px, 100px); }

[data-aos='fade-down-right'] {
  -webkit-transform: translate(-100px, -100px);
      -ms-transform: translate(-100px, -100px);
          transform: translate(-100px, -100px); }

[data-aos='fade-down-left'] {
  -webkit-transform: translate(100px, -100px);
      -ms-transform: translate(100px, -100px);
          transform: translate(100px, -100px); }

/**
 * Zoom animations:
 * zoom-in, zoom-in-up, zoom-in-down, zoom-in-left, zoom-in-right
 * zoom-out, zoom-out-up, zoom-out-down, zoom-out-left, zoom-out-right
 */
[data-aos^='zoom'][data-aos^='zoom'] {
  opacity: 0;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform; }
  [data-aos^='zoom'][data-aos^='zoom'].aos-animate {
    opacity: 1;
    -webkit-transform: translate(0, 0) scale(1);
        -ms-transform: translate(0, 0) scale(1);
            transform: translate(0, 0) scale(1); }

[data-aos='zoom-in'] {
  -webkit-transform: scale(0.6);
      -ms-transform: scale(0.6);
          transform: scale(0.6); }

[data-aos='zoom-in-up'] {
  -webkit-transform: translate(0, 100px) scale(0.6);
      -ms-transform: translate(0, 100px) scale(0.6);
          transform: translate(0, 100px) scale(0.6); }

[data-aos='zoom-in-down'] {
  -webkit-transform: translate(0, -100px) scale(0.6);
      -ms-transform: translate(0, -100px) scale(0.6);
          transform: translate(0, -100px) scale(0.6); }

[data-aos='zoom-in-right'] {
  -webkit-transform: translate(-100px, 0) scale(0.6);
      -ms-transform: translate(-100px, 0) scale(0.6);
          transform: translate(-100px, 0) scale(0.6); }

[data-aos='zoom-in-left'] {
  -webkit-transform: translate(100px, 0) scale(0.6);
      -ms-transform: translate(100px, 0) scale(0.6);
          transform: translate(100px, 0) scale(0.6); }

[data-aos='zoom-out'] {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2); }

[data-aos='zoom-out-up'] {
  -webkit-transform: translate(0, 100px) scale(1.2);
      -ms-transform: translate(0, 100px) scale(1.2);
          transform: translate(0, 100px) scale(1.2); }

[data-aos='zoom-out-down'] {
  -webkit-transform: translate(0, -100px) scale(1.2);
      -ms-transform: translate(0, -100px) scale(1.2);
          transform: translate(0, -100px) scale(1.2); }

[data-aos='zoom-out-right'] {
  -webkit-transform: translate(-100px, 0) scale(1.2);
      -ms-transform: translate(-100px, 0) scale(1.2);
          transform: translate(-100px, 0) scale(1.2); }

[data-aos='zoom-out-left'] {
  -webkit-transform: translate(100px, 0) scale(1.2);
      -ms-transform: translate(100px, 0) scale(1.2);
          transform: translate(100px, 0) scale(1.2); }

/**
 * Slide animations
 */
[data-aos^='slide'][data-aos^='slide'] {
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform; }
  [data-aos^='slide'][data-aos^='slide'].aos-animate {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

[data-aos='slide-up'] {
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%); }

[data-aos='slide-down'] {
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

[data-aos='slide-right'] {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%); }

[data-aos='slide-left'] {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%); }

/**
 * Flip animations:
 * flip-left, flip-right, flip-up, flip-down
 */
[data-aos^='flip'][data-aos^='flip'] {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform; }

[data-aos='flip-left'] {
  -webkit-transform: perspective(2500px) rotateY(-100deg);
          transform: perspective(2500px) rotateY(-100deg); }
  [data-aos='flip-left'].aos-animate {
    -webkit-transform: perspective(2500px) rotateY(0);
            transform: perspective(2500px) rotateY(0); }

[data-aos='flip-right'] {
  -webkit-transform: perspective(2500px) rotateY(100deg);
          transform: perspective(2500px) rotateY(100deg); }
  [data-aos='flip-right'].aos-animate {
    -webkit-transform: perspective(2500px) rotateY(0);
            transform: perspective(2500px) rotateY(0); }

[data-aos='flip-up'] {
  -webkit-transform: perspective(2500px) rotateX(-100deg);
          transform: perspective(2500px) rotateX(-100deg); }
  [data-aos='flip-up'].aos-animate {
    -webkit-transform: perspective(2500px) rotateX(0);
            transform: perspective(2500px) rotateX(0); }

[data-aos='flip-down'] {
  -webkit-transform: perspective(2500px) rotateX(100deg);
          transform: perspective(2500px) rotateX(100deg); }
  [data-aos='flip-down'].aos-animate {
    -webkit-transform: perspective(2500px) rotateX(0);
            transform: perspective(2500px) rotateX(0); }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

.index-menu {
  height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .index-menu .menu a {
    text-transform: uppercase;
    color: #000000;
    -webkit-transition: color 0.2s ease-in;
    transition: color 0.2s ease-in; }
    .index-menu .menu a:hover {
      color: #0075b6; }

.container-divider-right {
  border-bottom: 1px solid #f7f7f7; }
  @media print, screen and (min-width: 40em) {
    .container-divider-right {
      border-right: 1px solid #f7f7f7;
      border-bottom: 0; } }

.avatar {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  min-width: 40px; }
  .avatar.avatar-small {
    height: 25px;
    width: 25px;
    border-radius: 50%; }
  .avatar.avatar-large {
    height: 100px;
    width: 100px;
    border-radius: 50%; }

.mb0 {
  margin-bottom: 0rem !important; }

.mb1 {
  margin-bottom: 1rem !important; }

.mb2 {
  margin-bottom: 2rem !important; }

.mb3 {
  margin-bottom: 3rem !important; }

.content-container {
  width: 100%;
  margin: 0 auto;
  overflow: auto; }

/* Menu icon */
.menu-icon-shape {
  width: 60px;
  height: 60px;
  display: block;
  position: absolute;
  top: 3vh;
  left: 3vh;
  z-index: 2;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  background-image: url(../../img/close-icon.png);
  background-repeat: no-repeat; }

.main-menu-dropper .menu-icon-shape {
  width: 25px;
  height: 25px;
  display: block;
  position: absolute;
  top: 3px;
  left: auto;
  right: 7vw;
  z-index: 2;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  background-image: url(../../img/close-icon-blue.png);
  background-repeat: no-repeat; }

@media screen and (min-width: 40em) {
  .main-menu-dropper .menu-icon-shape {
    top: 10px;
    right: 10px; } }

/* Navigation */
.overlay-nav {
  width: 100%;
  height: 0;
  position: fixed;
  left: 0;
  background: #1976d2;
  background: rgba(16, 16, 16, 0.7);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.35s, visibility 0.35s, height 0.6s ease;
  transition: opacity 0.35s, visibility 0.35s, height 0.6s ease; }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .overlay-nav {
    background: #1976d2;
    background: rgba(16, 16, 16, 0.95); } }

/* Open navigiation */
.overlay-nav.active {
  width: 100%;
  height: 100vh;
  opacity: 1;
  visibility: visible;
  overflow: auto; }

.nav-content {
  position: relative;
  margin: 0 auto !important;
  top: 10vh;
  padding-bottom: 10vh; }

.nav-content-1 {
  position: relative;
  margin: 0 auto !important;
  top: 25% !important;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  margin-top: 48vw; }

.nav-content ul {
  margin: 0 auto;
  padding: 0;
  list-style: none; }

.nav-content > ul {
  border-left: 8px solid #FAB517;
  margin-left: 60px;
  padding-bottom: 3vh; }

.nav-content ul li a {
  width: 100%;
  display: block;
  text-align: left;
  font-family: 'FordAntenna-Bold';
  font-weight: 100;
  font-size: 1.5em;
  line-height: 1.3;
  letter-spacing: 0.6px;
  text-decoration: none;
  color: white;
  -webkit-transition: color 200ms ease;
  transition: color 200ms ease; }

.head-top {
  font-family: 'FordAntenna-Black','FordAntenna-Bold';
  text-align: left;
  padding-left: 3vw;
  font-size: 2.3vw;
  color: white;
  margin-bottom: 20px; }

.sub-pro-items {
  font-family: 'FordAntenna-Bold';
  text-align: left;
  padding-left: 3vw;
  font-size: 1.2vw;
  color: white;
  padding-top: 15px; }
  .sub-pro-items a:hover, .sub-pro-items a:focus {
    cursor: pointer;
    color: #FAB517; }

.sub-pro-items-acc {
  font-family: 'FordAntenna-Bold';
  text-align: left;
  padding-left: 3vw;
  font-size: 1.2vw;
  color: white;
  padding-top: 15px; }
  .sub-pro-items-acc a:hover, .sub-pro-items-acc a:focus {
    cursor: pointer;
    color: #0679BC; }

.vehicle-group-in {
  font-family: 'FordAntenna-Bold';
  text-align: left;
  padding-left: 3vw;
  font-size: 1.2vw;
  color: white;
  padding-top: 1rem;
  padding-bottom: 15px;
  font-weight: bolder; }

.comm-side .vehicle-group-in a:hover, .comm-side .vehicle-group-in a:focus {
  cursor: pointer;
  color: #FAB517; }

.sub-pro-items-rec {
  font-family: 'FordAntenna-Bold';
  text-align: left;
  padding-left: 3vw;
  font-size: 1.2vw;
  color: white;
  padding-top: 15px; }
  .sub-pro-items-rec a:hover, .sub-pro-items-rec a:focus {
    cursor: pointer;
    color: #066374; }

.sub-pro-items-op {
  font-family: 'FordAntenna-Bold';
  text-align: left;
  padding-left: 3vw;
  font-size: 22px;
  color: white;
  font-weight: bolder;
  padding-top: 15px; }

.sub-pro-items-op:hover {
  cursor: pointer;
  color: #0679BC; }

.sub-pro-items-op-acc:hover {
  cursor: pointer;
  color: #0679BC; }

.incen-list {
  font-family: 'FordAntenna-Bold';
  text-align: left;
  padding-left: 3vw;
  font-size: 0.8vw;
  line-height: 1.1;
  color: white;
  padding-top: 15px;
  margin-left: 30px; }
  .incen-list a:hover, .incen-list a:focus {
    cursor: pointer;
    color: #FAB517; }

.incen-list-acc {
  font-family: 'FordAntenna-Bold';
  text-align: left;
  padding-left: 3vw;
  font-size: 0.8vw;
  line-height: 1.1;
  color: white;
  padding-top: 15px;
  margin-left: 30px; }
  .incen-list-acc a:hover, .incen-list-acc a:focus {
    cursor: pointer;
    color: #0679BC; }

.access-side {
  border-left: 6px solid #0679BC !important; }

.access-side .vehicle-group-in a:hover, .access-side .vehicle-group-in a:focus {
  cursor: pointer;
  color: #0679BC; }

.rec-side {
  border-left: 6px solid #066374 !important;
  list-style-type: none;
  margin-left: 58px;
  padding-left: 3px; }

/* Media queries */
/* Small only */
@media screen and (max-width: 39.9375em) {
  .nav-content > ul {
    border-left: 5px solid #FAB517;
    margin-left: 35px;
    padding-bottom: 2vh; }
  .access-side {
    border-left: 5px solid #0679BC !important; }
  .rec-side {
    border-left: 5px solid #066374 !important; }
  .head-top {
    padding-left: 3vw;
    font-size: 6.3vw;
    margin-bottom: 0; }
  .sub-pro-items {
    padding-left: 3vw;
    font-size: 3.2vw;
    padding-top: 15px; }
  .sub-pro-items-acc {
    padding-left: 3vw;
    font-size: 3.2vw;
    padding-top: 15px; }
  .sub-pro-items-rec {
    padding-left: 3vw;
    font-size: 3.2vw;
    padding-top: 15px; }
  .vehicle-group-in {
    padding-left: 3vw;
    font-size: 3.2vw;
    padding-top: 1rem;
    padding-bottom: 15px; }
  .incen-list {
    padding-left: 3vw;
    font-size: 2vw;
    padding-top: 15px;
    margin-left: 30px; }
  .incen-list-acc {
    padding-left: 3vw;
    font-size: 2vw;
    padding-top: 15px;
    margin-left: 30px; } }

/* Blur Effect */
.blur-overlay.on {
  -webkit-filter: blur(30px);
  filter: blur(30px);
  -webkit-filter: Blur(Strength=80);
          filter: Blur(Strength=80); }

.noscroll {
  overflow: hidden; }

.type-sidelines {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: left; }
  .type-sidelines span {
    display: inline-block;
    position: relative;
    padding-right: 0.5em;
    padding-left: 0; }
    .type-sidelines span:before, .type-sidelines span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 9999px;
      top: 50%;
      border-top-style: solid;
      border-top-width: 2px;
      margin-top: -1px; }
    .type-sidelines span:before {
      right: 100%; }
    .type-sidelines span:after {
      left: 100%; }

.type-sidelines-dotted {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: left; }
  .type-sidelines-dotted span {
    display: inline-block;
    position: relative;
    padding-right: 0.5em;
    padding-left: 0; }
    .type-sidelines-dotted span:before, .type-sidelines-dotted span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 9999px;
      top: 50%;
      border-top-style: dotted;
      border-top-width: 2px;
      margin-top: -1px; }
    .type-sidelines-dotted span:before {
      right: 100%; }
    .type-sidelines-dotted span:after {
      left: 100%; }

.double {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: center; }
  .double span {
    display: inline-block;
    position: relative;
    padding-right: 0.5em;
    padding-left: 0.5em; }
    .double span:before, .double span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 9999px;
      top: 50%;
      border-top-style: solid;
      border-top-width: 2px;
      border-bottom-style: solid;
      border-bottom-width: 2px;
      height: 0.5em;
      margin-top: -0.25em; }
    .double span:before {
      right: 100%; }
    .double span:after {
      left: 100%; }

.custom {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: center; }
  .custom span {
    display: inline-block;
    position: relative;
    padding-right: 20px;
    padding-left: 20px; }
    .custom span:before, .custom span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 100%;
      top: 50%;
      border-top-style: dotted;
      border-top-width: 4px;
      border-top-color: #2980b9;
      margin-top: -2px; }
    .custom span:before {
      right: 100%; }
    .custom span:after {
      left: 100%; }

.custom-2 {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: center; }
  .custom-2 span {
    display: inline-block;
    position: relative;
    padding-right: 0.5em;
    padding-left: 0.5em; }
    .custom-2 span:before, .custom-2 span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 9999px;
      top: 50%;
      border-top-style: solid;
      border-top-width: 4px;
      border-top-color: #27ae60;
      margin-top: -2px; }
    .custom-2 span:before {
      right: 100%; }
    .custom-2 span:after {
      left: 100%; }

.thing {
  z-index: 4000; }

.app-dashboard {
  height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.app-dashboard-body {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.app-dashboard-sidebar {
  background-color: #ffffff;
  height: 100%;
  overflow-x: visible;
  overflow-y: auto;
  z-index: 1;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  .app-dashboard-sidebar .app-dashboard-open-sidebar,
  .app-dashboard-sidebar .app-dashboard-close-sidebar {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 1rem;
    height: 3rem; }
  .app-dashboard-sidebar .app-dashboard-sidebar-block-title {
    margin-bottom: 0; }
  .app-dashboard-sidebar .app-dashboard-sidebar-close-button img {
    vertical-align: bottom; }
  .app-dashboard-sidebar img + .app-dashboard-sidebar-text {
    margin-left: 1rem; }
  .app-dashboard-sidebar .app-dashboard-sidebar-inner {
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto; }
    .app-dashboard-sidebar .app-dashboard-sidebar-inner .menu > li > a {
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      padding: 0.6368rem 1rem; }

.reveal-for-medium .app-dashboard-open-sidebar {
  display: none; }

.app-dashboard-sidebar-footer {
  background: rgba(42, 57, 79, 0.8);
  bottom: 0;
  left: 0;
  padding: 1rem;
  position: absolute;
  width: 100%; }

.app-dashboard-open-sidebar {
  text-align: center; }

.app-dashboard-body-content {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  overflow-y: auto;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
  padding: 20px;
  background-color: #ffffff; }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .app-dashboard.shrink-medium .app-dashboard-close-sidebar,
  .app-dashboard.shrink-medium .app-dashboard-sidebar-text {
    display: none; }
  .app-dashboard.shrink-medium .app-dashboard-open-sidebar {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .app-dashboard.shrink-medium .app-dashboard-sidebar {
    width: 5rem; }
  .app-dashboard.shrink-medium .off-canvas-content {
    margin-left: 5rem;
    width: calc(100% - 5rem); }
  .app-dashboard.shrink-medium .menu.vertical > li > a {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .app-dashboard.shrink-medium .menu li::after {
    display: none;
    opacity: 0;
    -webkit-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out; }
  .app-dashboard.shrink-medium .menu li a svg {
    margin: 0; }
  .app-dashboard.shrink-medium .menu li a span {
    display: none;
    opacity: 0;
    -webkit-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out; } }

@media print, screen and (min-width: 64em) {
  .app-dashboard.shrink-large .app-dashboard-close-sidebar,
  .app-dashboard.shrink-large .app-dashboard-sidebar-text {
    display: none; }
  .app-dashboard.shrink-large .app-dashboard-open-sidebar {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .app-dashboard.shrink-large .app-dashboard-sidebar {
    width: 5rem; }
  .app-dashboard.shrink-large .off-canvas-content {
    margin-left: 5rem;
    width: calc(100% - 5rem); }
  .app-dashboard.shrink-large .menu.vertical > li > a {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .app-dashboard.shrink-large .menu li::after {
    display: none;
    opacity: 0;
    -webkit-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out; }
  .app-dashboard.shrink-large .menu li a svg {
    margin: 0; }
  .app-dashboard.shrink-large .menu li a span {
    display: none;
    opacity: 0;
    -webkit-transition: opacity 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out; } }

.app-dashboard-top-nav-bar {
  height: 3.4375rem;
  width: 100%;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 3.4375rem;
      -ms-flex: 0 0 3.4375rem;
          flex: 0 0 3.4375rem; }

@font-face {
  font-family: "FordAntennaCond-Bold";
  src: url("../../fonts/FordAntennaCond-Bold.eot?") format("eot"), url("../../fonts/FordAntennaCond-Bold.woff") format("woff"), url("../../fonts/FordAntennaCond-Bold.svg#FordAntennaCond-Bold") format("svg"); }

@font-face {
  font-family: "FordAntenna-Regular";
  src: url("../../fonts/FordAntenna-Regular.eot?") format("eot"), url("../../fonts/FordAntenna-Regular.woff") format("woff"), url("../../fonts/FordAntenna-Regular.svg#FordAntenna-Regular") format("svg"); }

@font-face {
  font-family: "FordAntenna-RegularItalic";
  src: url("../../fonts/FordAntenna-RegularItalic.eot?") format("eot"), url("../../fonts/FordAntenna-RegularItalic.woff") format("woff"), url("../../fonts/FordAntenna-RegularItalic.svg#FordAntenna-RegularItalic") format("svg"); }

@font-face {
  font-family: "FordAntenna-Semibold";
  src: url("../../fonts/FordAntenna-Semibold.eot?") format("eot"), url("../../fonts/FordAntenna-Semibold.woff") format("woff"), url("../../fonts/FordAntenna-Semibold.svg#FordAntenna-Semibold") format("svg"); }

@font-face {
  font-family: "FordAntenna-Bold";
  src: url("../../fonts/FordAntenna-Bold.eot?") format("eot"), url("../../fonts/FordAntenna-Bold.woff") format("woff"), url("../../fonts/FordAntenna-Bold.svg#FordAntenna-Bold") format("svg"); }

@font-face {
  font-family: "FordAntenna-Black";
  src: url("../../fonts/FordAntenna-Black.eot?") format("eot"), url("../../fonts/FordAntenna-Black.woff") format("woff"), url("../../fonts/FordAntenna-Black.svg#FordAntenna-Black") format("svg"); }

@font-face {
  font-family: "FordAntenna-Medium";
  src: url("../../fonts/FordAntenna-Medium.eot?") format("eot"), url("../../fonts/FordAntenna-Medium.woff") format("woff"), url("../../fonts/FordAntenna-Medium.svg#FordAntenna-Medium") format("svg"); }

@font-face {
  font-family: "FordAntenna-Light";
  src: url("../../fonts/FordAntenna-Light.eot?") format("eot"), url("../../fonts/FordAntenna-Light.woff") format("woff"), url("../../fonts/FordAntenna-Light.svg#FordAntenna-Light") format("svg"); }

nav .menu a, nav .menu .button {
  padding: 0.7vw; }

nav .menu .menu-text {
  padding: 0 1rem; }

.sticky.is-stuck {
  z-index: 25; }

img.admin-icon {
  width: 2vw;
  margin-top: -0.5vw; }

h1 {
  font-family: 'FordAntenna-Light', san-serif;
  font-size: 3.2105vw;
  line-height: 0.7;
  background: #082a47;
  padding: 1.5vw;
  color: #ffffff; }

h1 span {
  font-size: 1.2789vw;
  text-transform: none;
  line-height: 1.1;
  display: inline-block;
  margin-top: 1rem; }

.interior-page h1 {
  font-size: 3.2105vw;
  line-height: 1.1;
  margin-left: 0; }

h2 {
  font-family: 'FordAntenna-Light', san-serif;
  font-size: 2rem;
  color: #ffffff; }

h2.lightback {
  color: #0075b6;
  padding: 1rem 0; }

h3 {
  font-family: 'FordAntenna-Light', san-serif;
  font-size: 2rem;
  margin-bottom: 1.5rem;
  color: #ffffff; }

.light-section h3 {
  color: #000000;
  background: inherit; }

h4 {
  font-family: 'FordAntenna-Light', san-serif;
  position: relative;
  font-size: 2.1vw;
  line-height: 1.1;
  color: #ffffff;
  margin: 2.68vw 0 0 1.1vw;
  padding: 1.1vw;
  background: #082a47;
  display: inline-block; }

.upfit-options-section h4 {
  background: none;
  margin: 0;
  padding: 1.1vw 0;
  font-size: 2rem; }

.banner-tag {
  position: absolute;
  bottom: 0;
  right: 0; }
  .banner-tag h2 {
    font-size: 1.5vw;
    background: #082a47;
    padding: 0.25vw 0.5vw; }

sup {
  font-size: 50%;
  top: -1em; }

ul.first-part {
  margin-bottom: 0; }

.technology-tile h4 {
  background: none;
  margin-right: 2.1vw; }

li.cell {
  list-style-position: outside;
  margin-left: 2rem;
  margin-right: -2rem;
  margin-bottom: 1rem;
  padding-left: 0rem !important;
  padding-right: 1.5rem !important; }

/* width */
::-webkit-scrollbar {
  width: 10px; }

/* Track */
::-webkit-scrollbar-track {
  background: #f7f7f7; }

/* Handle */
::-webkit-scrollbar-thumb {
  background: #cacaca; }

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #333333; }

.desktop-header-logo {
  width: 18.05vw;
  -webkit-transition: width 300ms linear;
  transition: width 300ms linear; }

.footer-logo img {
  width: 20vw;
  -webkit-transition: width 300ms linear;
  transition: width 300ms linear; }

.is-stuck .desktop-header-logo {
  width: 10.05vw; }

.top-bar .menu li {
  border-bottom: 4px solid #ffffff;
  margin: 0 0.75vw;
  font-size: 1vw; }
  .top-bar .menu li.commercial-nav:hover, .top-bar .menu li.commercial-nav:focus, .top-bar .menu li.commercial-nav.active {
    border-bottom: 4px solid #0075b6; }
  .top-bar .menu li.accessibility-nav:hover, .top-bar .menu li.accessibility-nav:focus, .top-bar .menu li.accessibility-nav.active {
    border-bottom: 4px solid #0075b6; }
  .top-bar .menu li.recreational-nav:hover, .top-bar .menu li.recreational-nav:focus, .top-bar .menu li.recreational-nav.active {
    border-bottom: 4px solid #0075b6; }
  .top-bar .menu li.start-with-vehicle-nav:hover, .top-bar .menu li.start-with-vehicle-nav:focus, .top-bar .menu li.start-with-vehicle-nav.active {
    border-bottom: 4px solid #0075b6; }
  .top-bar .menu li.directory-nav:hover, .top-bar .menu li.directory-nav:focus, .top-bar .menu li.directory-nav.active {
    border-bottom: 4px solid #0075b6; }
  .top-bar .menu li.admin-login:hover, .top-bar .menu li.admin-login:focus, .top-bar .menu li.admin-login.active {
    border-bottom: 4px solid #0075b6; }

.mega-footer {
  background: #333333;
  padding: 3rem; }
  .mega-footer .menu a {
    color: #f7f7f7;
    font-family: 'FordAntenna-Light', san-serif; }
    .mega-footer .menu a:hover {
      text-decoration: underline; }
  .mega-footer .menu .menu-text {
    font-family: 'FordAntenna-Bold', san-serif;
    text-transform: uppercase;
    color: #f7f7f7; }
    .mega-footer .menu .menu-text a {
      font-family: 'FordAntenna-Bold', san-serif;
      padding: 0 0 2rem 0; }
      .mega-footer .menu .menu-text a:hover {
        text-decoration: underline; }

.dark-section a {
  color: #ffffff; }
  .dark-section a:hover {
    text-decoration: underline; }

.dark-section .disclaimer a {
  color: #0075b6; }
  .dark-section .disclaimer a:hover {
    text-decoration: underline; }

.copyright {
  padding-top: 1rem;
  padding-bottom: 3rem; }
  .copyright .menu a {
    color: #333333;
    font-family: 'FordAntenna-Light', san-serif; }
    .copyright .menu a:hover {
      text-decoration: underline; }

.intro-video {
  height: 75vh;
  -webkit-transition: height 600ms ease;
  transition: height 600ms ease;
  background-size: cover;
  position: relative; }
  .intro-video h1 {
    position: absolute;
    top: 2vw; }
  .intro-video.commercial-banner {
    height: 40vw;
    position: relative;
    overflow: hidden;
    background: rgba(0, 0, 0, 0);
    border-bottom: 8px solid #0075b6; }
    .intro-video.commercial-banner h1 {
      top: 6vh; }
  .intro-video.recreational-banner {
    height: 40vw;
    position: relative;
    overflow: hidden;
    background: rgba(0, 0, 0, 0);
    border-bottom: 8px solid #0075b6; }
    .intro-video.recreational-banner:after {
      display: block;
      content: '';
      background: url(../../img/recreational-florish-landing.png) no-repeat 0 center;
      background-size: 100%;
      width: 47vw;
      height: 20vw;
      bottom: -3vw;
      left: 75vw;
      position: absolute;
      z-index: -1; }
    .intro-video.recreational-banner.landing:after {
      width: 42vw;
      height: 18vw;
      left: -1vw;
      bottom: -1vw; }
    .intro-video.recreational-banner > .cell {
      background-size: 0.5vw 85%; }
  .intro-video.accessibility-banner {
    height: 40vw;
    position: relative;
    overflow: hidden;
    background: rgba(0, 0, 0, 0);
    border-bottom: 8px solid #0075b6; }
    .intro-video.accessibility-banner:after {
      display: block;
      content: '';
      background: url(../../img/accessibility-florish-landing.png) no-repeat 0 center;
      background-size: 100%;
      width: 14vw;
      height: 17vw;
      left: 86vw;
      bottom: -7vw;
      position: absolute;
      z-index: -1; }
    .intro-video.accessibility-banner.landing:after {
      width: 15vw;
      height: 18vw;
      left: 2vw;
      bottom: -7vw; }
    .intro-video.accessibility-banner.detail-page {
      height: 29vw;
      -webkit-box-shadow: inset 1vw 10vw 152px 4vw rgba(0, 0, 0, 0);
              box-shadow: inset 1vw 10vw 152px 4vw rgba(0, 0, 0, 0); }
      .intro-video.accessibility-banner.detail-page h1 {
        top: 6vh; }
    .intro-video.accessibility-banner.video-portal {
      height: 35vw;
      -webkit-box-shadow: inset 1vw 10vw 152px 4vw rgba(0, 0, 0, 0);
              box-shadow: inset 1vw 10vw 152px 4vw rgba(0, 0, 0, 0); }
      .intro-video.accessibility-banner.video-portal h1 {
        top: 6vh; }
    .intro-video.accessibility-banner > .cell {
      background-size: 0.5vw 85%; }
  .intro-video.fleet-banner {
    height: 40vw;
    position: relative;
    overflow: hidden;
    background: rgba(0, 0, 0, 0);
    border-bottom: 8px solid #0075b6; }
    .intro-video.fleet-banner > .cell {
      background-size: 0.5vw 85%; }
  .intro-video.start-with-banner {
    height: 30vw; }
    .intro-video.start-with-banner h1 {
      top: 5vh; }
  .intro-video.garage-banner {
    height: 30vw; }
    .intro-video.garage-banner h1 {
      top: 4vh; }

.intro-video > .cell {
  position: relative; }

.intro-video .intro-cta {
  position: absolute;
  bottom: 1vh;
  padding: 1rem 1rem 0;
  background: #082a47; }
  .intro-video .intro-cta.garage-intro {
    bottom: auto;
    top: 16vw; }
  .intro-video .intro-cta.noback {
    background: none; }
  .intro-video .intro-cta.fullwide {
    width: 100%;
    bottom: 2vw; }

.intro-cta .button {
  min-width: 90%;
  font-size: 1.053vw;
  padding: 1vw 0.542vw 0.525vw;
  background-color: #082a47; }
  .intro-cta .button.expanded {
    width: 100%; }
  .intro-cta .button:after {
    content: '';
    display: block;
    width: 108%;
    height: 0.4vw;
    background: #0075b6;
    position: relative;
    bottom: -1.5vw;
    left: -0.6vw; }
  .intro-cta .button.hollow:after {
    background: none; }
  .intro-cta .button:hover, .intro-cta .button:focus {
    background-color: #0075b6; }

.start-with-vehicle-home {
  background: #f7f7f7; }
  .start-with-vehicle-home .tabs-panel .cell {
    background: rgba(6, 120, 188, 0);
    -webkit-transition: background-color 300ms ease;
    transition: background-color 300ms ease; }
    .start-with-vehicle-home .tabs-panel .cell:hover {
      background-color: #0678bc; }
      .start-with-vehicle-home .tabs-panel .cell:hover a {
        color: #ffffff; }

.accordion {
  margin: 1.875rem 0; }

.accordion-title {
  margin: 0;
  font-size: 1.7rem;
  color: #333333;
  border: 1px solid #0075b6; }
  .accordion-title:before {
    display: none; }
  .accordion-title:after {
    content: '';
    background: url(../../img/accordion-caret.png) no-repeat center center;
    background-size: contain;
    display: inline-block;
    width: 2.211vw;
    height: 1.4vw;
    margin-left: 2rem;
    top: 0;
    position: relative;
    -webkit-transition: -webkit-transform 300ms ease;
    transition: -webkit-transform 300ms ease;
    transition: transform 300ms ease;
    transition: transform 300ms ease, -webkit-transform 300ms ease; }

:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #0075b6;
  border-radius: 0 0 0 0; }

.is-active .accordion-title:after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg); }

li.accordion-item.is-active > .accordion-content:last-child {
  border: 1px solid #0075b6;
  border-top-width: 0px; }

.accessibility-info li.accordion-item {
  margin-bottom: 1rem; }

ul.tabs-title {
  /* width: calc(100% - 4rem); */
  text-align: center;
  /* margin: 0; */
  display: block;
  margin: 0 auto; }

.tabs-title {
  float: none !important;
  display: inline-block;
  padding: 1rem; }

.tabs {
  text-align: center; }

.tabs-title > a {
  font-family: 'FordAntenna-Regular', san-serif;
  display: block;
  padding: 1.25rem 2.5rem;
  font-size: 1.5rem;
  line-height: 1;
  background-color: #ffffff;
  border: 2px solid #0075b6; }

.tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
  background: #0075b6;
  color: #ffffff; }

.accordion.disclaimer {
  margin: 0.5rem 0;
  background: none; }
  .accordion.disclaimer .accordion-title {
    margin: 0;
    font-size: 1rem;
    color: #333333;
    border: 0 solid #0075b6;
    padding: 0 1rem; }
    .accordion.disclaimer .accordion-title:hover, .accordion.disclaimer .accordion-title:focus {
      background: none; }
    .accordion.disclaimer .accordion-title:before {
      display: none; }
    .accordion.disclaimer .accordion-title:after {
      content: '';
      background: url(../../img/accordion-caret.png) no-repeat center center;
      background-size: contain;
      display: inline-block;
      width: 1.211vw;
      height: 0.5vw;
      margin-left: 0.5rem;
      top: 0;
      position: relative;
      -webkit-transition: -webkit-transform 300ms ease;
      transition: -webkit-transform 300ms ease;
      transition: transform 300ms ease;
      transition: transform 300ms ease, -webkit-transform 300ms ease; }
  .accordion.disclaimer li.accordion-item.is-active > .accordion-content:last-child {
    border-top-width: 1px; }

.accordion.filter {
  margin: 0.5rem 0;
  background: none; }
  .accordion.filter .accordion-title {
    margin: 0;
    font-size: 1.7vw;
    color: #ffffff;
    border: 0 solid #0075b6;
    padding: 0 1rem; }
    .accordion.filter .accordion-title:hover, .accordion.filter .accordion-title:focus {
      background: none; }
    .accordion.filter .accordion-title:before {
      display: none; }
    .accordion.filter .accordion-title:after {
      content: '';
      background: url(../../img/accordion-caret-white.png) no-repeat center center;
      background-size: contain;
      display: inline-block;
      width: 2.211vw;
      height: 1vw;
      margin-right: 0.5rem;
      top: 0;
      position: absolute;
      right: 0;
      -webkit-transition: -webkit-transform 300ms ease;
      transition: -webkit-transform 300ms ease;
      transition: transform 300ms ease;
      transition: transform 300ms ease, -webkit-transform 300ms ease; }
  .accordion.filter li.accordion-item {
    padding: 1rem 0; }
    .accordion.filter li.accordion-item .accordion-content {
      border-width: 0;
      padding: 1rem 1rem 0;
      background: none;
      color: #ffffff; }

.dark-section .accordion.disclaimer .accordion-title {
  color: #ffffff; }
  .dark-section .accordion.disclaimer .accordion-title:after {
    background-image: url(../../img/accordion-caret-white.png); }

:last-child > .accordion-content:last-child {
  border: 1px solid #0075b6; }

.keep-updated, .intro-cta {
  color: #fff; }
  .keep-updated label, .intro-cta label {
    color: #fff;
    font-size: 0.75rem; }
  .keep-updated legend, .intro-cta legend {
    font-size: 0.85rem;
    text-align: center;
    margin: 0 auto; }
  .keep-updated .content-bucket, .intro-cta .content-bucket {
    background: #082a47; }
  .keep-updated .form-response, .intro-cta .form-response {
    text-align: center;
    font-size: 2vw;
    padding: 9.51vw 0; }
  .keep-updated form, .intro-cta form {
    position: relative; }
    .keep-updated form .help-text, .intro-cta form .help-text {
      color: #ffffff; }

.keep-updated .background-img {
  position: relative;
  overflow: hidden;
  height: inherit; }

.intro-cta legend {
  text-align: left;
  padding-bottom: 0.5rem;
  margin: 0 0;
  font-size: 1.2vw; }

.intro-cta .form-response p {
  text-shadow: black 0px 0px 10px, black 0px 0px 10px; }

.off {
  display: none; }

.special-split {
  padding: 1vw;
  margin: 1vw;
  font-size: 2vw;
  background: #082a47; }

.bottom-button {
  position: absolute;
  top: 83%;
  z-index: 20;
  width: 100%;
  margin-bottom: 0; }

.bottom-button2 {
  position: absolute;
  top: 83%;
  z-index: 20;
  margin-bottom: 0;
  margin-left: 0.5vw; }

.splithero {
  height: 38vw;
  overflow: hidden; }

.splithero1 {
  position: relative;
  height: 38vw;
  overflow: hidden; }
  .splithero1 .banner__video {
    width: 100%; }
  .splithero1 h2 {
    position: absolute;
    z-index: 20;
    left: 35.75%; }
  .splithero1 .responsive-embed.widescreen {
    padding-bottom: 58.75%;
    margin-bottom: 0;
    top: -8%; }

.darkimageback.splithero1 {
  overflow: hidden; }

.cvs-home-logo {
  width: 21vw;
  margin-top: 2vw; }

.ffl-infograph {
  position: absolute;
  bottom: 0;
  left: 5%;
  width: 90%; }

.fordfleetlive {
  position: relative; }

.fordfleetlive p {
  font-size: 0.8vw;
  margin-bottom: 0.75vw; }

.fordfleetlive h3 {
  color: #fff;
  font-family: 'FordAntennaCond-Bold';
  text-transform: uppercase;
  font-size: 2vw;
  line-height: 1;
  letter-spacing: 6px;
  margin-bottom: 0.75vw;
  width: 130%;
  margin-left: -15%;
  -webkit-transform: scaleX(0.7);
  -ms-transform: scaleX(0.7);
  transform: scaleX(0.7); }
  .fordfleetlive h3 span {
    color: #0075b6; }

.locate-upfitter {
  color: #fff; }
  .locate-upfitter p {
    font-size: 1.5vw; }
  .locate-upfitter .content-bucket img {
    max-width: 10%;
    padding-bottom: 1rem; }

.search-upfits {
  position: relative;
  overflow: hidden;
  height: inherit;
  color: #000000;
  padding: 2rem 1rem; }
  .search-upfits h3 {
    color: #000000;
    text-shadow: 0px 0px 15px white, 0px 0px 15px white, 0px 0px 10px white, 0px 0px 15px white, 0px 0px 15px white, 0px 0px 15px white; }
  .search-upfits p {
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
    text-shadow: 0px 0px 15px white, 0px 0px 15px white, 0px 0px 15px white, 0px 0px 15px white, 0px 0px 15px white, 0px 0px 15px white; }
    .search-upfits p .button {
      text-shadow: none; }

.locate-upfitter .background-img {
  background: #0075b6; }

.banner {
  /* this bit of markup is essential */
  position: relative;
  overflow: hidden; }

.banner__video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  min-width: 100%;
  height: auto;
  min-height: 100%;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  z-index: -1; }

.banner__image {
  z-index: 0 !important; }

.fleet-banner .banner__video, .commercial-banner .banner__video, .accessibility-banner .banner__video, .recreational-banner .banner__video {
  width: 100%;
  height: auto; }

.all-incentives .fleet-banner .banner__video, .all-incentives .commercial-banner .banner__video, .all-incentives .accessibility-banner .banner__video, .all-incentives .recreational-banner .banner__video {
  width: 112%;
  height: auto; }

.start-with-vehicle .banner__video, .garage-banner .banner__video {
  width: 100%;
  height: auto; }

.half-screen-vid.banner__video {
  max-width: 130%;
  background: #082a47; }

video::-webkit-media-text-track-container {
  display: none; }

.enroll-starter {
  padding: 2vw 3vw; }

.commercial-underline {
  border-bottom: 8px solid #ffffff; }

@media print, screen and (min-width: 40em) {
  .grid-margin-x > .cell.medium-9.splithero1 {
    margin-left: 0;
    width: calc(75% - 1rem); }
  .grid-margin-x > .cell.medium-3.fordfleetlive {
    margin-right: 0;
    width: calc(25% - 1rem); }
  .grid-margin-x.splithero {
    margin-left: 0;
    margin-right: 0; } }

.grid-padding-x > .cell.dark-back {
  background: #333333;
  padding: 3vw;
  color: #ffffff; }

.grid-padding-x > .cell.darkblue-back {
  background: #082a47;
  padding: 3vw;
  color: #ffffff; }

.grid-padding-x > .cell.dark-back {
  background: #333333;
  padding: 3vw;
  color: #ffffff; }

.grid-margin-x > .cell.darkimageback {
  padding: 1vw 2vw 0;
  color: #ffffff; }

.grid-padding-x > .cell.blueness-back, .cell.blueness-back {
  background: #0075b6;
  padding: 2vw;
  color: #ffffff;
  position: relative;
  overflow: hidden; }

.darkblue p {
  font-size: 1.2rem;
  padding: 0 2vw; }

.cell.blueness-back p {
  font-size: 1.2rem; }

.bottom-bump {
  margin-bottom: 2rem; }

.announce {
  font-size: 1.5rem; }

.enroll-reasons {
  border-bottom: 1rem solid #ffffff; }

.enroll-reasons h3 {
  font-size: 3rem; }

.announce-mug {
  font-size: 2.5rem !important;
  line-height: 1.3; }

.free-mug {
  position: relative;
  right: -5vw;
  bottom: -5vw;
  margin: 0 -5vw -5vw 0; }

.enroll-reasons .dark-back p {
  font-size: 1.5rem; }

.enroll-reasons .dark-back li {
  font-size: 1.25rem; }

.enroll-form legend {
  font-size: 2rem; }

.enroll-form fieldset {
  margin-bottom: 2rem; }

.accessory-section {
  background: #f7f7f7;
  margin-top: 1rem;
  padding-top: 2rem; }
  .accessory-section h3 {
    color: #0075b6; }
  .accessory-section h4 {
    text-transform: uppercase;
    font-size: 2vw;
    color: #0075b6;
    display: block;
    background: none;
    margin-top: 0;
    padding-top: 0; }
  .accessory-section .button.hollow.secondary {
    border: 0 solid #102b4e;
    color: #102b4e; }
    .accessory-section .button.hollow.secondary:hover, .accessory-section .button.hollow.secondary:active, .accessory-section .button.hollow.secondary.is-active {
      color: #fff;
      background-color: #082a47; }
  .accessory-section .accessories-list-holder {
    border: 2px solid #0075b6;
    background: #ffffff;
    padding: 2rem; }

.garage-banner .all-equation {
  width: 35%;
  margin: 1vw auto;
  display: inline-block;
  text-align: center; }
  .garage-banner .all-equation .eq-element {
    font-size: 1.2vw;
    color: #ffffff;
    text-shadow: 0px 3px 10px #000000, 0px 3px 10px #000000; }

.garage-banner .accordion.disclaimer .accordion-title {
  color: #ffffff;
  text-shadow: 0px 3px 10px #000000, 0px 3px 10px #000000; }

.light-gray-section {
  padding-top: 1.875rem;
  background-color: #f7f7f7; }

.content-bucket {
  padding: 2rem 1rem;
  overflow: hidden; }

/* customized form elements */
/* Customize the label (the container) */
.check-container {
  font-weight: normal;
  display: inline-block;
  position: relative;
  padding-left: 2.2vw;
  margin: 1rem 0.5rem 2rem;
  cursor: pointer;
  font-size: 1rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/* Hide the browser's default checkbox */
.check-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0; }
/*msaba*/
.pagination-next #next-page.lastItem{
	color: #aaa;
    cursor: default;
    background-color: transparent;
}
.pagination-previous #previous-page.firstItem{
	color: #aaa;
    cursor: default;
    background-color: transparent;
}
/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 1.5vw;
  width: 1.5vw;
  background-color: #082a47;
  border: 1px solid #ffffff; }

.certify-steps .checkmark {
  background-color: #ffffff;
  border: 1px solid #082a47; }

.is-invalid-label .checkmark {
  background-color: #f7e4e1;
  border: 1px solid #cc4b37; }

/* On mouse-over, add a grey background color */
.check-container:hover input ~ .checkmark, .check-container input:focus ~ .checkmark {
  background-color: #0075b6; }

/* When the checkbox is checked, add a blue background */
.check-container input:checked ~ .checkmark {
  background-color: #082a47; }

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none; }

/* Show the checkmark when checked */
.check-container input:checked ~ .checkmark:after {
  display: block; }

/* Style the checkmark/indicator */
.check-container .checkmark:after {
  left: 0.4vw;
  top: 0;
  width: 0.6vw;
  height: 1.2vw;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

/* Customize the label (the radio) */
.radio-container {
  font-weight: normal;
  display: inline-block;
  position: relative;
  padding-left: 2.2vw;
  margin: 1rem 0.5rem 2rem;
  cursor: pointer;
  font-size: 1rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/* Hide the browser's default checkbox */
.radio-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0; }

/* Create a custom checkbox */
.radio {
  position: absolute;
  top: 0;
  left: 0;
  height: 1.5vw;
  width: 1.5vw;
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 100px; }

.certify-steps .radio {
  background-color: #ffffff;
  border: 1px solid #082a47; }

.is-invalid-label .radio {
  background-color: #f7e4e1;
  border: 1px solid #cc4b37; }

/* On mouse-over, add a grey background color */
.radio-container:hover input ~ .radio, .radio-container input:focus ~ .radio {
  background-color: #082a47; }

/* When the checkbox is checked, add a blue background */
.radio-container input:checked ~ .radio {
  background-color: #082a47; }

/* Create the checkmark/indicator (hidden when not checked) */
.radio:after {
  content: "";
  position: absolute;
  display: none; }

/* Show the checkmark when checked */
.radio-container input:checked ~ .radio:after {
  display: block; }

/* Style the checkmark/indicator */
.radio-container .radio:after {
  left: 0;
  top: 0;
  width: 1.4vw;
  height: 1.4vw;
  background: #0075b6;
  border: solid white;
  border-radius: 100px;
  border-width: 3px 3px 3px 3px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

section:not(.banner) .button.large, section.banner .special-home-announce .button.large {
  padding: 1.1vw 4vw 1.3vw;
  font-size: 1.5vw; }
  section:not(.banner) .button.large:after, section.banner .special-home-announce .button.large:after {
    content: '';
    background: url(../../img/button-caret.png) no-repeat center center;
    width: 1vw;
    background-size: contain;
    display: inline-block;
    height: 1.65vw;
    position: relative;
    left: 1vw;
    top: 0.3vw; }
  section:not(.banner) .button.large.download:after, section.banner .special-home-announce .button.large.download:after {
    background-image: url(../../img/download-caret-white.png);
    width: 2vw; }

section.banner .button.large.speciallink {
  padding: 0.8vw 2vw 0.8vw;
  font-size: 1.1vw; }
  section.banner .button.large.speciallink:after {
    content: '';
    background: url(../../img/button-caret.png) no-repeat center center;
    width: 0.5vw;
    background-size: contain;
    display: inline-block;
    height: 1vw;
    position: relative;
    left: 1vw;
    top: 0.15vw; }

section:not(.banner) input.button.large, input.button.large {
  background: #0075b6 url(../../img/button-caret.png) no-repeat;
  background-position: right 3vw center;
  background-size: 0.75vw 1.65vw;
  padding: 1.2vw 5vw 1.2vw 4vw; }
  section:not(.banner) input.button.large:hover, section:not(.banner) input.button.large:focus, input.button.large:hover, input.button.large:focus {
    background-color: #005889; }

.button.hollow, .button.hollow:hover, .button.hollow:focus {
  background-color: #ffffff; }

section:not(.banner) .button.large.hollow:after, section.banner .special-home-announce .button.large.hollow:after {
  background-image: url(../../img/button-caret-blue.png); }

.button.small {
  font-size: 0.75rem;
  padding: 0.85em 3em; }

.button.small.hollow {
  border-width: 1px; }

.button.offsite-cta {
  color: #0075b6;
  background: #ffffff;
  font-size: 0.875vw;
  padding: 0.85vw 3vw 0.85vw 1vw; }
  .button.offsite-cta:after {
    content: '';
    background: url(../../img/offsite-caret.png) no-repeat center center;
    width: 1vw;
    background-size: contain;
    display: inline-block;
    height: 1.65vw;
    position: absolute;
    right: 0;
    top: 0.3vw; }

.special-home-announce {
  position: absolute;
  width: 100%;
  bottom: 1vw; }

.goto-directory {
  text-align: center;
  position: relative;
  top: 39%; }

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; }

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  -webkit-clip-path: none;
          clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */ }

.promotional-section {
  padding: 2rem 1rem 0; }

.footer-logo {
  padding-bottom: 1rem; }

.promo-row {
  padding-bottom: 2rem; }

.promo-tile {
  height: 27vw;
  overflow: hidden;
  position: relative; }
  .promo-tile a {
    display: block;
    height: 100%;
    -webkit-transition: background-color 300ms ease;
    transition: background-color 300ms ease; }
    .promo-tile a img {
      transition: -webkit-filter 300ms ease,filter 300ms ease; }
    .promo-tile a:hover, .promo-tile a:focus {
      background: rgba(16, 43, 78, 0.7); }
    .promo-tile a:hover img, .promo-tile a:focus img {
      -webkit-filter: grayscale(100%);
      /* Safari 6.0 - 9.0 */
      filter: grayscale(100%); }
    .promo-tile a:hover span, .promo-tile a:focus span {
      text-decoration: underline; }

.promo-tile2 {
  height: 21vw;
  overflow: hidden;
  position: relative;
  -webkit-transition: background-color 300ms ease;
  transition: background-color 300ms ease; }
  .promo-tile2 a {
    display: block;
    height: 100%; }
    .promo-tile2 a img {
      transition: -webkit-filter 300ms ease,filter 300ms ease; }
    .promo-tile2 a:hover, .promo-tile2 a:focus {
      background: rgba(16, 43, 78, 0.7); }
    .promo-tile2 a:hover img, .promo-tile2 a:focus img {
      -webkit-filter: grayscale(100%);
      /* Safari 6.0 - 9.0 */
      filter: grayscale(100%); }
    .promo-tile2 a:hover span, .promo-tile2 a:focus span {
      text-decoration: underline; }

.cvs-dealsthatdeliver {
  width: 45%; }

.promo__background {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  min-width: 101%;
  height: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  z-index: -1; }

.promo__background2 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  min-width: 101%;
  height: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  z-index: -1; }

.recreational-tile .promo__background {
  min-width: 120%; }

.fleet-tile .promo__background {
  min-width: 110%; }

.promo-cta {
  position: absolute;
  bottom: 0;
  text-align: right;
  width: 100%;
  padding: 0.1vw 1vw 0.3vw 0;
  right: 0;
  font-family: 'FordAntenna-Semibold', san-serif;
  font-size: 1.2vw;
  background: rgba(0, 0, 0, 0.75); }
  .promo-cta span {
    color: #ffffff;
    line-height: 39px;
    display: inline-block; }
    .promo-cta span:after {
      content: '';
      background: url(../../img/circle-caret.png) no-repeat center center;
      background-size: cover;
      display: inline-block;
      top: 0.5vw;
      width: 2vw;
      height: 2vw;
      margin-left: 1vw;
      position: relative; }

.gif-back.paused {
  display: none; }

.button.play-pause {
  position: absolute;
  width: 3vw;
  height: 3vw;
  padding: 0;
  margin: 0;
  top: 0.2vw;
  right: 0.2vw;
  background: none;
  opacity: 0.7;
  z-index: 20; }
  .button.play-pause:before {
    content: '';
    background: url(../../img/pause.png) no-repeat center center;
    background-size: cover;
    display: block;
    top: 8%;
    left: 8%;
    width: 84%;
    height: 84%;
    position: absolute;
    opacity: 1; }
  .button.play-pause:after {
    content: '';
    background: url(../../img/play.png) no-repeat center center;
    background-size: cover;
    display: block;
    top: 8%;
    left: 8%;
    width: 84%;
    height: 84%;
    position: absolute;
    opacity: 0; }

.button.play-pause.paused:before {
  opacity: 0; }

.button.play-pause.paused:after {
  opacity: 1; }

.cell.video-control {
  position: relative; }
  .cell.video-control .button.play-pause {
    right: 1.4vw; }

.equation {
  width: 100%;
  margin: 2vw auto;
  display: inline-block;
  text-align: center; }
  .equation .eq-element {
    display: inline-block;
    width: auto;
    font-size: 1.25vw;
    line-height: 1.5; }
    .equation .eq-element span {
      display: block;
      font-size: 5vw;
      line-height: 1; }
  .equation .eq-operator {
    display: inline-block;
    width: auto;
    padding: 0 1.5vw;
    color: #0075b6; }
    .equation .eq-operator span {
      border: 0;
      clip: rect(1px, 1px, 1px, 1px);
      -webkit-clip-path: inset(50%);
              clip-path: inset(50%);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute !important;
      width: 1px;
      word-wrap: normal !important; }
      .equation .eq-operator span:focus {
        background-color: #eee;
        clip: auto !important;
        -webkit-clip-path: none;
                clip-path: none;
        color: #444;
        display: block;
        font-size: 1em;
        height: auto;
        left: 5px;
        line-height: normal;
        padding: 15px 23px 14px;
        text-decoration: none;
        top: 5px;
        width: auto;
        z-index: 100000;
        /* Above WP toolbar. */ }
    .equation .eq-operator:after {
      content: '+';
      font-size: 5vw;
      line-height: 1;
      top: -2vw;
      position: relative; }
    .equation .eq-operator.or:after {
      content: 'OR';
      font-size: 3vw;
      line-height: 1;
      top: -2.5vw;
      position: relative;
      font-family: 'FordAntenna-Bold'; }

.garage-cta p {
  font-size: 1.3vw;
  padding: 1rem 4vw 0; }

.light-section.incentive-math {
  background: #ffffff; }

.best-in-class-section {
  background: #0075b6; }
  .best-in-class-section p {
    display: inline-block;
    vertical-align: text-top;
    font-size: 1.2rem;
    line-height: 1.6;
    color: #ffffff; }

.best-in-class {
  display: inline-block;
  text-align: center;
  width: 100%; }
  .best-in-class li.bic-element {
    display: inline-block;
    vertical-align: text-top;
    padding: 1rem 4vw;
    color: #ffffff;
    font-size: 1.3vw; }

.secondary-cta-section {
  border-bottom: 1rem solid #ffffff; }
  .secondary-cta-section .promo__background {
    min-width: 115%;
    left: 57%; }
  .secondary-cta-section .promo__background2 {
    min-width: 115%;
    left: 50%; }
  .secondary-cta-section h3 {
    margin: 10px auto;
    display: table;
    padding: 0.25vw 10vw;
    background: #082a47; }
  .secondary-cta-section .cell {
    overflow: hidden;
    position: relative; }

.calls-to-action {
  display: inline-block;
  text-align: center;
  width: 100%;
  padding: 3rem 0; }
  .calls-to-action li.cta-element {
    display: inline-block;
    vertical-align: text-top;
    padding: 0 1vw;
    color: #ffffff; }

.upfit-options-section {
  background: #f7f7f7;
  padding-bottom: 2rem; }
  .upfit-options-section .content-bucket {
    padding: 1.5vw 0 0; }
  .upfit-options-section .tabs {
    border-width: 0; }
  .upfit-options-section .tabs-title {
    float: none !important;
    display: inline-block;
    padding: 0.5%;
    width: 24%; }
    .upfit-options-section .tabs-title > a {
      font-size: 1.2vw;
      text-transform: capitalize;
      background-color: #0075b6;
      color: #ffffff;
      font-family: 'FordAntenna-Light', san-serif;
      padding: 1.25rem 1vw; }
      .upfit-options-section .tabs-title > a:focus, .upfit-options-section .tabs-title > a[aria-selected='true'] {
        background: #37a9e8;
        color: #000000;
        border-color: #000000; }
  .upfit-options-section .tabs-content {
    border-top: 0;
    color: #ffffff;
    position: relative;
    border-width: 0; }
    .upfit-options-section .tabs-content .upfit-slice {
      background: #333333;
      margin-right: -1rem;
      margin-left: -1rem;
      border-bottom: 1rem solid #ffffff; }
    .upfit-options-section .tabs-content p {
      font-size: 1.25vw; }
    .upfit-options-section .tabs-content .tabs-panel {
      position: relative;
      padding-bottom: 2rem;
      -webkit-transition: left 500ms ease;
      transition: left 500ms ease;
      -webkit-transition-delay: 1s;
              transition-delay: 1s;
      left: 100%; }
      .upfit-options-section .tabs-content .tabs-panel.is-active {
        left: 0; }
      .upfit-options-section .tabs-content .tabs-panel li {
        padding-bottom: 0.5rem; }
  .upfit-options-section .tab-gallery-hero {
    color: #fff;
    height: 22vw;
    border-bottom: 8px solid #0075b6; }
    .upfit-options-section .tab-gallery-hero .content-bucket {
      background: #082a47;
      position: relative; }
    .upfit-options-section .tab-gallery-hero p {
      text-align: left;
      font-size: 1.75vw;
      padding: 1vw 4vw;
      font-family: 'FordAntenna-Light', san-serif; }
      .upfit-options-section .tab-gallery-hero p:before {
        content: '';
        background: url(../../img/gallery-caret.png) no-repeat center center;
        background-size: contain;
        display: inline-block;
        width: 4vw;
        height: 2.852vw;
        margin-left: -4.1vw;
        top: 0.4vw;
        position: relative;
        -webkit-transition: -webkit-transform 300ms ease;
        transition: -webkit-transform 300ms ease;
        transition: transform 300ms ease;
        transition: transform 300ms ease, -webkit-transform 300ms ease; }
    .upfit-options-section .tab-gallery-hero .gallery-cta-holder {
      position: absolute;
      bottom: 1.5vw;
      padding-left: 4vw;
      width: calc(100% - 4vw); }
    .upfit-options-section .tab-gallery-hero .gallery-cta {
      text-align: right;
      padding: 0.1vw 1vw 0.3vw 0;
      right: 0;
      font-family: 'FordAntenna-Semibold', san-serif;
      font-size: 1.2vw;
      background: rgba(0, 0, 0, 0); }
      .upfit-options-section .tab-gallery-hero .gallery-cta span {
        color: #ffffff;
        line-height: 39px;
        display: inline-block; }
        .upfit-options-section .tab-gallery-hero .gallery-cta span:after {
          content: '';
          background: url(../../img/circle-caret.png) no-repeat center center;
          background-size: cover;
          display: inline-block;
          top: 0.5vw;
          width: 2vw;
          height: 2vw;
          margin-left: 1vw;
          position: relative; }
      .upfit-options-section .tab-gallery-hero .gallery-cta:hover span {
        text-decoration: underline; }
    .upfit-options-section .tab-gallery-hero .off {
      display: none; }
    .upfit-options-section .tab-gallery-hero .background-img {
      position: relative;
      overflow: hidden;
      height: inherit;
      border-bottom: 8px solid #0075b6; }
      .upfit-options-section .tab-gallery-hero .background-img .promo__background {
        position: absolute;
        top: 50%;
        left: 50%;
        width: auto;
        min-width: 101%;
        height: auto;
        -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
        z-index: 0; }
    .upfit-options-section .tab-gallery-hero.motor-section-line {
      border-color: #0075b6; }
      .upfit-options-section .tab-gallery-hero.motor-section-line .background-img {
        border-color: #0075b6; }
    .upfit-options-section .tab-gallery-hero.fleet-section-line {
      border-color: #0075b6; }
      .upfit-options-section .tab-gallery-hero.fleet-section-line .background-img {
        border-color: #0075b6; }

.upfit-gallery-section .tabs-content {
  border: 0 solid #f7f7f7;
  background: none;
  color: #ffffff; }

.upfit-gallery-section .content-holder {
  padding: 2rem 0; }

.upfit-gallery-section .photogrid .cell {
  padding: 0.5vw; }
  .upfit-gallery-section .photogrid .cell.off {
    display: none; }

.photogrid {
  width: 100%;
  margin: 0 !important; }

p.commercial-cup {
  display: none;
  color: #ffffff;
  font-size: 2vw;
  line-height: 1.3;
  text-transform: uppercase;
  position: absolute;
  top: 30vh;
  margin-left: 1vw;
  text-shadow: 0px 3px 10px #000000,0px 3px 10px #000000; }
  p.commercial-cup img {
    position: absolute;
    top: -8vh;
    left: 18vw;
    width: 11vw;
    max-width: 200px; }

.intro-cta label {
  text-shadow: 0px 0px 10px #000000,0px 0px 10px #000000; }

.program-intro {
  color: #ffffff;
  background: #082a47;
  border-bottom: 1rem solid #ffffff; }
  .program-intro p {
    font-size: 1.2rem;
    line-height: 1.6; }
    .program-intro p span {
      color: #0075b6;
      font-family: 'FordAntenna-Bold', san-serif; }
  .program-intro h4 {
    padding: 0 0 1.1vw 0;
    margin: 1.2vw 0 0 0;
    display: block;
    font-size: 1.8rem; }

.program-intro-rec {
  color: #000000;
  background: #ffffff;
  border-bottom: 1rem solid #ffffff; }

.vehicle-types-section {
  background: #f7f7f7;
  color: #000000;
  border-bottom: 1rem solid #ffffff; }
  .vehicle-types-section h2 {
    font-size: 1rem;
    color: #000000;
    text-align: center;
    background: #ffffff;
    width: 100%;
    padding: 2rem 0; }
  .vehicle-types-section h3 {
    color: #000000;
    text-align: center;
    padding: 1rem 0 0; }
  .vehicle-types-section a {
    display: block;
    height: 100%;
    padding-bottom: 1rem; }
    .vehicle-types-section a span {
      display: inline-block;
      padding-top: 1rem; }
    .vehicle-types-section a img {
      transition: -webkit-filter 300ms ease,filter 300ms ease; }
    .vehicle-types-section a:hover img, .vehicle-types-section a:focus img {
      -webkit-filter: grayscale(100%);
      /* Safari 6.0 - 9.0 */
      filter: grayscale(100%); }
    .vehicle-types-section a:hover span, .vehicle-types-section a:focus span {
      text-decoration: underline; }

.blue-back {
  background: #0075b6; }
  .blue-back h3 {
    color: #fff;
    text-align: center; }
  .blue-back a {
    color: #ffffff; }

.all-incentives {
  border-bottom: 1rem solid #ffffff; }
  .all-incentives a {
    display: block;
    height: 100%; }
    .all-incentives a .all-incentive-video {
      -webkit-transition: background-color 300ms ease;
      transition: background-color 300ms ease;
      background: rgba(16, 43, 78, 0); }
    .all-incentives a video {
      transition: -webkit-filter 300ms ease,filter 300ms ease; }
    .all-incentives a:hover .all-incentive-video, .all-incentives a:focus .all-incentive-video {
      background-color: rgba(16, 43, 78, 0.7); }
    .all-incentives a:hover video, .all-incentives a:focus video, .all-incentives a:hover img, .all-incentives a:focus img {
      -webkit-filter: grayscale(100%);
      /* Safari 6.0 - 9.0 */
      filter: grayscale(100%); }

.all-incentive-video {
  height: 26.25vw;
  overflow: hidden;
  position: relative;
  border-bottom: 8px solid #0075b6; }
  .all-incentive-video h2 {
    font-size: 2.5vw;
    text-align: center;
    padding: 0.75vw 0;
    text-shadow: 0px 0px 10px #000000,0px 0px 10px #000000;
    background: #082a47; }

.all-incentive-math h3 {
  font-size: 1.25vw; }

.all-equation {
  width: 100%;
  margin: 1vw auto;
  display: inline-block;
  text-align: center; }
  .all-equation .eq-element {
    display: inline-block;
    width: auto;
    font-size: 1vw;
    line-height: 1.5;
    color: #000000; }
    .all-equation .eq-element span {
      display: block;
      font-size: 2.5vw;
      line-height: 1; }
  .all-equation .eq-operator {
    display: inline-block;
    width: auto;
    padding: 0 0.75vw;
    color: #0075b6; }
    .all-equation .eq-operator span {
      border: 0;
      clip: rect(1px, 1px, 1px, 1px);
      -webkit-clip-path: inset(50%);
              clip-path: inset(50%);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute !important;
      width: 1px;
      word-wrap: normal !important; }
      .all-equation .eq-operator span:focus {
        background-color: #eee;
        clip: auto !important;
        -webkit-clip-path: none;
                clip-path: none;
        color: #444;
        display: block;
        font-size: 1em;
        height: auto;
        left: 5px;
        line-height: normal;
        padding: 7px 12px 7px;
        text-decoration: none;
        top: 2px;
        width: auto;
        z-index: 100000;
        /* Above WP toolbar. */ }
    .all-equation .eq-operator:after {
      content: '+';
      font-size: 2.5vw;
      line-height: 1;
      top: -1.5vw;
      position: relative; }
    .all-equation .eq-operator.or:after {
      content: 'OR';
      font-size: 1.25vw;
      line-height: 1;
      top: -1.75vw;
      position: relative;
      font-family: 'FordAntenna-Bold'; }

.incentive-closer {
  text-align: center;
  padding: 5vw; }
  .incentive-closer img {
    padding-top: 4vw; }

.reference-guides {
  padding-top: 0;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 100rem;
  margin: 0 auto; }
  .reference-guides .cell {
    padding: 1vw; }
  .reference-guides h1 {
    color: #000000;
    font-size: 2.8rem;
    line-height: 1;
    margin-left: 0;
    text-shadow: none;
    text-align: center;
    margin-bottom: 2rem;
    background: none;
    padding: 0; }
    .reference-guides h1 span {
      font-size: 1.3rem; }
  .reference-guides h2 {
    color: #000000;
    font-size: 1.75rem;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none;
    margin-bottom: 0; }
  .reference-guides h3 {
    color: #000000;
    font-family: 'FordAntenna-Bold', san-serif;
    font-size: 1.2rem;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none; }
  .reference-guides a {
    display: block;
    padding: 1vw 1vw 0;
    border: 2px solid rgba(255, 255, 255, 0); }
    .reference-guides a:hover {
      border: 2px solid #0075b6; }
    .reference-guides a img {
      margin-bottom: 2rem; }

.key-benefits {
  padding-top: 0;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 100rem;
  margin: 0 auto; }
  .key-benefits .cell {
    padding: 1vw; }
  .key-benefits h1 {
    color: #000000;
    font-size: 5.8vw;
    line-height: 1;
    margin-left: 0;
    text-shadow: none;
    text-align: center;
    margin-bottom: 2rem;
    background: none;
    padding: 0; }
  .key-benefits h2 {
    color: #000000;
    font-size: 1.75vw;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none;
    margin-bottom: 0; }
  .key-benefits h3 {
    color: #000000;
    font-family: 'FordAntenna-Bold', san-serif;
    font-size: 1.2rem;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none; }
  .key-benefits a {
    padding: 1vw 1vw 0;
    border: 2px solid rgba(255, 255, 255, 0); }
    .key-benefits a:hover {
      border: 2px solid #0075b6; }
    .key-benefits a img {
      margin-bottom: 2rem; }

.garage {
  margin: 0 auto 2rem;
  background: #f7f7f7; }
  .garage.vehicle-select {
    padding-top: 2vw;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
  .garage .cell {
    padding: 1vw; }
    .garage .cell.filter-cart {
      padding: 0; }
      .garage .cell.filter-cart .button-group {
        margin-bottom: 0; }
        .garage .cell.filter-cart .button-group .button {
          border: 3px solid #0776B6;
          line-height: 6vw; }
          .garage .cell.filter-cart .button-group .button img {
            width: 6vw;
            margin-left: 2vw; }
  .garage .detail-icon-shape {
    width: 25px;
    height: 25px;
    display: block;
    position: absolute;
    top: 3vh;
    right: 3vh;
    z-index: 2;
    cursor: pointer;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    background-image: url(../../img/close-icon.png);
    background-repeat: no-repeat; }
  .garage h1 {
    color: #000000;
    font-size: 2.8vw;
    line-height: 1;
    margin-left: 0;
    text-shadow: none;
    text-align: center;
    margin-bottom: 2rem; }
  .garage.vehicle-select.light-section h1 {
    background: none; }
  .garage h2 {
    color: #000000;
    font-size: 1.75rem;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none;
    margin-bottom: 0; }
  .garage h3 {
    color: #000000;
    font-family: 'FordAntenna-Bold', san-serif;
    font-size: 1.2rem;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none; }
  .garage h4 {
    font-family: 'FordAntenna-Light', san-serif;
    position: relative;
    font-size: 2.1vw;
    line-height: 1.1;
    color: #ffffff;
    margin: 2.68vw 0 0 1.1vw;
    padding: 1.1vw;
    background: none;
    display: inline; }
  .garage a.vehicle-select-item {
    display: block;
    padding: 1vw 1vw 0;
    border: 2px solid #ffffff;
    background: #ffffff;
    border: 2px solid #cacaca; }
    .garage a.vehicle-select-item:hover {
      border: 2px solid #0075b6; }
    .garage a.vehicle-select-item.active {
      border: 2px solid #0075b6;
      /* background:$medium-gray;  */ }
    .garage a.vehicle-select-item img {
      margin-bottom: 2rem;
      width: 50%; }
  .garage .filter-container {
    border-bottom: 1px solid #ffffff;
    margin-bottom: 2rem; }
    .garage .filter-container h2 {
      color: #ffffff;
      margin-bottom: 1rem; }
    .garage .filter-container .radio-container {
      padding-left: 2.2vw;
      margin: 0;
      font-size: 0.875rem;
      color: #ffffff;
      line-height: 1.3; }
    .garage .filter-container fieldset {
      padding-bottom: 2rem; }
    .garage .filter-container .cell {
      padding: 0.5rem 0; }
  .garage .cart-container {
    border-bottom: 1px solid #ffffff;
    margin-bottom: 2rem;
    padding-bottom: 2rem; }
    .garage .cart-container h2 {
      color: #ffffff;
      margin-bottom: 1rem; }
    .garage .cart-container .callout.cart-item {
      padding: 0; }
      .garage .cart-container .callout.cart-item .cell {
        padding: 0; }
      .garage .cart-container .callout.cart-item dl {
        margin: 0;
        padding: 1.3rem;
        border-left: 1px solid #cacaca; }
      .garage .cart-container .callout.cart-item dt {
        font-size: 0.85rem;
        color: #0075b6; }
      .garage .cart-container .callout.cart-item dd {
        font-size: 0.75rem;
        color: #000000; }
      .garage .cart-container .callout.cart-item img {
        padding: 0.5rem; }
    .garage .cart-container .close-button {
      right: 0.5rem;
      top: 20%;
      font-size: 3em;
      line-height: 1;
      color: #0075b6; }
  .garage .saved-configs {
    border-bottom: 1px solid #ffffff;
    margin-bottom: 2rem;
    padding-bottom: 2rem; }
    .garage .saved-configs h2 {
      color: #ffffff;
      margin-bottom: 1rem; }
    .garage .saved-configs .saved-sessions li {
      position: relative; }
      .garage .saved-configs .saved-sessions li .close-button {
        right: 1rem;
        top: -0.3rem;
        font-size: 2em;
        line-height: 1;
        color: #ffffff; }
    .garage .saved-configs .saved-sessions a {
      color: #ffffff;
      text-decoration: underline; }
      .garage .saved-configs .saved-sessions a:hover, .garage .saved-configs .saved-sessions a:focus {
        text-decoration: none; }
  .garage .cell.main-garage-shop {
    padding: 2rem 1rem;
    margin: 0; }
    .garage .cell.main-garage-shop .garage-shop-item-holder {
      position: relative; }
    .garage .cell.main-garage-shop .garage-shop-item {
      display: block;
      padding: 0;
      border: 2px solid #ffffff;
      background: #ffffff;
      border: 2px solid #cacaca;
      position: relative;
      z-index: 0;
      width: 100%;
      left: 0;
      top: 0;
      -webkit-transition: all 300ms ease;
      transition: all 300ms ease; }
      .garage .cell.main-garage-shop .garage-shop-item.active {
        border: 2px solid #0075b6;
        background: #cacaca; }
      .garage .cell.main-garage-shop .garage-shop-item .shop-item-image {
        border-bottom: 1px solid #cacaca; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-image img {
          margin: 0 auto;
          display: block;
          width: 150px; }
      .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc {
        padding: 1rem; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc h3 {
          color: #0075b6;
          font-size: 1rem;
          text-align: center;
          padding: 0 1rem 0.5rem;
          text-transform: none;
          font-family: 'FordAntenna-Medium', san-serif; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc h4 {
          color: #0075b6;
          font-size: 1rem;
          text-align: center;
          padding: 0 1rem 0.5rem;
          text-transform: none;
          line-height: 1.3;
          margin: 0;
          margin-bottom: 0.5rem;
          display: block;
          font-family: 'FordAntenna-Medium', san-serif; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc p {
          font-size: 0.875rem; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc .upfitter-logo {
          text-align: center; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc .accordion.disclaimer .accordion-title {
          font-size: 0.75rem; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc ol li {
          font-size: 0.75rem; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc .shop-info {
          padding: 0.85em 2em; }
          .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc .shop-info:after {
            content: '';
            background: url(../../img/accordion-caret.png) no-repeat center center;
            background-size: contain;
            display: inline-block;
            width: 1.211vw;
            height: 0.5vw;
            margin-left: 0.5rem;
            top: 0;
            position: relative; }
          .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc .shop-info.is-active:after {
            -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc table td {
          font-size: 0.875rem; }
        .garage .cell.main-garage-shop .garage-shop-item .shop-item-desc table tfoot {
          color: #082a47; }
      .garage .cell.main-garage-shop .garage-shop-item.popout {
        z-index: 2;
        width: 120%;
        left: -10%;
        top: -2rem;
        -webkit-box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.75);
        box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.75); }
        .garage .cell.main-garage-shop .garage-shop-item.popout .shop-item-image {
          border-bottom: 1px solid #cacaca; }
  .garage .top-garage-detail {
    display: inline-block;
    width: 100%;
    text-align: center; }
    .garage .top-garage-detail img {
      max-width: 300px; }
  .garage table:not(.garage-sub-total) {
    margin-bottom: 0;
    min-width: 670px;
    width: 100%; }
  .garage thead {
    background: #082a47;
    color: #ffffff; }
    .garage thead td {
      text-align: center;
      vertical-align: middle;
      padding: 1rem 2rem 1.125rem;
      text-transform: uppercase; }
      .garage thead td:first-child {
        text-align: left;
        width: 25%; }
  .garage tbody td {
    text-align: center;
    vertical-align: middle;
    padding: 1rem 2rem 1.125rem; }
    .garage tbody td ul {
      margin-bottom: 0;
      font-size: 0.75rem; }
    .garage tbody td .button {
      margin: 5px; }
    .garage tbody td:first-child {
      text-align: left;
      border-right: 1px solid #f7f7f7; }
    .garage tbody td.buttons {
      text-align: center; }
    .garage tbody td input[type=number] {
      width: 60px;
      margin: 0 auto; }
    .garage tbody td .remove-item {
      font-size: 3rem;
      color: #0075b6; }
  .garage .garage-sub-total {
    font-size: 0.825rem;
    text-transform: uppercase; }
    .garage .garage-sub-total tbody {
      border-width: 0; }
    .garage .garage-sub-total tfoot {
      border-width: 1px 0 0 0;
      border-color: #cacaca;
      color: #0075b6; }
    .garage .garage-sub-total tr {
      border-width: 0; }
    .garage .garage-sub-total td {
      padding: 0.6rem 1rem 0.625rem; }
  .garage .send-to-dealer {
    color: #ffffff;
    background: #102b4e;
    padding: 2rem 0 0; }
    .garage .send-to-dealer h3 {
      font-family: 'FordAntenna-Light', san-serif;
      text-transform: uppercase;
      font-size: 2.5vw;
      color: #ffffff; }
    .garage .send-to-dealer label, .garage .send-to-dealer .help-text {
      color: #ffffff; }
    .garage .send-to-dealer .dealer-search-call {
      padding: 0; }
      .garage .send-to-dealer .dealer-search-call dt {
        font-size: 0.75rem;
        color: #0075b6; }
      .garage .send-to-dealer .dealer-search-call dd {
        font-size: 0.75rem;
        color: #000000; }
      .garage .send-to-dealer .dealer-search-call .check-container {
        font-weight: normal;
        display: inline-block;
        position: relative;
        padding: 1rem;
        width: 100%;
        margin: 0;
        cursor: pointer;
        font-size: 1rem;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none; }
      .garage .send-to-dealer .dealer-search-call .checkmark {
        position: absolute;
        top: auto;
        bottom: 0.5rem;
        right: 0.5rem;
        left: auto;
        height: 1.5vw;
        width: 1.5vw;
        background-color: #ffffff;
        border: 1px solid #0075b6; }
      .garage .send-to-dealer .dealer-search-call .check-container .checkmark:after {
        left: 0.4vw;
        top: 0;
        width: 0.6vw;
        height: 1.2vw;
        border: solid #0075b6;
        border-width: 0 3px 3px 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg); }

.acc-cart {
  position: absolute;
  right: 0; }

button.trigger.button.secondary.hollow.expanded {
  padding-top: 2rem; }

.dealer-form-response {
  font-size: 2vw;
  text-align: center;
  padding: 3vw 0; }

body.find-an-upfitter.locator {
  overflow: hidden; }

.find-upfitter {
  margin: 0 auto;
  background: #f7f7f7;
  overflow: hidden;
  height: calc(100vh - 5.29689963215975vw); }
  .find-upfitter .aside {
    height: calc(100vh - 5.29689963215975vw);
    overflow-x: auto;
    margin: 0 !important; }
    .find-upfitter .aside h1 {
      color: #ffffff;
      font-size: 1.65vw;
      padding: 0;
      text-align: left; }
  .find-upfitter .accordion.filter .accordion-title {
    font-size: 1.4vw; }
  .find-upfitter .grid-x > .filterbar {
    width: 20%; }
  .find-upfitter .grid-x > .filtercards {
    width: 20%; }
  .find-upfitter .grid-x > .filtermap {
    width: 60%; }
  .find-upfitter .cell {
    padding: 1vw; }
    .find-upfitter .cell.filter-column {
      padding: 0; }
      .find-upfitter .cell.filter-column.filter-active {
        padding: 1vw; }
  .find-upfitter #map-container {
    padding: 0;
    position: relative; }
  .find-upfitter #map {
    height: calc(100vh - 5.29689963215975vw); }
  .find-upfitter .location-list {
    height: calc(100vh - 5.29689963215975vw);
    overflow-x: auto;
    margin: 0 !important;
    background: #ffffff;
    padding: 0; }
    .find-upfitter .location-list .card {
      background: #ffffff;
      border: 1px solid #f7f7f7;
      font-size: 1rem;
      font-family: "FordAntenna-Light", sans-serif;
      margin-bottom: 0; }
      .find-upfitter .location-list .card .card-section {
        padding: 0.5rem; }
      .find-upfitter .location-list .card p {
        font-size: 1vw;
        line-height: 1.5;
        margin-bottom: 0.5rem; }
      .find-upfitter .location-list .card strong {
        color: #0075b6;
        font-family: "FordAntenna-Medium", sans-serif;
        font-weight: normal; }
      .find-upfitter .location-list .card .button {
        font-size: 0.85vw;
        padding: 0.65vw 0.5vw 0.5vw 0.5vw;
        margin-bottom: 0; }
      .find-upfitter .location-list .card .offsite-cta {
        position: relative;
        display: inline-block;
        bottom: 0;
        text-align: right;
        width: auto;
        padding: 0.65vw 1.4vw 0.5vw 0.5vw;
        font-size: 0.85vw;
        background: none; }
        .find-upfitter .location-list .card .offsite-cta:after {
          width: 1vw;
          height: 2vw;
          right: 0;
          top: 0; }
        .find-upfitter .location-list .card .offsite-cta:hover, .find-upfitter .location-list .card .offsite-cta:focus {
          text-decoration: underline; }
      .find-upfitter .location-list .card em {
        font-style: normal;
        line-height: inherit;
        font-family: "FordAntenna-Bold", sans-serif; }
      .find-upfitter .location-list .card.is-active {
        border: 2px solid #0075b6;
        background-color: #cacaca; }
        .find-upfitter .location-list .card.is-active strong {
          color: #082a47; }
        .find-upfitter .location-list .card.is-active .offsite-cta {
          color: #082a47; }
  .find-upfitter h1 {
    color: #000000;
    font-size: 2.8vw;
    line-height: 1;
    margin-left: 0;
    text-shadow: none;
    text-align: center;
    margin-bottom: 2rem; }
  .find-upfitter h2 {
    color: #000000;
    font-size: 1.75vw;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none;
    margin-bottom: 0; }
  .find-upfitter h3 {
    color: #000000;
    font-family: 'FordAntenna-Bold', san-serif;
    font-size: 1.2rem;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none; }
  .find-upfitter h4 {
    font-family: 'FordAntenna-Light', san-serif;
    position: relative;
    font-size: 2.1vw;
    line-height: 1.1;
    color: #ffffff;
    margin: 2.68vw 0 0 1.1vw;
    padding: 1.1vw;
    background: none;
    display: inline; }
  .find-upfitter .detail-icon-shape {
    width: 25px;
    height: 25px;
    display: block;
    position: absolute;
    top: 3vh;
    right: 3vh;
    z-index: 2;
    cursor: pointer;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    background-image: url(../../img/close-icon.png);
    background-repeat: no-repeat; }
  .find-upfitter .primary-info.dark-section {
    background: #082a47;
    margin: -1rem -1rem 1rem;
    padding: 2rem;
    color: #ffffff; }
    .find-upfitter .primary-info.dark-section h3 {
      color: #ffffff;
      text-align: center;
      font-size: 2rem;
      margin-bottom: 1.3rem; }
    .find-upfitter .primary-info.dark-section .primary-deets {
      color: #ffffff;
      text-align: center;
      font-size: 1.3rem;
      margin-bottom: 1.3rem; }
    .find-upfitter .primary-info.dark-section a {
      color: #ffffff;
      text-decoration: underline; }
    .find-upfitter .primary-info.dark-section .upfitter-logo {
      text-align: center;
      background: white;
      padding: 1rem;
      margin-bottom: 0.5rem;
      display: table;
      width: 100%; }
      .find-upfitter .primary-info.dark-section .upfitter-logo .logo-holder {
        display: table-cell;
        vertical-align: middle; }
        .find-upfitter .primary-info.dark-section .upfitter-logo .logo-holder img {
          max-height: 96px !important; }
    .find-upfitter .primary-info.dark-section .upfitter-deet-title {
      text-align: center;
      font-size: 0.75rem; }
  .find-upfitter .secondary-info {
    margin: -1rem -1rem 1rem;
    padding: 2rem;
    border-bottom: 1px solid #cacaca; }
    .find-upfitter .secondary-info dd {
      font-size: 0.85rem; }
    .find-upfitter .secondary-info li, .find-upfitter .secondary-info p {
      font-size: 0.85rem; }
      .find-upfitter .secondary-info li.cell, .find-upfitter .secondary-info p.cell {
        padding: 0 1vw;
        margin: 0; }
  .find-upfitter .secondary-info.gray-section {
    background: #f7f7f7; }
  .find-upfitter .check-container {
    font-weight: normal;
    display: inline-block;
    position: relative;
    padding-left: 2.2vw;
    margin: 0.5rem 0;
    cursor: pointer;
    font-size: 0.875vw;
    width: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #ffffff; }
  .find-upfitter .map-label-link {
    text-transform: uppercase; }
  .find-upfitter .gm-style .gm-style-iw-d p {
    margin-bottom: 0; }
  .find-upfitter .gm-style .gm-style-iw-c {
    border-radius: 0; }
  .find-upfitter .filter-container {
    margin-bottom: 0;
    margin-top: 1.5vw; }
    .find-upfitter .filter-container h2 {
      color: #ffffff;
      margin-bottom: 1rem; }
    .find-upfitter .filter-container .radio-container {
      padding-left: 2.2vw;
      margin: 0;
      font-size: 0.875rem;
      color: #ffffff;
      line-height: 1.3; }
    .find-upfitter .filter-container fieldset {
      padding-bottom: 0; }
    .find-upfitter .filter-container .cell {
      padding: 0.5rem 0; }
    .find-upfitter .filter-container .input-group-button {
      padding-left: 5px; }
      .find-upfitter .filter-container .input-group-button img.search-location {
        width: 2vw; }
      .find-upfitter .filter-container .input-group-button .button.hollow {
        padding: 0.2em 0.4em;
        border-width: 1px; }
        .find-upfitter .filter-container .input-group-button .button.hollow:hover, .find-upfitter .filter-container .input-group-button .button.hollowfocus {
          background-color: #cacaca; }
    .find-upfitter .filter-container .filtersection {
      font-weight: normal;
      display: inline-block;
      position: relative;
      padding-left: 2.2vw;
      margin: 0.5rem 0;
      cursor: pointer;
      font-size: 1vw;
      width: 100%;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      color: #ffffff; }
    .find-upfitter .filter-container .more-button {
      position: absolute;
      top: 0;
      left: 0;
      height: 1.5vw;
      width: 1.5vw;
      border-radius: 33px;
      background: #ffffff; }
      .find-upfitter .filter-container .more-button:before {
        content: '';
        height: 1vw;
        border-left: 2px solid #0075b6;
        position: absolute;
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        left: 0.7vw;
        top: 0.25vw;
        -webkit-transition: -webkit-transform 300ms ease;
        transition: -webkit-transform 300ms ease;
        transition: transform 300ms ease;
        transition: transform 300ms ease, -webkit-transform 300ms ease; }
      .find-upfitter .filter-container .more-button.closed:before {
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg); }
      .find-upfitter .filter-container .more-button:after {
        content: '';
        height: 1vw;
        border-left: 2px solid #0075b6;
        position: absolute;
        -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
                transform: rotate(90deg);
        left: 0.7vw;
        top: 0.25vw;
        -webkit-transition: -webkit-transform 300ms ease;
        transition: -webkit-transform 300ms ease;
        transition: transform 300ms ease;
        transition: transform 300ms ease, -webkit-transform 300ms ease; }
      .find-upfitter .filter-container .more-button.closed:after {
        -webkit-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
                transform: rotate(0deg); }
  .find-upfitter .card-summary {
    background: #082a47; }
    .find-upfitter .card-summary .check-container {
      padding-left: 1.4vw;
      margin: 0.5rem 0 0.5rem 0.5rem;
      font-size: 0.65vw; }
      .find-upfitter .card-summary .check-container .checkmark {
        height: 1vw;
        width: 1vw; }
        .find-upfitter .card-summary .check-container .checkmark:after {
          left: 0.2vw;
          top: 0;
          width: 0.4vw;
          height: 0.75vw; }
    .find-upfitter .card-summary .pagination {
      margin-left: 0;
      margin-bottom: 0; }
    .find-upfitter .card-summary .pagination .current {
      padding: 0 0.125rem;
      margin: 0.5rem 0 0.5rem 0.5rem;
      background: none;
      font-size: 1vw; }
    .find-upfitter .card-summary .pagination .disabled {
      padding: 0.1875rem 0.25rem; }
    .find-upfitter .card-summary .pagination li {
      margin-right: 0.0625rem;
      font-size: 1vw; }
    .find-upfitter .card-summary .pagination a, .find-upfitter .card-summary .pagination button {
      padding: 0.1875rem 0.25rem;
      color: #ffffff; }
    .find-upfitter .card-summary .pagination a:hover, .find-upfitter .card-summary .pagination button:hover {
      background: #0075b6; }
    .find-upfitter .card-summary .cell {
      padding: 0.25vw 1vw; }
  .find-upfitter table:not(.garage-sub-total) {
    margin-bottom: 0;
    min-width: 670px;
    width: 100%; }
  .find-upfitter thead {
    background: #082a47;
    color: #ffffff; }
    .find-upfitter thead td {
      text-align: center;
      vertical-align: middle;
      padding: 1rem 2rem 1.125rem;
      text-transform: uppercase; }
      .find-upfitter thead td:first-child {
        text-align: left;
        width: 25%; }
  .find-upfitter tbody td {
    text-align: center;
    vertical-align: middle;
    padding: 1rem 2rem 1.125rem; }
    .find-upfitter tbody td ul {
      margin-bottom: 0;
      font-size: 0.75rem; }
    .find-upfitter tbody td .button {
      margin: 5px; }
    .find-upfitter tbody td:first-child {
      text-align: left;
      border-right: 1px solid #f7f7f7; }
    .find-upfitter tbody td.buttons {
      text-align: center; }
    .find-upfitter tbody td input[type=number] {
      width: 60px;
      margin: 0 auto; }
    .find-upfitter tbody td .remove-item {
      font-size: 2rem;
      color: #0075b6; }
  .find-upfitter .upfitter-thumb {
    position: relative;
    width: calc(23.5vw - 2rem);
    height: calc(23.5vw - 2rem);
    overflow: hidden; }
    .find-upfitter .upfitter-thumb img {
      position: absolute;
      left: 50%;
      top: 50%;
      height: auto;
      width: 100%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
      .find-upfitter .upfitter-thumb img.landscape {
        height: 100%;
        width: auto;
        max-width: inherit; }

p.primary-deets a {
  word-wrap: break-word; }

.special-announce {
  text-align: center;
  font-size: 1.5vw; }

.dont-break-out {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto; }

.callout.upfitter-detail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-x: scroll;
  z-index: 60; }
  .callout.upfitter-detail .upfitter-directory {
    text-align: center;
    margin-bottom: 0.5rem; }

aside.program-intro, .aside.program-intro {
  border-bottom: 0 solid #ffffff;
  -webkit-transition: width 600ms linear, max-width 600ms linear;
  transition: width 600ms linear, max-width 600ms linear;
  position: relative; }

.filter-column {
  width: 5%;
  max-width: 55px; }
  .filter-column #filter-button {
    display: block;
    font-size: 0.6vw;
    padding: 5px;
    max-width: 55px;
    line-height: 1.4; }
    .filter-column #filter-button span {
      display: block;
      padding-top: 5px; }

.filter-column.filter-active {
  width: 25%;
  max-width: 25%; }
  .filter-column.filter-active #filter-button {
    display: none; }

.contact-info {
  background: #082a47;
  border-bottom: 1rem solid #ffffff; }
  .contact-info h2 {
    font-size: 1.75rem;
    line-height: 1.3;
    margin-left: 0;
    text-shadow: none;
    margin-bottom: 2rem; }
  .contact-info .info-holder {
    padding-top: 2vw;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100rem;
    margin: 0 auto; }
    .contact-info .info-holder dt {
      color: #cacaca;
      font-family: 'FordAntenna-bold', san-serif;
      font-size: 1.5rem; }
    .contact-info .info-holder dd {
      color: #ffffff;
      font-size: 1.5rem;
      margin-bottom: 1rem; }
    .contact-info .info-holder p {
      color: #ffffff;
      font-size: 1.5rem; }
  .contact-info:not(.gray) .button.large {
    background: #ffffff;
    color: #0075b6;
    border: 3px solid #0075b6; }
    .contact-info:not(.gray) .button.large:after {
      background-image: url(../../img/button-caret-blue.png); }
    .contact-info:not(.gray) .button.large:hover, .contact-info:not(.gray) .button.large:focus {
      background: #082a47;
      color: #ffffff;
      border: 3px solid #ffffff; }
      .contact-info:not(.gray) .button.large:hover:after, .contact-info:not(.gray) .button.large:focus:after {
        background-image: url(../../img/button-caret.png); }

.contact-info.gray {
  background: #f7f7f7;
  border-bottom: 1rem solid #ffffff; }
  .contact-info.gray h2 {
    color: #000000; }
  .contact-info.gray .info-holder dt {
    color: #0075b6; }
  .contact-info.gray .info-holder dd {
    color: #0075b6; }
  .contact-info.gray .info-holder p {
    color: #000000; }
  .contact-info.gray .info-holder img {
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75), inset 0px 0px 5px 0px rgba(0, 0, 0, 0.75);
            box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75), inset 0px 0px 5px 0px rgba(0, 0, 0, 0.75); }

dt {
  font-family: 'FordAntenna-Semibold', san-serif; }

.business-links {
  padding-bottom: 2rem; }

.download-cta {
  position: relative;
  bottom: 0;
  text-align: right;
  width: 100%;
  padding: 0.1vw 1vw 0.3vw 0;
  right: 0;
  font-family: 'FordAntenna-Semibold', san-serif;
  font-size: 1.2vw; }
  .download-cta span {
    color: #ffffff;
    line-height: 39px;
    display: inline-block;
    color: #0075b6; }
    .download-cta span:after {
      content: '';
      background: url(../../img/download-caret.png) no-repeat center center;
      background-size: cover;
      display: inline-block;
      top: 0vw;
      width: 2vw;
      height: 1vw;
      margin-top: 1vw;
      margin-left: 1vw;
      position: relative; }
  .download-cta:hover span {
    text-decoration: underline; }

.upfit-options-section .tab-gallery-hero .download-cta span {
  color: #ffffff;
  white-space: nowrap; }
  .upfit-options-section .tab-gallery-hero .download-cta span:after {
    background-image: url(../../img/download-caret-white.png); }

.offsite-cta {
  position: relative;
  bottom: 0;
  text-align: right;
  width: 100%;
  padding: 0.1vw 1vw 0.3vw 0;
  right: 0;
  font-family: 'FordAntenna-Semibold', san-serif;
  font-size: 1.2vw; }
  .offsite-cta span {
    color: #ffffff;
    line-height: 39px;
    display: inline-block;
    color: #0075b6; }
    .offsite-cta span:after {
      content: '';
      background: url(../../img/offsite-caret.png) no-repeat center center;
      background-size: cover;
      display: inline-block;
      top: 0.25vw;
      width: 1.5vw;
      height: 1.5vw;
      margin-left: 1vw;
      position: relative; }

.important {
  color: #0075b6;
  font-size: 1.75rem;
  line-height: 1.1; }

.certify-steps {
  background: #f7f7f7; }
  .certify-steps h1 {
    color: #000000;
    font-size: 2vw;
    background: none;
    padding-left: 0;
    margin-left: 0; }
  .certify-steps h2 {
    color: #000000; }
  .certify-steps h3 {
    color: #000000;
    font-size: 2vw; }
  .certify-steps .info-holder {
    padding-top: 2vw;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100rem;
    margin: 0 auto; }
  .certify-steps .card {
    border: 2px solid #cacaca; }
  .certify-steps .certify-announcement-table {
    background: #cacaca;
    text-align: center;
    width: auto;
    display: inline-block; }
    .certify-steps .certify-announcement-table dt {
      background: #082a47;
      color: #ffffff;
      padding: 1rem 2rem; }
    .certify-steps .certify-announcement-table dd {
      padding: 1rem; }
  .certify-steps .enroll-announcement-table {
    background: #cacaca;
    text-align: center;
    width: 100%;
    display: inline-block; }
    .certify-steps .enroll-announcement-table dt {
      background: #082a47;
      color: #ffffff;
      padding: 1rem 2rem; }
    .certify-steps .enroll-announcement-table dd {
      padding: 1rem; }

section.contact-us {
  background: #082a47;
  border-bottom: 8px solid #0075b6;
  margin-bottom: 1rem; }
  section.contact-us .intro-cta .button {
    border: 2px solid #ffffff; }
  section.contact-us.contact-commercial {
    border-color: #0075b6; }
  section.contact-us.contact-accessibility {
    border-color: #0075b6; }
  section.contact-us.contact-recreational {
    border-color: #0075b6; }
  section.contact-us.contact-fleet {
    border-color: #0075b6; }
  section.contact-us h2 {
    font-size: 1.25rem; }
  section.contact-us p {
    color: #ffffff; }
  section.contact-us .radio-group {
    padding: 2rem 0 4rem; }
    section.contact-us .radio-group label {
      font-size: 1.5rem; }
    section.contact-us .radio-group .radio {
      top: 7px; }
  section.contact-us .contact-results {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100rem;
    margin: 0 auto;
    height: 60vh; }
    section.contact-us .contact-results .intro-cta {
      position: absolute;
      bottom: 6vh;
      width: calc(100% - 1.25rem);
      max-width: calc(100rem - 1.25rem); }

.slide-container {
  position: relative;
  left: 0;
  overflow: hidden; }

.slide {
  float: left;
  border-bottom: 9px solid #00ACF6; }

.slide .sized-container {
  padding: 75px 25px;
  background-color: #102b4e;
  border-bottom: none;
  padding-top: 55px;
  border-bottom: 10px solid #00ACF6;
  margin-top: -10px; }

.pagination-container {
  margin-top: 120px; }

.name-info-form {
  font-family: 'FordAntenna-Regular';
  background-color: #102b4e;
  padding-left: 20px;
  margin-top: 18px;
  width: 58vw;
  margin: 0 auto; }

.contact-us h1 {
  font-size: 2.3vw;
  line-height: 1.1;
  margin-left: 0;
  text-shadow: none; }

.dark-section label {
  color: #ffffff; }

.fleet-incentives {
  margin-top: 14vw;
  padding: 1vw;
  color: #ffffff;
  background: #082a47; }

.accessibility-info {
  border-bottom: 1rem solid #ffffff;
  padding: 2rem 0; }
  .accessibility-info .content-bucket {
    background: #ffffff;
    padding: 1vw 2vw; }
    .accessibility-info .content-bucket p, .accessibility-info .content-bucket ul {
      font-size: 1.2rem;
      margin-bottom: 2rem; }
  .accessibility-info .calls-to-action {
    padding: 3rem 0 1rem; }
  .accessibility-info .off {
    display: none; }
  .accessibility-info .background-img {
    position: relative;
    overflow: hidden;
    height: inherit; }
  .accessibility-info .background-img2 {
    position: relative;
    overflow: hidden;
    height: inherit;
    min-height: 20vw;
    border-bottom: 0.5rem solid #0678bc; }
  .accessibility-info .tabs {
    border-width: 0;
    background: none; }
  .accessibility-info .tabs-title {
    float: none !important;
    display: inline-block;
    padding: 0.5%;
    width: 24%; }
    .accessibility-info .tabs-title > a {
      font-size: .9vw;
      text-transform: capitalize;
      background-color: #0075b6;
      color: #ffffff;
      font-family: 'FordAntenna-Light', san-serif; }
      .accessibility-info .tabs-title > a:focus, .accessibility-info .tabs-title > a:hover, .accessibility-info .tabs-title > a[aria-selected='true'] {
        background: #37a9e8;
        color: #ffffff;
        border-color: #000000; }
  .accessibility-info .offsite-cta {
    text-align: center; }

.accessibility-info.video-story {
  display: inline-table; }

.accessibility-info.video-story .content-bucket {
  background: #ffffff;
  padding: 1vw 4vw;
  display: table-cell;
  vertical-align: middle; }

.accessibility-info .background-img.video-story-video {
  height: 33vw;
  width: 100%; }

.accessibility-info .background-img.video-story-video .banner__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-width: 100%;
  height: auto;
  min-height: 100%;
  -webkit-transform: translateX(0) translateY(0);
  -ms-transform: translateX(0) translateY(0);
  transform: translateX(0) translateY(0);
  z-index: 1;
  background: #000000; }

video::cue {
  background: #082a47;
  color: #ffffff;
  z-index: 2;
  position: relative; }

video::cue(b) {
  color: #ffffff; }

li.cell a {
  display: block; }

li.download {
  background: url(../../img/accessibility-download-icon.png) no-repeat 0 center;
  list-style-type: none;
  padding: 10px 0; }
  li.download a {
    padding: 10px 0 10px 55px; }

li.questions {
  background: url(../../img/accessibility-question-icon.png) no-repeat 0 center;
  list-style-type: none;
  padding: 10px 0; }
  li.questions a {
    padding: 10px 0 10px 55px; }

li.military {
  background: url(../../img/accessibility-military-icon.png) no-repeat 0 center;
  list-style-type: none;
  padding: 10px 0; }
  li.military a {
    padding: 10px 0 10px 55px; }

li.employee {
  background: url(../../img/accessibility-employee-icon.png) no-repeat 0 center;
  list-style-type: none;
  padding: 10px 0; }
  li.employee a {
    padding: 10px 0 10px 55px; }

p.infoitem {
  background: url(../../img/accessibility-information-icon.png) no-repeat 0 center;
  list-style-type: none;
  padding: 10px 0 10px 70px; }

p.claimitem {
  background: url(../../img/accessibility-claim-icon.png) no-repeat 0 center;
  list-style-type: none;
  padding: 10px 0 10px 70px; }

li.taskitem {
  background: url(../../img/accessibility-task-icon.png) no-repeat 0 center;
  list-style-type: none;
  padding: 10px 0; }
  li.taskitem span {
    display: inline-block;
    padding: 10px 0 10px 70px; }

.program-steps {
  margin: 2rem 0; }
  .program-steps dt {
    text-transform: uppercase;
    text-align: center;
    background: #0075b6;
    position: relative;
    padding: 0.5rem 0 0.5em; }
    .program-steps dt:before {
      z-index: 1;
      content: "";
      position: absolute;
      left: -1rem;
      top: 0;
      height: 100%;
      width: 2rem;
      background: #082a47;
      -webkit-transform: skewX(20deg);
      -ms-transform: skewX(20deg);
      transform: skewX(20deg); }
    .program-steps dt:after {
      z-index: 1;
      content: "";
      position: absolute;
      right: -1rem;
      top: 0;
      height: 100%;
      width: 2rem;
      background: #082a47;
      -webkit-transform: skewX(20deg);
      -ms-transform: skewX(20deg);
      transform: skewX(20deg); }
  .program-steps dd {
    background: #082a47;
    position: relative;
    padding: 1rem 0 1rem 2rem;
    margin-top: -5px;
    font-size: 1vw; }
    .program-steps dd:before {
      z-index: 1;
      content: "";
      position: absolute;
      right: 0.5rem;
      top: -33%;
      height: 66%;
      width: 0.5rem;
      background: #0075b6;
      -webkit-transform: skewX(20deg);
      -ms-transform: skewX(20deg);
      transform: skewX(20deg); }
    .program-steps dd:after {
      z-index: 1;
      content: "";
      position: absolute;
      right: 0.5rem;
      top: 33%;
      height: 66%;
      width: 0.5rem;
      background: #0075b6;
      -webkit-transform: skewX(-20deg);
      -ms-transform: skewX(-20deg);
      transform: skewX(-20deg); }

.landing legend {
  text-align: left;
  line-height: 1.1;
  padding-bottom: 1rem; }

.in-page-jump a:after {
  content: '';
  background: url(../../img/circle-caret.png) no-repeat center center;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  background-size: cover;
  display: inline-block;
  top: 0.5vw;
  width: 1.5vw;
  height: 1.5vw;
  margin-left: 1vw;
  position: relative; }

.in-page-jump.normjump a:after {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  top: 0.25vw;
  margin-left: 0.5vw; }

.in-page-jump.normjump li.cell {
  list-style: none;
  margin-left: 1rem;
  margin-right: -1rem; }

.in-page-jump.light a:after {
  background-image: url(../../img/circle-caret-blue.png); }

.gray {
  background: #f7f7f7; }
  .gray .content-bucket {
    background: #f7f7f7; }
  .gray .promo__background {
    z-index: 1; }

.reimbursement-steps .promo__background {
  min-width: 100% !important;
  position: absolute;
  top: 0;
  left: 50%;
  width: auto;
  min-width: 101%;
  height: auto;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1; }

.reimbursement-steps h4 {
  color: #000000;
  background: none;
  padding: 0 0 2rem 0;
  margin-left: 0; }

.accessibility-table {
  min-width: 40rem; }

.accessibility-table thead th {
  background: #082a47;
  color: #ffffff;
  padding: 1rem 0.625rem 1.125rem;
  text-align: center;
  border: 1px solid #082a47; }

.accessibility-table tbody td {
  padding: 0.5rem 0.625rem 0.625rem;
  text-transform: uppercase;
  color: #082a47;
  font-family: 'FordAntenna-Medium', san-serif;
  border: 1px solid #082a47; }
  .accessibility-table tbody td:not(:first-child) {
    text-align: center; }

.accessibility-table tbody tr:first-child td {
  font-size: 0.75rem;
  color: #000000;
  text-align: left; }

.accessibility-table .yes {
  font-size: 0.01px;
  display: inline-block;
  position: relative; }
  .accessibility-table .yes:after {
    content: '';
    display: block;
    position: absolute;
    border: 0;
    border-radius: 50px;
    background: #082a47;
    width: 1rem;
    height: 1rem;
    top: -0.7rem;
    left: -0.5rem; }

.form-error {
  margin-top: -1rem;
  background: #fff;
  text-align: center; }

.gift-response.off {
  display: none; }

.underline {
  text-decoration: underline; }
  .underline:hover {
    text-decoration: none; }

.dark-section a.underline {
  text-decoration: underline;
  color: #cacaca; }
  .dark-section a.underline:hover, .dark-section a.underline:focus {
    color: #ffffff; }

.nobr {
  white-space: nowrap; }

.image-disclaimer {
  position: absolute;
  bottom: 0;
  right: 0;
  font-size: 0.75rem; }
  .image-disclaimer span {
    background: #082a47;
    padding: 0.5rem;
    color: #ffffff; }

.image-loader-svg {
  width: 130px;
  height: 50px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE4LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAzMDAgMTIwIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAzMDAgMTIwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGc+Cgk8Zz4KCQk8Zz4KCQkJPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTIzNS44LDQ0LjJMMjM1LjgsNDQuMkMyMzUuOCw0NC4yLDIzNS44LDQ0LjIsMjM1LjgsNDQuMkMyMzUuOCw0NC4yLDIzNS44LDQ0LjIsMjM1LjgsNDQuMnoiLz4KCQkJPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTE5Mi45LDI4LjljMCwwLjEsMC4xLDAuMSwwLjEsMC4yQzE5MywyOSwxOTIuOSwyOC45LDE5Mi45LDI4Ljl6Ii8+CgkJPC9nPgoJPC9nPgoJPGRlZnM+CgoJCQk8IS0tIERhIGdyYWRpZW50IC0tPgogICAgICAgICAgICAgICAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkaWVudCIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgICAgICAgICAgICAgICAgIDxzdG9wIG9mZnNldD0iMCUiIHN0eWxlPSJzdG9wLWNvbG9yOiMwMDAwMDAgOyIvPgogICAgICAgICAgICAgICAgICAgIDxzdG9wIG9mZnNldD0iMjUlIiBzdHlsZT0ic3RvcC1jb2xvcjojY2NjY2NjIDsiLz4KICAgICAgICAgICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3R5bGU9InN0b3AtY29sb3I6I0ZGRkZGRiA7Ii8+CiAgICAgICAgICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PSI3NSUiIHN0eWxlPSJzdG9wLWNvbG9yOiNGRkZGRkYgOyIvPgogICAgICAgICAgICAgICAgICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3R5bGU9InN0b3AtY29sb3I6I0ZGRkZGRiA7Ii8+CiAgICAgICAgICAgICAgICA8L2xpbmVhckdyYWRpZW50PgoKICAgICAgICAgICAgICAgIDwhLS0gU3RpdGNoIDIgZ3JhZGllbnRzIHRvZ2V0aGVyIGZvciBzZWFtbGVzcyBhbmltYXRpb24gIC0tPgogICAgICAgICAgICAgICAgPHBhdHRlcm4gaWQ9InBhdHRlcm4iIHg9IjAiIHk9IjAiIHdpZHRoPSIxMCUiIGhlaWdodD0iMzAwJSIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CgogICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjMwMCUiIGZpbGw9InVybCgjZ3JhZGllbnQpIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlVHlwZT0iWE1MIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVOYW1lPSJ5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tPSItMTAwJSIgdG89IjEwMCUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cj0iM3MiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIi8+CiAgICAgICAgICAgICAgICAgICAgPC9yZWN0PgoKICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIzMDAlIiBmaWxsPSJ1cmwoI2dyYWRpZW50KSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlTmFtZT0ieSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbT0iMTAwJSIgdG89Ii0xMDAlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdXI9IjNzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIvPgogICAgICAgICAgICAgICAgICAgIDwvcmVjdD4KCiAgICAgICAgICAgICAgICA8L3BhdHRlcm4+CgkJPC9kZWZzPgoJPHBhdGggZmlsbD0idXJsKCNwYXR0ZXJuKSIgZD0iTTE1MS4xLDEwNy4zQzc2LDEwNy4zLDE1LjEsODYuMiwxNS4xLDYwYzAtMjYuMSw2MC45LTQ3LjMsMTM1LjktNDcuM0MyMjYuMiwxMi43LDI4NywzMy45LDI4Nyw2MAoJCUMyODcsODYuMiwyMjYuMiwxMDcuMywxNTEuMSwxMDcuM3ogTTE1MS4xLDE2LjhDNzguNiwxNi44LDE5LjksMzYuMiwxOS45LDYwYzAsMjMuOSw1OC43LDQzLjIsMTMxLjIsNDMuMgoJCWM3Mi40LDAsMTMxLjItMTkuMywxMzEuMi00My4yQzI4Mi4zLDM2LjIsMjIzLjUsMTYuOCwxNTEuMSwxNi44eiIvPgoJPHBhdGggZmlsbD0idXJsKCNwYXR0ZXJuKSIgZD0iTTIzNS43LDQ0LjVjMC4yLTAuMywwLTAuNi0wLjQtMC42Yy0yLjIsMC01LDAtNy4zLDBjLTAuNSwwLTAuOCwwLjEtMS4xLDAuNmMtMC44LDEuNi0xMSwxNi44LTEyLjksMTkuOAoJCWMtMC4zLDAuNS0wLjcsMC40LTAuOC0wLjFjLTAuMi0xLjgtMS43LTMuOC00LjEtNC43Yy0xLjgtMC43LTMuNi0wLjktNS41LTAuNmMtMy4zLDAuNC02LjMsMi4yLTguOSw0LjJjLTQsMy03LjQsNi45LTExLjgsOS44CgkJYy0yLjQsMS42LTUuNywyLjktNy45LDAuOWMtMi0xLjgtMS44LTUuOSwxLjMtOS4xYzAuMy0wLjMsMC43LTAuMSwwLjYsMC4yYy0wLjMsMS40LDAuMSwyLjksMS4yLDMuOWMxLjMsMS4yLDMuMiwxLjMsNC45LDAuNQoJCWMxLjktMSwzLjEtMi44LDMuNC00LjljMC41LTMuMi0yLTYuMS01LjEtNi4zYy0yLjUtMC4yLTUsMC43LTcuMywyLjdjLTEuMiwxLTEuOSwxLjctMi45LDMuMmMtMC4yLDAuNC0wLjYsMC40LTAuNi0wLjEKCQljMC4xLTQuMS0xLjYtNi41LTUtNi42Yy0yLjctMC4xLTUuNSwxLjQtNy43LDMuMWMtMi40LDItNC42LDQuNS02LjgsN2MtMC4zLDAuMy0wLjUsMC4zLTAuNi0wLjNjLTAuMS0yLjctMC44LTUuNC0yLTcuMwoJCWMtMC41LTAuNy0xLjQtMS0yLjItMC41Yy0wLjQsMC4yLTEuNiwwLjgtMi42LDEuNWMtMC41LDAuNC0wLjYsMC45LTAuNCwxLjZjMS4yLDQuMSwxLDguOC0wLjcsMTIuN2MtMS41LDMuNi00LjUsNi45LTgsOAoJCWMtMi4zLDAuNy00LjcsMC40LTYuMi0xLjdjLTItMi44LTEuMi03LjcsMS44LTExLjhjMi43LTMuNiw2LjUtNS45LDEwLjQtNy4zYzAuNS0wLjIsMC41LTAuNSwwLjQtMC45Yy0wLjItMC42LTAuNS0xLjUtMC43LTEuOQoJCWMtMC40LTAuOS0xLjMtMS4xLTIuNi0xYy0yLjgsMC4zLTUuMywxLjMtNy44LDIuNmMtNi41LDMuNS05LjgsMTAuMy0xMS4zLDEzLjljLTAuNywxLjctMS4zLDIuOC0yLDMuOGMtMSwxLjMtMi4zLDIuNS00LjcsNC42CgkJYy0wLjIsMC4yLTAuNCwwLjYtMC4yLDFjMC4yLDAuNSwxLjUsMi4yLDEuOCwyLjRjMC40LDAuMiwwLjgtMC4xLDEtMC4yYzEuNy0xLjEsMy42LTIuOSw0LjYtNC4xYzAuMy0wLjQsMC43LTAuMiwwLjksMC40CgkJYzAuOSwzLjIsMy4zLDUuOSw2LjUsN2M2LDIsMTIuMi0wLjksMTYuOS02YzMtMy4yLDQuMS01LjMsNS4yLTYuN2MxLjktMi40LDUuOC03LjgsMTAuMy0xMS4yYzEuNy0xLjMsMy42LTIuMiw0LjYtMS42CgkJYzAuOCwwLjUsMS4xLDEuNy0wLjIsNGMtNC42LDguNS0xMS41LDE4LjQtMTIuNywyMC45Yy0wLjIsMC40LDAsMC43LDAuNCwwLjdjMi40LDAsNC44LDAsNywwYzAuNCwwLDAuNS0wLjIsMC43LTAuNAoJCWMzLjYtNS42LDYuOS0xMC45LDEwLjUtMTYuNGMwLjItMC4zLDAuNC0wLjEsMC40LDAuMWMwLjEsMS4zLDAuNCwzLDEuMSw0LjJjMS40LDIuMSwzLjMsMyw1LjQsM2MxLjcsMCwyLjYtMC4yLDQuNC0wLjkKCQljMS41LTAuNiwyLjctMS4zLDMuNi0xLjljMC41LTAuNCwwLjYsMC4zLDAuNiwwLjNjLTAuOCw0LjQsMC4yLDkuNyw0LjYsMTEuOGM1LjMsMi42LDExLjEtMS4xLDE0LjQtNC4zYzAuMy0wLjMsMC43LTAuMywwLjcsMC40CgkJYzAuMSwxLjMsMC42LDIuOCwxLjcsMy44YzIuOCwyLjgsOC40LDEuNywxNC4xLTIuN2MzLjYtMi44LDcuNC02LjgsMTAuOC0xMC45YzAuMS0wLjIsMC4yLTAuNCwwLTAuN2MtMC41LTAuNS0xLjMtMS4yLTEuOC0xLjcKCQljLTAuMi0wLjItMC42LTAuMS0wLjgsMGMtMy41LDMuMy02LjcsNy4yLTExLjIsMTAuM2MtMS41LDEuMS00LDEuOS01LjEsMC41Yy0wLjQtMC42LTAuNC0xLjQsMC0yLjQKCQlDMjEzLjUsNzguNiwyMzQuNiw0Ni40LDIzNS43LDQ0LjV6IE0yMDcuOCw3MS41YzAsMC4yLDAuNCwwLjUsMC43LDAuNmMwLjEsMCwwLjIsMC4xLDAsMC40Yy0wLjksMS45LTEuNywzLTIuOCw0LjcKCQljLTEsMS41LTIuMiwyLjctMy42LDMuOWMtMi4xLDEuOC01LjEsMy43LTcuNSwyLjRjLTEuMS0wLjYtMS42LTIuMS0xLjUtMy4zYzAuMS0zLjUsMS42LTcsNC40LTEwLjVjMy41LTQuMyw3LjMtNi41LDkuOC01LjMKCQljMi42LDEuMiwxLjgsNC4yLDAuNiw2LjZDMjA3LjgsNzEuMiwyMDcuOCw3MS4zLDIwNy44LDcxLjV6Ii8+Cgk8cGF0aCBmaWxsPSJ1cmwoI3BhdHRlcm4pIiBkPSJNODIuNyw4OS44Yy03LjksMC4xLTE0LjgtNC44LTE1LjYtMTMuMmMtMC40LTQuNywwLjktOC44LDMuNS0xMi4yYzIuMy0zLjEsNi4zLTUuNiw5LjctNi4yCgkJYzEuMS0wLjIsMi42LTAuMSwzLjIsMC43YzEsMS4xLDAuNywyLjMtMC4zLDIuOGMtMi42LDEuMy01LjYsMy41LTcuMiw2LjZjLTEuMiwyLjUtMS41LDUuNSwwLjQsOC40YzMuMiw0LjgsMTIsNC45LDIwLjItMi43CgkJYzItMS45LDMuOC0zLjcsNS43LTUuOGMzLjYtNC4xLDQuOC01LjYsOS42LTEyLjNjMC4xLTAuMSwwLjEtMC4yLDAtMC4yYzAtMC4xLTAuMS0wLjEtMC4yLTAuMWMtMy4yLDAuMS02LDEtOC43LDMuMQoJCWMtMC44LDAuNi0xLjksMC41LTIuNC0wLjNjLTAuNS0wLjgtMC4yLTIsMC43LTIuNmM0LjQtMyw5LjEtMy42LDE0LTQuNGMwLDAsMC4zLDAsMC42LTAuNGMyLTIuNiwzLjUtNC45LDUuNi03LjUKCQljMi4xLTIuNiw0LjktNSw3LTYuOWMzLTIuNSw0LjktMy40LDYuOC00LjRjMC41LTAuMy0wLjEtMC42LTAuMi0wLjZjLTEwLjgtMi0yMS45LTQuNi0zMi42LTAuN2MtNy40LDIuOC0xMC42LDguNi05LjEsMTIuNgoJCWMxLjEsMi44LDQuOCwzLjIsOC4yLDEuNmMyLjgtMS40LDUuNS0zLjYsNy4zLTYuNWMxLTEuNiwzLjItMC40LDIuMSwyLjNjLTMuMSw3LjMtOS4xLDEzLjItMTYuNCwxMy40Yy02LjIsMC4yLTEwLjItNC40LTEwLjItMTAKCQljMC0xMS4xLDEyLjQtMTguNCwyNS4zLTE5LjVjMTUuNi0xLjMsMzAuNCwyLjksNDUuOSw0LjhjMTEuOSwxLjQsMjMuMywxLjUsMzUuMi0xLjNjMS40LTAuMywyLjQsMC42LDIuMywyYy0wLjEsMi4xLTEuNyw0LTUuNiw2LjIKCQljLTQuNSwyLjUtOS4yLDMuMi0xNCwzLjJjLTExLjgsMC4xLTIyLjgtNC41LTM0LjItN2MwLDAuNSwwLjEsMS4xLTAuMywxLjRjLTYuMyw0LjctMTIsOS40LTE1LjgsMTZjLTAuMSwwLjItMC4xLDAuMywwLjIsMC4zCgkJYzMuMy0wLjIsNi4zLTAuMyw5LjQtMC41YzAuNSwwLDAuNi0wLjIsMC41LTAuNmMtMC4zLTIuMywwLjQtNC45LDIuNC02LjdjMi4xLTEuOCw0LjYtMi4xLDYuMy0wLjdjMS45LDEuNSwxLjgsNC4yLDAuNyw2LjMKCQljLTEuMSwyLjEtMi45LDMuMi00LjYsMy43YzAsMC0wLjQsMC4xLTAuMywwLjRjMC4xLDAuNSwyLjQsMS44LDIuNiwyLjJjMC4yLDAuMywwLjEsMC44LTAuMywxLjJjLTAuMiwwLjMtMC42LDAuNS0xLjEsMC41CgkJYy0wLjQsMC0wLjYtMC4xLTEuMi0wLjRjLTEtMC42LTIuNC0xLjUtMy4yLTIuNmMtMC4zLTAuNC0wLjUtMC40LTEuMi0wLjNjLTMuMywwLjItOC42LDAuNy0xMi4xLDEuMWMtMC45LDAuMS0xLDAuMy0xLjIsMC42CgkJYy01LjYsOS4zLTExLjcsMTkuMy0xOC4zLDI2LjFDOTQuOCw4Ny44LDg4LjksODkuNyw4Mi43LDg5Ljh6IE0xMzYuNSw0OC40YzAuMSwwLjUsMC4zLDAuNiwwLjUsMC41YzEuMS0wLjIsMi4zLTEuMSwyLjktMi4xCgkJYzAuNi0wLjksMC45LTIuMywwLjMtMi44Yy0wLjYtMC41LTEuNS0wLjMtMi4yLDAuM0MxMzYuNyw0NS41LDEzNi4zLDQ3LjIsMTM2LjUsNDguNEwxMzYuNSw0OC40Ii8+CjwvZz4KPC9zdmc+Cg==);
  display: block;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1; }

.accessibility-info .content-bucket p.tax-talk {
  font-size: 1.5rem; }

.main-garage-shop li.cell a {
  font-size: 1.2vw;
  padding: 1.25vw 2.5vw; }

.button.small.acc-cart img {
  width: 5vw; }

.table-on-dark {
  color: #000000;
  font-size: 1rem; }

.table-on-dark label {
  color: #000000;
  font-size: 1rem; }

.table-on-dark thead th, .table-on-dark tbody td {
  padding: 0.25rem 1rem 0.25rem;
  line-height: 1.1;
  border: 1px solid #333333; }

.table-on-dark tbody tr:nth-child(even) {
  background-color: #cacaca; }

.table-on-dark thead {
  background-color: #082a47; }

.table-on-dark thead th {
  border: 1px solid #ffffff;
  color: #ffffff; }

.table-on-dark thead th label {
  color: #ffffff; }

.table-on-dark .check-container {
  margin: 1rem 0.5rem 1rem; }

.table-on-dark caption {
  color: #ffffff;
  font-weight: normal; }

.bigger-text p {
  font-size: 1.2rem;
  line-height: 1.6; }

a.button.speciallink.large {
  padding: 1.1vw 2vw 1.1vw;
  font-size: 1.2vw;
  margin-bottom: 0; }
  a.button.speciallink.large:after {
    height: 1.25vw; }

/* Media queries */
/* Medium only */
@media screen and (max-width: 63.9375em) {
  .intro-video {
    height: 80vh; }
    .intro-video h1 {
      position: absolute;
      top: 10vh; }
    .intro-video.commercial-banner {
      height: 55vw; }
      .intro-video.commercial-banner h1 {
        top: 6vh; }
    .intro-video.recreational-banner {
      height: 55vw; }
    .intro-video.accessibility-banner {
      height: 55vw; }
      .intro-video.accessibility-banner.detail-page {
        height: 35vw; }
        .intro-video.accessibility-banner.detail-page h1 {
          top: 6vh; }
    .intro-video.fleet-banner {
      height: 55vw; }
    .intro-video.start-with-banner h1 {
      top: 3vh; }
  .interior-page.intro-video h1 {
    top: 5vh; }
  .interior-page.intro-video .intro-cta {
    bottom: 0vh; }
  .fleet-banner .banner__video, .commercial-banner .banner__video, .accessibility-banner .banner__video, .recreational-banner .banner__video {
    width: 120%;
    height: auto; }
  .intro-cta {
    bottom: 6vh;
    width: auto; }
    .intro-cta .button {
      width: 90%;
      font-size: 2.053vw;
      padding: 1vw 0.542vw 0.525vw;
      margin-bottom: 1rem; }
      .intro-cta .button:after {
        width: 103%;
        height: 0.4vw;
        bottom: -1.5vw;
        left: -0.6vw; }
  .accordion-title {
    font-size: 2.823vw; }
    .accordion-title:after {
      width: 3.211vw;
      height: 2.4vw;
      margin-left: 2rem;
      top: 0; }
  .promotional-section {
    padding: 1rem 0 0; }
  .promo-row {
    padding-bottom: 1rem; }
  .promo__background {
    min-width: 105%; }
  .mega-footer {
    padding: 1rem; }
  .keep-updated .background-img .promo__background {
    min-width: 130%; }
  .secondary-cta-section .promo__background {
    min-width: 200%;
    left: 90%; }
  .secondary-cta-section .promo__background2 {
    min-width: 200%;
    left: 50%; }
  .upfit-options-section .tabs-title {
    width: 33%; }
    .upfit-options-section .tabs-title > a {
      font-size: 2vw;
      padding: 1.25rem 0.5vw; }
  .upfit-options-section h4 {
    margin: 0;
    padding: 1.5vw 0;
    font-size: 1.5rem; }
  .upfit-options-section .tabs-content p {
    font-size: 1.75vw; }
  .reference-guides h1 {
    font-size: 2rem; }
    .reference-guides h1 span {
      font-size: 1rem; }
  .reference-guides h2 {
    font-size: 1.5rem; }
  .reference-guides h3 {
    font-size: 1rem; }
  .download-cta {
    font-size: 1rem; }
  .contact-info .info-holder dt {
    font-size: 1rem; }
  .contact-info .info-holder dd {
    font-size: 1rem; }
  .contact-info .info-holder p {
    font-size: 1rem; }
  section.contact-us .checkmark {
    top: 6px; }
  section.contact-us .radio-container {
    padding-left: 5.2vw; }
  section.contact-us .radio {
    height: 3.5vw;
    width: 3.5vw; }
  section.contact-us .radio-container .radio:after {
    width: 3.4vw;
    height: 3.4vw; }
  section.contact-us h2 {
    font-size: 1.25rem; }
  section.contact-us .radio-group {
    padding: 2rem 0 4rem; }
    section.contact-us .radio-group label {
      font-size: 1.5rem; }
    section.contact-us .radio-group .radio {
      top: 7px;
      height: 3vw;
      width: 3vw; }
  .program-steps {
    margin: 2rem 0; }
    .program-steps dt {
      padding: 0.5rem 0 0.5em; }
      .program-steps dt:before {
        left: -1rem;
        top: 0;
        height: 100%;
        width: 2rem; }
      .program-steps dt:after {
        right: -1rem;
        top: 0;
        height: 100%;
        width: 2rem; }
    .program-steps dd {
      padding: 1rem 0 1rem 2rem;
      margin-top: -5px;
      font-size: 2vw; }
      .program-steps dd:before {
        right: 0.5rem;
        top: -33%;
        height: 66%;
        width: 0.5rem; }
      .program-steps dd:after {
        right: 0.5rem;
        top: 33%;
        height: 66%;
        width: 0.5rem; }
  .in-page-jump a:after {
    top: 0.5vw;
    width: 2.5vw;
    height: 2.5vw;
    margin-left: 1vw; }
  .filter-column #filter-button {
    font-size: 0.8vw; }
  .announce {
    font-size: 1.5rem; }
  .enroll-reasons h3 {
    font-size: 2.5rem; }
  .announce-mug {
    font-size: 2rem;
    line-height: 1.3; }
  .landing legend {
    font-size: 2.2vw; } }

/* Small only */
@media screen and (max-width: 39.9375em) {
  .motorhome-head-info {
    color: #0c1218;
    font-size: 3.8vw !important;
    padding: 4.5vw;
    text-align: center; }
  .sticky-container {
    -webkit-transition: height 500ms linear;
    transition: height 500ms linear; }
  .mobile-header-logo {
    -webkit-transition: width 500ms linear;
    transition: width 500ms linear;
    width: 65vw;
    max-width: 347px; }
  .is-stuck .mobile-header-logo {
    width: 40vw; }
  .nav-disguise {
    overflow: hidden; }
  li.admin-login {
    position: absolute;
    top: 0;
    right: 0; }
  img.admin-icon {
    width: 7vw;
    margin-top: -0.5vw; }
  .intro-video.banner {
    background: rgba(0, 0, 0, 0.5) url(../../img/video-background.jpg) no-repeat center center;
    background-size: cover; }
  .landing legend {
    font-size: 3.2vw; }
  .chosen-vehicle {
    padding: 6vw; }
  .intro-video {
    height: 80vh; }
    .intro-video h1 {
      position: absolute;
      top: 10vh; }
    .intro-video.commercial-banner {
      height: 53vw; }
      .intro-video.commercial-banner h1 {
        top: 6vh; }
    .intro-video.recreational-banner {
      height: 90vw; }
    .intro-video.accessibility-banner {
      height: 90vw; }
      .intro-video.accessibility-banner.detail-page {
        height: 49vw; }
        .intro-video.accessibility-banner.detail-page h1 {
          top: 6vh; }
    .intro-video.fleet-banner {
      height: 90vw; }
    .intro-video.start-with-banner h1 {
      top: 0vh; }
  .fleet-banner .banner__video, .commercial-banner .banner__video, .accessibility-banner .banner__video, .recreational-banner .banner__video {
    width: 168%;
    height: auto; }
  .fleet-banner .banner__video {
    width: 200%;
    height: auto;
    max-width: 200%; }
  .all-incentive-video {
    height: 52.5vw; }
  .top-bar .menu li {
    border-bottom: 4px solid #ffffff;
    text-transform: uppercase;
    margin: 0 1vw;
    font-size: 6.26vw; }
  nav .menu a, nav .menu .button {
    padding: 1.7vw 1vw; }
  .title-bar-title {
    padding: 0.5rem 1rem; }
  .footer-logo img {
    width: 40vw; }
  h1 {
    font-size: 8.2105vw;
    line-height: 0.7;
    padding: 4vw 4vw; }
    h1 span {
      font-size: 4.5789vw; }
  h2 {
    font-size: 4.2vw; }
  h3 {
    font-size: 6.5vw; }
  h4 {
    font-size: 6.1vw;
    line-height: 1.1;
    margin: 6.68vw 0 0 3.1vw;
    padding: 1.1vw; }
  .recreational-tile h4:before {
    top: -5.75vw;
    width: 23vw;
    height: 6vw; }
  .intro-cta .button {
    width: 90%;
    font-size: 4.053vw;
    padding: 2vw 0.542vw 1.525vw; }
    .intro-cta .button:after {
      width: 101.4%;
      height: 0.8vw;
      bottom: -3.5vw;
      left: -0.6vw; }
  .accordion-title {
    font-size: 3.823vw; }
    .accordion-title:after {
      width: 3.5vw !important;
      height: 3.4vw !important;
      margin-left: 1rem;
      top: 0; }
  .tabs-title {
    padding: 0.5rem; }
  .tabs-title > a {
    padding: 1rem 0.75rem;
    font-size: 0.75rem; }
  .keep-updated label, .intro-cta label {
    font-size: 2.4vw; }
  .keep-updated legend {
    font-size: 3.5vw; }
  .checkmark {
    top: 0;
    left: 0;
    height: 3.5vw;
    width: 3.5vw; }
  .check-container {
    padding-left: 5.2vw; }
  .check-container .checkmark:after {
    left: 1vw;
    width: 1.2vw;
    height: 2.6vw; }
  section:not(.banner) .button.large, section.banner .special-home-announce .button.large {
    padding: 2.3vw 4vw 2.5vw;
    font-size: 3.8vw; }
    section:not(.banner) .button.large:after, section.banner .special-home-announce .button.large:after {
      width: 2vw;
      height: 4vw;
      left: 2vw;
      top: 0.6vw; }
    section:not(.banner) .button.large.download:after, section.banner .special-home-announce .button.large.download:after {
      width: 4vw; }
  section:not(.banner) input.button.large, input.button.large {
    background-size: 2vw 4vw;
    padding: 2.5vw 7vw 2.5vw 4vw; }
  .locate-upfitter p {
    font-size: 3.5vw; }
  .search-upfits {
    position: relative;
    overflow: hidden;
    height: inherit;
    height: 25vh; }
  .promo-row {
    padding-bottom: 0; }
  .promo-tile {
    height: 54vw;
    margin-bottom: 1rem; }
  .medium-3.promo-tile {
    height: 108vw; }
  .promo-tile2 {
    height: 45vw;
    margin-bottom: 1rem; }
  .grid-margin-x > .cell {
    width: calc(100% - 1.25rem);
    margin-left: 0.5rem;
    margin-right: 0.5rem; }
  .grid-margin-x > .medium-6 {
    width: calc(100% - 1.25rem);
    margin-left: 0.5rem;
    margin-right: 0.5rem; }
  .grid-margin-x > .medium-3 {
    width: calc(100% - 1.25rem);
    margin-left: 0.5rem;
    margin-right: 0.5rem; }
  .promo-cta {
    padding: 0.1vw 2vw 0.3vw 0;
    right: 0;
    font-size: 3.2vw; }
    .promo-cta span:after {
      top: 1.5vw;
      width: 5vw;
      height: 5vw;
      margin-left: 3vw; }
  .mega-footer ul.vertical.menu {
    padding-bottom: 1.5rem; }
  .copyright .menu li {
    width: 100%; }
  .button.play-pause {
    width: 9vw;
    height: 9vw;
    top: 0.4vw;
    right: 0.4vw; }
  .interior-page.intro-video h1 {
    top: 3vh; }
  .intro-video .intro-cta {
    bottom: 0vh; }
  .interior-page h1 {
    font-size: 4.2105vw;
    line-height: 1.1;
    margin-left: 1vw; }
  .banner-tag h2 {
    font-size: 4.5vw; }
  .intro-video.commercial-banner > .cell {
    background-size: 1.5vw 85%; }
  .upfit-options-section .tabs-title {
    width: 48% !important; }
    .upfit-options-section .tabs-title > a {
      font-size: 2.5vw; }
  .best-in-class li.bic-element {
    display: inline-block;
    vertical-align: text-top;
    padding: 1rem 2vw;
    color: #ffffff;
    font-size: 4vw;
    width: 100%; }
  .equation .eq-element {
    display: inline-block;
    width: auto;
    font-size: 2vw;
    line-height: 2; }
    .equation .eq-element span {
      display: block;
      font-size: 6vw;
      line-height: 1; }
  .garage-cta p {
    font-size: 4.3vw;
    padding: 1rem 4vw 0; }
  .dealer-form-response {
    font-size: 5vw;
    padding: 6vw 0; }
  .garage .send-to-dealer .dealer-search-call .checkmark {
    height: 5.5vw;
    width: 5.5vw; }
  .garage .send-to-dealer .dealer-search-call .check-container .checkmark:after {
    left: 1.4vw;
    width: 2.6vw;
    height: 4.2vw; }
  .calls-to-action {
    padding: 1rem 0; }
  .secondary-cta-section .promo__background {
    min-width: 350%;
    left: 100%; }
  .secondary-cta-section .promo__background2 {
    min-width: 350%;
    left: 50%; }
  .upfit-options-section .tabs-content .upfit-slice {
    border-width: 0; }
  .upfit-options-section .tabs-content .tabs-panel {
    padding-bottom: 0; }
  .upfit-options-section .tab-gallery-hero {
    display: none;
    color: #fff;
    height: 45vw;
    margin: 0 -1rem;
    border-bottom: 8px solid #fab418; }
  .upfit-options-section .content-bucket {
    padding: 1rem 0 0; }
  .upfit-options-section .tab-gallery-hero p {
    font-size: 1.5rem;
    padding: 1vw 5vw; }
  .upfit-options-section .tab-gallery-hero p:before {
    width: 4vw;
    height: 4.852vw;
    margin-left: -4.1vw;
    top: 0.4vw; }
  .upfit-options-section .tab-gallery-hero .gallery-cta {
    padding: 0.1vw 1vw 0.3vw 0;
    font-size: 2.2vw; }
  .upfit-options-section .tabs-content p {
    font-size: 1rem; }
  p.commercial-cup {
    display: none;
    font-size: 4vw;
    line-height: 1.3;
    top: 30vh;
    margin-left: 4vw; }
    p.commercial-cup img {
      top: -15vh;
      left: 11vw;
      width: 14vw; }
  .reference-guides h1 {
    font-size: 2rem; }
    .reference-guides h1 span {
      font-size: 1.2rem; }
  .reference-guides h2 {
    font-size: 1.5rem; }
  .reference-guides h3 {
    font-size: 1rem; }
  .download-cta {
    font-size: 3.2vw; }
    .download-cta span {
      line-height: 18px; }
      .download-cta span:after {
        top: 0vw;
        width: 4vw;
        height: 2vw;
        margin-left: 2vw; }
  .offsite-cta {
    font-size: 3.2vw; }
    .offsite-cta span {
      line-height: 18px; }
      .offsite-cta span:after {
        top: 0;
        width: 3vw;
        height: 3vw;
        margin-left: 2vw; }
  .all-equation .eq-element {
    font-size: 2vw;
    line-height: 1.5; }
  .all-equation .eq-element span {
    font-size: 4.5vw;
    line-height: 1; }
  .all-equation .eq-operator:after {
    font-size: 3.5vw;
    top: -3.5vw; }
  .all-equation .eq-operator.or:after {
    font-size: 2.25vw;
    top: -3.75vw; }
  .all-incentive-math h3 {
    font-size: 3.25vw; }
  section.contact-us .checkmark {
    top: 6px; }
  section.contact-us .radio-container {
    padding-left: 10.2vw; }
  section.contact-us .radio {
    height: 6.5vw;
    width: 6.5vw; }
  section.contact-us .radio-container .radio:after {
    width: 6.4vw;
    height: 6.4vw; }
  section.contact-us h1 {
    font-size: 6.2105vw; }
  section.contact-us h2 {
    font-size: 1.25rem; }
  section.contact-us .radio-group {
    padding: 2rem 0 4rem; }
    section.contact-us .radio-group label {
      font-size: 1.5rem; }
    section.contact-us .radio-group .radio {
      top: 14px;
      height: 6vw;
      width: 6vw; }
  .accessibility-info .tabs-title {
    width: 48%; }
    .accessibility-info .tabs-title a {
      font-size: 4vw; }
  section.contact-us .contact-results .intro-cta {
    position: relative;
    bottom: auto;
    width: auto;
    max-width: calc(100rem - 1.25rem); }
  section.contact-us .contact-results {
    height: auto; }
  .reimbursement-steps .promo__background {
    min-width: 100% !important;
    position: relative;
    top: 0;
    left: 0;
    width: auto;
    min-width: 101%;
    height: auto;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
    z-index: 1; }
  .program-steps dd {
    padding: 1rem 0 1rem 2rem;
    margin-top: -5px;
    font-size: 4.5vw; }
  .in-page-jump a:after {
    top: 0.5vw;
    width: 3.5vw;
    height: 3.5vw;
    margin-left: 1vw; }
  .contact-info h2 {
    font-size: 4.2vw; }
  .certify-steps h3 {
    font-size: 4vw; }
  .garage h1 {
    font-size: 4.8vw; }
  .garage h2 {
    font-size: 4.75vw; }
  .garage .send-to-dealer h3 {
    font-size: 4.5vw; }
  .garage .send-to-dealer {
    padding: 2rem; }
  .intro-video.garage-banner {
    display: none; }
  .garage .filter-container .radio-container {
    padding-left: 6.2vw; }
  .garage .cell.main-garage-shop .garage-shop-item.popout {
    width: 110%;
    left: -5%; }
  .radio {
    height: 4.5vw;
    width: 4.5vw; }
  .radio-container .radio:after {
    width: 4vw;
    height: 4vw; }
  aside.cell.medium-4.large-3.program-intro, .aside.cell.medium-4.large-3.program-intro {
    padding: 2rem; }
  .filter-column {
    width: 0;
    left: -2rem; }
  .filter-column.filter-active {
    width: 100%;
    max-width: 100%;
    left: 0; }
  .mobile-locator {
    background-color: #f7f7f7;
    padding-top: 1rem; }
  .mobile-locator .search-location {
    width: 7vw; }
  button.button.clear {
    padding-top: .3em;
    padding-bottom: 0.5em; }
  .find-upfitter .accordion.filter .accordion-title {
    font-size: 5.5vw; }
  .find-upfitter .filter-container .filtersection {
    padding-left: 9.2vw;
    margin: 0.5rem 0;
    font-size: 4vw; }
  .find-upfitter .filter-container .more-button {
    height: 5.5vw;
    width: 5.5vw; }
  .find-upfitter .filter-container .more-button:before {
    height: 4vw;
    left: 2.4vw;
    top: 0.7vw; }
  .find-upfitter .filter-container .more-button:after {
    height: 4vw;
    left: 2.4vw;
    top: 0.7vw; }
  .find-upfitter .check-container {
    padding-left: 6.2vw;
    margin: 0.5rem 0;
    font-size: 3.5vw;
    line-height: 1.1; }
  .find-upfitter .aside {
    height: calc(100vh - 37vw);
    overflow-x: auto;
    margin: 0 !important;
    position: absolute;
    z-index: 50; }
  .accordion.filter .accordion-title:after {
    display: none; }
  .find-upfitter .location-list .card p {
    font-size: 4vw;
    line-height: 1.5;
    margin-bottom: 0.5rem; }
  .find-upfitter .location-list .card .button {
    font-size: 3.85vw;
    padding: 1.65vw 2.5vw 1.5vw 2.5vw;
    margin-bottom: 0; }
  .find-upfitter .location-list .card .offsite-cta {
    bottom: 0;
    padding: 1.65vw 6.4vw 1.5vw 1.5vw;
    font-size: 3.85vw; }
  .find-upfitter .location-list .card .offsite-cta:after {
    width: 4vw;
    height: 7vw;
    right: 0;
    top: 0; }
  .find-upfitter .location-list {
    height: 100%;
    position: absolute;
    z-index: 48;
    bottom: 0; }
  .find-upfitter .card-summary .pagination li {
    margin-right: 1.0625rem;
    font-size: 5vw; }
  .find-upfitter .card-summary .pagination .current {
    padding: 0 0.125rem;
    margin: 0.5rem 0 0.5rem 0.5rem;
    background: none;
    font-size: 5vw; }
  #box {
    height: 45vw;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    max-height: 80vh;
    min-height: 2.3rem; }
  #handle {
    background-color: #0075b6;
    width: 100%;
    height: 2.3rem;
    border: white solid;
    border-width: 1rem 40vw;
    cursor: se-resize;
    position: relative;
    left: 0;
    top: 0; }
  #ghostbar {
    height: 10px;
    background-color: #000;
    opacity: 0.5;
    position: absolute;
    cursor: row-resize;
    z-index: 999; }
  .find-upfitter #map-container {
    height: calc(100vh - 5.29689963215975vw); }
  .find-upfitter #map {
    height: 61vh;
    max-height: 80vh;
    min-height: 2.3rem; }
  .find-upfitter .primary-info.dark-section {
    padding: 3rem 2rem; }
  .callout.upfitter-detail {
    height: calc(100vh - 31.2969vw); }
  .find-upfitter .upfitter-thumb {
    width: calc(52.5vw - 2rem);
    height: calc(52.5vw - 2rem); }
  .special-announce {
    font-size: 4vw; }
  .acc-cart {
    position: relative;
    right: auto; }
  .main-garage-shop li.cell a {
    font-size: 2.4vw;
    padding: 2.25vw 3.5vw; }
  .button.small.acc-cart img {
    width: 10vw; }
  .accessibility-info.video-story {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 1rem 0; }
  .accessibility-info .background-img.video-story-video {
    height: 66vw; }
  .accessibility-info .content-bucket p, .accessibility-info .content-bucket ul {
    font-size: 1rem;
    margin-bottom: 1rem; }
  .telematics .program-intro p, .telematics .bigger-text p {
    font-size: 1rem; }
  .splithero {
    height: auto;
    overflow: hidden; }
  .splithero1 {
    height: 58vw;
    margin-bottom: 1rem; }
    .splithero1 .responsive-embed.widescreen {
      padding-bottom: 58.75%;
      margin-bottom: 0;
      top: 0; }
  .bottom-button {
    top: 79%; }
  .bottom-button2 {
    top: 85%;
    width: calc(100% - 8vw);
    margin-bottom: 0;
    margin-left: 0; }
  .cvs-home-logo {
    width: 42vw;
    margin-top: 2vw; }
  .splithero1 h2 {
    left: 28.75%; }
  .grid-margin-x > .cell.darkimageback {
    padding: 3vw 4vw 0; }
  .fordfleetlive h3 {
    font-size: 5vw;
    margin-bottom: 2.75vw; }
  .fordfleetlive p {
    font-size: 2.8vw;
    margin-bottom: 2.75vw; }
  .ffl-infograph {
    position: relative;
    bottom: 0;
    left: 0;
    width: 90%; } }

/* New Styles - November 15 Recreational */
.headline-rec {
  background-color: white;
  color: #0c1218; }

.headline-access {
  color: #0c1218;
  font-size: 28px; }

.sherrod-select {
  background-color: #0678bc;
  color: #ffffff;
  padding: 2vw; }

.wonder-select {
  background-color: #ffffff;
  color: #ffffff;
  padding: 2.5vw; }

.vehicle-motorhome-title {
  color: #ffffff; }

.motorhome-head-info {
  color: #0c1218;
  font-size: 1.7vw;
  padding: 1.6vw; }

.motor-section-line {
  border-bottom: 8px solid #055360 !important; }

.access-section-line {
  border-bottom: 8px solid #0678bc !important; }

.selection-down {
  margin-bottom: 0px; }

.selection-motor-right {
  background-color: #0678bc;
  padding-top: 50px; }

.veh-motor-title {
  color: #ffffff;
  font-size: 1.8vw;
  text-align: center; }

.veh-motor-title-first {
  color: #0678bc;
  font-size: 1.8vw;
  text-align: center; }

.swv-pad {
  border-bottom: 1rem solid #ffffff; }

.select-vehicle-content {
  color: #ffffff;
  background: #f7f7f7;
  border-bottom: 1rem solid #ffffff;
  border-top: 1px solid lightgrey; }
  .select-vehicle-content.off {
    display: none; }

.vehicle-info-wrap {
  background-color: #ffffff;
  height: 615px;
  width: 340px;
  -webkit-box-shadow: 0.6px 0.6px 0.6px 0.6px lightgrey;
          box-shadow: 0.6px 0.6px 0.6px 0.6px lightgrey;
  border-radius: 4px 4px; }

.select-hero-top-com {
  border-bottom: 9px solid #0075b6; }

.select-hero-top-fleet {
  border-bottom: 9px solid #0075b6; }

.select-hero-top-rec {
  border-bottom: 9px solid #0075b6; }

.select-hero-top-access {
  border-bottom: 9px solid #0075b6; }

.select-text-wrap {
  color: #0678bc;
  font-size: 22px;
  padding-top: 20px;
  padding-left: 20px;
  font-weight: bolder; }

.select-text-wrap-con {
  color: black;
  font-size: 16px;
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 28px;
  padding-bottom: 6px;
  line-height: 28px; }

.program-cta-btn {
  background-color: #0678bc;
  color: #ffffff;
  padding: 10px;
  font-size: 14px;
  width: 240px;
  text-align: center;
  margin-top: 1.5vh;
  margin-left: 50px;
  float: left;
  background-image: url(../../img/button-caret-small.png);
  background-repeat: no-repeat;
  background-position: 94%;
  font-weight: bolder;
  border: 1px solid #0678BC; }

.program-cta-btn:hover {
  background-color: #ffffff;
  border: 1px solid #0678BC;
  cursor: pointer;
  color: #0678BC;
  padding: 10px;
  font-size: 14px;
  width: 240px;
  text-align: center;
  margin-top: 1.5vh;
  margin-left: 50px;
  float: left;
  background-image: url(../../img/button-caret-blue-small.png);
  background-repeat: no-repeat;
  background-position: 94%;
  font-weight: bolder; }

.access-top {
  border-top: 1px solid lightgrey;
  margin-top: 20px;
  padding-top: 42px;
  padding-bottom: 42px; }

.vehicles-bottom {
  margin-bottom: 80px; }

/* New Styles - Wednesday Nov 21st */
.email-tag {
  color: #ffffff;
  text-decoration: underline; }

.access-informed {
  color: #0678bc;
  font-size: 22px;
  padding-top: 30px; }

.faqs-back {
  background-color: #ffffff;
  font-weight: bolder; }

.headline-faqs {
  color: black; }

.faqs-border {
  border: none;
  border-bottom: none !important;
  font-size: 18px;
  text-transform: none;
  padding-left: 3rem; }
  .faqs-border:before {
    display: block;
    top: 50%;
    right: auto;
    left: 0;
    margin-top: -0.5rem;
    content: '+';
    width: 1.5rem;
    height: 1.5rem;
    padding: 0.15rem 0 0 0.35rem;
    color: #ffffff;
    background: #0075b6;
    border-radius: 50px; }
  .faqs-border:after {
    display: none; }

.content-back {
  background-color: white !important;
  border: none !important;
  border-bottom: 3px solid #0678BC !important;
  font-size: 16px; }

.head-access {
  background-color: #0678BC;
  color: #ffffff;
  padding: 10px;
  font-weight: bolder;
  text-align: right; }

.light-background h3 {
  color: #000000; }

.blue-background {
  background-color: #082a47; }

.darkgray-background {
  background-color: #333333; }
  .darkgray-background p {
    color: #ffffff; }

.white {
  color: #ffffff; }
  .white:hover {
    color: #ffffff; }

.padded-bucket {
  padding: 2rem; }

.pad-bottom {
  margin-bottom: 2rem; }

.darkgray-background li.accordion-item.is-active > .accordion-content:last-child, .darkgray-background li.accordion-item > .accordion-content:last-child {
  border: 0 solid transparent;
  border-top-width: 0px;
  background: #333333; }

.darkgray-background label {
  color: #ffffff; }

.wsl-bucket {
  margin-top: 10%; }

.garage .send-to-dealer .dealer-search-call div.check-container {
  cursor: auto; }

/* Extra Small only */
@media screen and (max-width: 23.75em) {
  .keep-updated .check-container {
    font-size: 3.5vw !important;
    padding-left: 6.2vw;
    margin: 1rem 0.5rem 1rem; }
  .keep-updated fieldset.checkbox-group {
    margin-bottom: 1rem; }
  .keep-updated .checkmark {
    top: 0;
    left: -4px;
    height: 4.5vw;
    width: 4.5vw; } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 2rem); } }

.main-menu-dropper {
  position: absolute;
  background: #ffffff;
  width: 100%;
  height: 0;
  border-top: 1px solid #000000;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  -webkit-transition: height 1s ease;
  transition: height 1s ease; }
  .main-menu-dropper dt {
    border-bottom: 1px solid #000000;
    font-size: 1vw; }
  .main-menu-dropper dd {
    font-size: 0.75vw;
    padding: 0.5vw 0; }

.main-menu-vehicles {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap; }
  .main-menu-vehicles dt {
    width: 100%; }
  .main-menu-vehicles dd {
    width: 25%;
    display: block;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    min-height: 0px;
    min-width: 0px;
    text-align: center; }

.sticky.is-anchored {
  z-index: 25; }

/* Open navigiation */
.main-menu-dropper.is-active {
  width: 100%;
  height: auto;
  opacity: 1;
  visibility: visible;
  overflow: auto; }

.main-nav-contents {
  background: #ffffff;
  padding: 2vw; }

/* Medium only */
@media screen and (max-width: 63.9375em) {
  .main-menu-dropper dt {
    font-size: 1.3vw; }
  .main-menu-dropper dd {
    font-size: 1vw;
    padding: 0.75vw 0; } }

/* Small only */
@media screen and (max-width: 39.9375em) {
  .is-active .main-nav-contents {
    height: 70vh;
    overflow-y: scroll; }
  .main-menu-dropper dt {
    font-size: 4vw; }
  .main-menu-dropper dd {
    font-size: 3vw;
    padding: 1.75vw 0; }
  .main-menu-vehicles dd {
    width: 50%; }
  .vanish {
    display: none; } }

.big-statement {
  text-align: center;
  font-size: 1.5rem;
  font-family: 'FordAntenna-Medium'; }

.commercial-tax-guidelines .accessibility-info {
  padding: 0; }

.ffl-panel {
  color: #ffffff;
  margin-bottom: 1rem;
  background-position: top center !important;
  background-size: cover !important; }
  .ffl-panel.grid-padding-x > .cell {
    padding-right: 1vw;
    padding-left: 1vw; }
    .ffl-panel.grid-padding-x > .cell.ffl-message {
      padding-left: 2vw;
      padding-top: 2vw; }
    .ffl-panel.grid-padding-x > .cell.ffl-image {
      padding-top: 3vw;
      position: relative; }
  .ffl-panel .ffl-logo {
    width: 14.1vw;
    margin-bottom: 1vw; }
  .ffl-panel h3 {
    font-family: 'FordAntenna-Black';
    text-transform: uppercase;
    font-size: 2.5vw;
    line-height: 1;
    letter-spacing: 4px;
    margin-bottom: 0.5vw;
    width: 130%;
    margin-left: -19.5%;
    -webkit-transform: scaleX(0.7);
    -ms-transform: scaleX(0.7);
    transform: scaleX(0.7);
    margin-bottom: 0.875vw; }
    .ffl-panel h3 small {
      font-family: 'FordAntenna-Regular';
      color: #ffffff;
      display: inline-block;
      width: 120%;
      margin-left: -12%;
      -webkit-transform: scaleX(0.8);
      -ms-transform: scaleX(0.8);
      transform: scaleX(0.8); }
  .ffl-panel a {
    text-transform: uppercase; }
  .ffl-panel .ffl-featuring {
    text-transform: uppercase;
    font-size: 1.2vw;
    line-height: 1;
    letter-spacing: 4px;
    margin-bottom: 0.5vw;
    width: 140%;
    margin-left: -28%;
    -webkit-transform: scaleX(0.6);
    -ms-transform: scaleX(0.6);
    transform: scaleX(0.6);
    margin-bottom: 0.875vw; }
    .ffl-panel .ffl-featuring a {
      color: #00a4e4; }
  .ffl-panel .ffl-copy {
    font-family: 'FordAntenna-Light', san-serif;
    font-size: 0.875vw;
    line-height: 1.2;
    letter-spacing: 4px;
    margin-bottom: 0.5vw;
    width: 130%;
    margin-left: -19.5%;
    -webkit-transform: scaleX(0.7);
    -ms-transform: scaleX(0.7);
    transform: scaleX(0.7);
    margin-bottom: 0.875vw; }
  .ffl-panel .ffl-blue {
    background-color: #00a4e4;
    overflow: hidden;
    position: relative; }
    .ffl-panel .ffl-blue .ffl-align-self {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 90%; }
    .ffl-panel .ffl-blue a {
      border: 2px solid #00a4e4;
      display: block; }
      .ffl-panel .ffl-blue a:hover, .ffl-panel .ffl-blue a:focus {
        border-color: #ffffff; }
    .ffl-panel .ffl-blue img {
      width: 40%;
      padding: 0.5vw 0; }
    .ffl-panel .ffl-blue span.ffl-explore {
      font-family: 'FordAntenna-Light', san-serif;
      display: inline-block;
      text-transform: uppercase;
      font-size: 1.2vw;
      line-height: 1.2;
      letter-spacing: 4px;
      margin-bottom: 0.5vw;
      white-space: nowrap;
      padding-top: 1vw;
      width: 130%;
      margin-left: -15%;
      -webkit-transform: scaleX(0.7);
      -ms-transform: scaleX(0.7);
      transform: scaleX(0.7); }
    .ffl-panel .ffl-blue span.ffl-events {
      font-family: 'FordAntenna-Black', san-serif;
      display: inline-block;
      text-transform: uppercase;
      font-size: 4.5vw;
      line-height: 1.2;
      letter-spacing: 8px;
      width: 130%;
      margin-left: -15%;
      margin-top: -0.5vw;
      -webkit-transform: scaleX(0.7);
      -ms-transform: scaleX(0.7);
      transform: scaleX(0.7); }
  .ffl-panel .ffl-disclaimer {
    position: absolute;
    font-size: 0.5vw;
    bottom: 0;
    left: 0;
    z-index: 10; }

.bev-panel {
  color: #ffffff;
  margin-bottom: 1rem;
  background-position: center -9vw !important;
  background-size: cover !important;
  text-align: center; }
  .bev-panel.grid-padding-x > .cell {
    padding-right: 1vw;
    padding-left: 1vw; }
    .bev-panel.grid-padding-x > .cell.ffl-message {
      padding-left: 2vw;
      padding-top: 2vw; }
    .bev-panel.grid-padding-x > .cell.ffl-image {
      padding-top: 3vw;
      position: relative; }
  .bev-panel .bev-logo {
    width: 30vw;
    margin-bottom: 3vw; }
  .bev-panel h3 {
    font-family: 'FordAntenna-Regular';
    text-transform: uppercase;
    font-size: 2.5vw;
    line-height: 1;
    letter-spacing: 6px;
    margin-bottom: 0.5vw;
    -webkit-transform: scaleX(0.7);
    -ms-transform: scaleX(0.7);
    transform: scaleX(0.7);
    margin-bottom: 2.875vw;
    margin-top: 1.875vw;
    color: #00a4e4;
    text-shadow: 0px 0px 15px #2baff4; }
    .bev-panel h3 small {
      font-family: 'FordAntenna-Regular';
      color: #ffffff;
      display: inline-block;
      width: 120%;
      margin-left: -12%;
      -webkit-transform: scaleX(0.8);
      -ms-transform: scaleX(0.8);
      transform: scaleX(0.8); }
    .bev-panel h3 span {
      font-family: 'FordAntenna-Bold';
      color: #fff;
      text-shadow: 0px 0px 15px rgba(255, 255, 255, 0.75); }
  .bev-panel a {
    text-transform: uppercase; }
  .bev-panel .bev-featuring {
    text-transform: uppercase;
    font-size: 2vw;
    line-height: 1;
    letter-spacing: 4px;
    margin-bottom: 0.5vw;
    -webkit-transform: scaleX(0.7);
    -ms-transform: scaleX(0.7);
    transform: scaleX(0.7);
    margin-bottom: 2.875vw;
    text-shadow: 0px 0px 15px rgba(255, 255, 255, 0.75); }
    .bev-panel .bev-featuring a {
      color: #00a4e4;
      text-shadow: 0px 0px 15px #2baff4; }
  .bev-panel .bev-copy {
    font-family: 'FordAntenna-Light', san-serif;
    font-size: 0.875vw;
    line-height: 1.2;
    letter-spacing: 4px;
    margin-bottom: 0.5vw;
    width: 130%;
    margin-left: -19.5%;
    -webkit-transform: scaleX(0.7);
    -ms-transform: scaleX(0.7);
    transform: scaleX(0.7);
    margin-bottom: 0.875vw; }
  .bev-panel .bev-blue {
    background-color: #00a4e4;
    overflow: hidden;
    position: relative; }
    .bev-panel .bev-blue .bev-align-self {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 90%; }
    .bev-panel .bev-blue a {
      border: 2px solid #00a4e4;
      display: block; }
      .bev-panel .bev-blue a:hover, .bev-panel .bev-blue a:focus {
        border-color: #ffffff; }
    .bev-panel .bev-blue img {
      width: 40%;
      padding: 0.5vw 0; }
    .bev-panel .bev-blue span.bev-explore {
      font-family: 'FordAntenna-Light', san-serif;
      display: inline-block;
      text-transform: uppercase;
      font-size: 1.2vw;
      line-height: 1.2;
      letter-spacing: 4px;
      margin-bottom: 0.5vw;
      white-space: nowrap;
      padding-top: 1vw;
      width: 130%;
      margin-left: -15%;
      -webkit-transform: scaleX(0.7);
      -ms-transform: scaleX(0.7);
      transform: scaleX(0.7); }
    .bev-panel .bev-blue span.bev-events {
      font-family: 'FordAntenna-Black', san-serif;
      display: inline-block;
      text-transform: uppercase;
      font-size: 4.5vw;
      line-height: 1.2;
      letter-spacing: 8px;
      width: 130%;
      margin-left: -15%;
      margin-top: -0.5vw;
      -webkit-transform: scaleX(0.7);
      -ms-transform: scaleX(0.7);
      transform: scaleX(0.7); }
  .bev-panel .bev-disclaimer {
    position: absolute;
    font-size: 0.5vw;
    bottom: 0;
    left: 0;
    z-index: 10; }

@media screen and (min-width: 40em) and (max-width: 64.994em) {
  .ffl-panel .ffl-blue span.ffl-explore {
    letter-spacing: 2px; }
  .ffl-panel .ffl-blue span.ffl-events {
    letter-spacing: 4px; } }

@media screen and (max-width: 39.9375em) {
  .ffl-panel .ffl-logo {
    width: 50vw;
    margin-bottom: 3vw; }
  .ffl-panel h3 {
    font-size: 5.5vw;
    margin-bottom: 2.875vw; }
  .ffl-panel .ffl-featuring {
    font-size: 4.2vw;
    margin-bottom: 2.875vw; }
  .ffl-panel .ffl-copy {
    font-size: 3.875vw;
    margin-bottom: 2.875vw; }
  .ffl-panel .ffl-blue img {
    width: 15%;
    padding: 2.5vw 0; }
  .ffl-panel .ffl-blue span.ffl-explore {
    font-size: 4.2vw; }
  .ffl-panel .ffl-blue span.ffl-events {
    font-size: 16.5vw;
    margin-top: -2.5vw; }
  .ffl-panel.grid-padding-x > .cell.ffl-message {
    padding-left: 5vw;
    padding-top: 5vw; }
  .ffl-panel {
    background-position: top left !important; }
  .ffl-panel.grid-padding-x > .cell.ffl-image {
    padding-top: 3vw;
    padding-right: 3vw;
    padding-left: 3vw; }
  .ffl-panel .ffl-disclaimer {
    font-size: 1.5vw;
    left: 4vw; }
  .ffl-panel .ffl-blue .ffl-align-self {
    position: relative;
    top: 0;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    width: 100%; }
  .bev-panel {
    background-position: -8vw -4vw !important;
    background-size: 150% !important; }
  .bev-panel h3 {
    font-size: 5.5vw;
    margin-bottom: 5.875vw;
    margin-top: 4.875vw; }
  .bev-panel .bev-logo {
    width: 80vw;
    margin-bottom: 6vw; }
  .bev-panel .bev-featuring {
    font-size: 5vw;
    margin-bottom: 5.875vw; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIm1peGlucy9fZm9udC1mYWNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmVydGljYWwtcmh5dGhtLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCJ2ZW5kb3IvX2Fvcy5zY3NzIiwidmVuZG9yL19zbGljay1jYXJvdXNlbC5zY3NzIiwidmVuZG9yL19pbmRleC1tZW51LnNjc3MiLCJtaXhpbnMvX2NvbnRhaW5lci1ib3JkZXIuc2NzcyIsIm1peGlucy9fYXZhdGFyLnNjc3MiLCJtaXhpbnMvX2hlbHBlcnMuc2NzcyIsIm1peGlucy9fbmF2Ymx1ci5zY3NzIiwibWl4aW5zL19zaWRlbGluZXMuc2NzcyIsIm1peGlucy9femluZGV4LnNjc3MiLCJnbG9iYWwvX2FwcC1kYXNoYm9hcmQuc2NzcyIsImNvbXBvbmVudHMvbmF2aWdhdGlvbi9fbWFpbi1uYXYuc2NzcyIsImFwcC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7R0FLRztBQzhKRztFQ3ZISjtJQUNFLFlBQVc7SUFDWCxXQUFVO0lBQ1YsZUFBYyxFQUNmLEVBQUE7O0FDL0NILGVBQWU7QUM0Q2IsaUVBQWlFO0FBRy9EO29GQUNnRjtBQUVoRjs7Ozs7T0FLRztBQUVIO0VBQ0Usd0JDMUN1QjtFRDBDUyxPQUFPO0VBUXJDLGtCQUFpQjtFQUFFLE9BQU87RUFFNUIsMkJBQTBCO0VBQUUsT0FBTztFQUNuQywrQkFBOEI7RUFBRSxPQUFPLEVBQ3hDOztBQUlEO29GQUNnRjtBQUVoRjs7T0FFRztBQUVIO0VBQ0UsVUFBUyxFQUNWOztBQUVEOztPQUVHO0FBRUg7Ozs7OztFQU1FLGVBQWMsRUFDZjs7QUFFRDs7O09BR0c7QUFFSDtFRTlFRixlQVh1QztFRm9HakMsaUJBQWdCLEVBRW5COztBQW9DRDtvRkFDZ0Y7QUF1Q2hGOztPQUVHO0FBRUg7O0VBRUUsZUFBYyxFQUNmOztBQUVEOztPQUVHO0FBRUg7RUFLSSxpQkN2TFksRUR5TGY7O0FBRUQ7OztPQUdHO0FBRUg7RUFDRSxnQ0FBdUI7VUFBdkIsd0JBQXVCO0VBQUUsT0FBTztFQUNoQyxVQUFTO0VBQUUsT0FBTztFQUNsQixrQkFBaUI7RUFBRSxPQUFPLEVBQzNCOztBQUVEOztPQUVHO0FBRUg7RUFDRSxlQUFjLEVBQ2Y7O0FBYUQ7OztPQUdHO0FBRUg7RUFDRSxrQ0FBaUM7RUFBRSxPQUFPO0VBQzFDLGVBQWM7RUFBRSxPQUFPLEVBQ3hCOztBQUlEO29GQUNnRjtBQUVoRjs7O09BR0c7QUFFSDtFQUNFLDhCQUE2QjtFQUFFLE9BQU87RUFDdEMsc0NBQXFDO0VBQUUsT0FBTyxFQUMvQzs7QUFFRDs7O09BR0c7QUFFSDs7RUFFRSxpQkFBZ0IsRUFDakI7O0FBSUQ7b0ZBQ2dGO0FBRWhGOzs7T0FHRztBQUVIO0VBQ0Usb0JBQW1CO0VBQUUsT0FBTztFQUM1QiwyQkFBMEI7RUFBRSxPQUFPO0VBQ25DLDBDQUFpQztVQUFqQyxrQ0FBaUM7RUFBRSxPQUFPLEVBQzNDOztBQUVEOztPQUVHO0FBRUg7O0VBRUUscUJBQW9CLEVBQ3JCOztBQUVEOztPQUVHO0FBUEg7O0VBV0Usb0JBQW1CLEVBQ3BCOztBQUVEOzs7T0FHRztBQUVIOzs7RUFHRSxrQ0FBaUM7RUFBRSxPQUFPO0VBQzFDLGVBQWM7RUFBRSxPQUFPLEVBQ3hCOztBQUVEOztPQUVHO0FBRUg7RUFDRSxtQkFBa0IsRUFDbkI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLHVCQUFzQjtFQUN0QixZQUFXLEVBQ1o7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGVBQWMsRUFDZjs7QUFFRDs7O09BR0c7QUFFSDs7RUFFRSxlQUFjO0VBQ2QsZUFBYztFQUNkLG1CQUFrQjtFQUNsQix5QkFBd0IsRUFDekI7O0FBRUQ7RUFDRSxnQkFBZSxFQUNoQjs7QUFFRDtFQUNFLFlBQVcsRUFDWjs7QUFJRDtvRkFDZ0Y7QUFFaEY7O09BRUc7QUFFSDs7RUFFRSxzQkFBcUIsRUFDdEI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGNBQWE7RUFDYixVQUFTLEVBQ1Y7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLG1CQUFrQixFQUNuQjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsaUJBQWdCLEVBQ2pCOztBQUlEO29GQUNnRjtBQUVoRjs7O09BR0c7QUFFSDs7Ozs7RUFLRSx3QkN6WnVCO0VEeVpTLE9BQU87RUFDdkMsZ0JBQWU7RUFBRSxPQUFPO0VBS3RCLGtCQUFpQjtFQUFFLE9BQU87RUFFNUIsVUFBUztFQUFFLE9BQU8sRUFDbkI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGtCQUFpQixFQUNsQjs7QUFFRDs7O09BR0c7QUFFSDs7RUFDUyxPQUFPO0VBQ2QscUJBQW9CLEVBQ3JCOztBQUVEOzs7O09BSUc7QUFFSDs7OztFQUlFLDJCQUEwQjtFQUFFLE9BQU8sRUFDcEM7O0FBRUQ7Ozs7RUFLRTs7U0FFRztFQU9IOztTQUVHLEVBS0o7RUFyQkQ7Ozs7SUFVSSxtQkFBa0I7SUFDbEIsV0FBVSxFQUNYO0VBWkg7Ozs7SUFtQkksK0JBQThCLEVBQy9COztBQUdIOztPQUVHO0FBRUg7RUFDRSxrQkFBaUIsRUFDbEI7O0FBRUQ7OztPQUdHO0FMcE1QOztFS3dNTSwrQkFBc0I7VUFBdEIsdUJBQXNCO0VBQUUsT0FBTztFQUMvQixXQUFVO0VBQUUsT0FBTyxFQUNwQjs7QUFFRDs7T0FFRztBTHBNUDs7RUt3TU0sYUFBWSxFQUNiOztBQUVEOzs7T0FHRztBTHRNUDtFS3lNTSw4QkFBNkI7RUFBRSxPQUFPO0VBQ3RDLHFCQUFvQjtFQUFFLE9BQU87RUFFN0I7O1NBRUcsRUFNSjtFTDVNSDtJSzBNTSx5QkFBd0IsRUFDekI7O0FBR0g7OztPQUdHO0FBRUg7RUFDRSwyQkFBMEI7RUFBRSxPQUFPO0VBQ25DLGNBQWE7RUFBRSxPQUFPLEVBQ3ZCOztBQUVEOztPQUVHO0FBRUg7RUFDRSwwQkFBeUI7RUFDekIsY0FBYTtFQUNiLCtCQUE4QixFQUMvQjs7QUFFRDs7Ozs7T0FLRztBQUVIO0VBQ0UsK0JBQXNCO1VBQXRCLHVCQUFzQjtFQUFFLE9BQU87RUFDL0IsZUFBYztFQUFFLE9BQU87RUFDdkIsZ0JBQWU7RUFBRSxPQUFPO0VBQ3hCLFdBQVU7RUFBRSxPQUFPO0VBQ25CLGVBQWM7RUFBRSxPQUFPO0VBQ3ZCLG9CQUFtQjtFQUFFLE9BQU8sRUFDN0I7O0FBRUQ7OztPQUdHO0FBRUg7RUFDRSxzQkFBcUI7RUFBRSxPQUFPO0VBQzlCLHlCQUF3QjtFQUFFLE9BQU8sRUFDbEM7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGVBQWMsRUFDZjs7QUFJRDtvRkFDZ0Y7QUFFaEY7O09BRUc7QUFFSDtFQUNFLGVBQWMsRUFDZjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsbUJBQWtCLEVBQ25COztBQUVEOztPQUVHO0FBRUg7RUFDRSxlQUFjLEVBcUJmOztBQUlEO29GQUNnRjtBQUVoRjs7T0FFRztBQUVIO0VBQ0Usc0JBQXFCLEVBQ3RCOztBQUVEOztPQUVHO0FBRUg7RUFDRSxjQUFhLEVBQ2Q7O0FBSUQ7b0ZBQ2dGO0FBRWhGOztPQUVHO0FMalBQO0VLb1BNLGNBQWEsRUFDZDs7QUd2aEJIO0VBQ0UseUVBQWdELEVBQ2pEOztBSGxGQztFR3FGQSwrQkFBc0I7VUFBdEIsdUJBQXNCO0VBQ3RCLGdCQzFFbUIsRUQyRXBCOztBQUdEOzs7RUFHRSw0QkFBbUI7VUFBbkIsb0JBQW1CLEVBQ3BCOztBSHRFQztFRzBFQSxVQUFTO0VBQ1QsV0FBVTtFQUVWLG9CQzNFVztFRDZFWCwrQ0N0RWdEO0VEdUVoRCxvQkNsRXlCO0VEbUV6QixpQkMzRm1CO0VENEZuQixlQ2pGVztFRG9GVCxvQ0FBbUM7RUFDbkMsbUNBQWtDLEVBRXJDOztBSHFPQztFR2pPQSxzQkFBcUI7RUFDckIsdUJBQXNCO0VBR3RCLGdCQUFlO0VBQ2YsYUFBWTtFQUNaLGdDQUErQixFQUNoQzs7QUh1WkM7RUduWkEsYUFBWTtFQUNaLGlCQUFnQjtFQUNoQixpQkN6RmEsRUQwRmQ7O0FBR0Q7RUFDRSwrQkFBc0I7VUFBdEIsdUJBQXNCO0VBQ3RCLFlBQVc7RUFDWCxpQkNoR2EsRURpR2Q7O0FBSUQ7Ozs7OztFQUtJLDJCQUEwQixFQUMzQjs7QUg0T0Q7RUd0T0EsV0FBVTtFQUNWLHlCQUFnQjtLQUFoQixzQkFBZ0I7VUFBaEIsaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxpQkNwSGE7RURxSGIsd0JBQXVCO0VBQ3ZCLGVBQWM7RUFDZCxnQkNqSDBCLEVEa0gzQjtFUjZRRDtJVTdSRSxXQUFVLEVBQ1g7O0FMK0NDO0VHNUJBLGVBQWMsRUFDZjs7QUhzTUM7Ozs7O0VHOUxBLHFCQUFvQixFQUNyQjs7QUFHRDtFQUNFLDBCQUF5QixFQUMxQjs7QUFFRDtFQUNFLHlCQUF3QixFQUN6Qjs7QUd0TkQ7RUNzRUEsaUJDVHVEO0VEMUJyRCxtQkFBa0I7RUFDbEIsa0JBQWlCLEVEU2xCO0VEaUdEO0lBRUUsZUFBYztJQUNkLGFBQVk7SUFHVixzQkFBYTtRQUFiLDJCQUFhO1lBQWIsY0FBYTtJQUNiLDZCQUFRO0lBQVIsaUJBQVE7UUFBUixrQkFBUTtZQUFSLFNBQVEsRUFFWDtFQUVEO0lBQ0UsWUFBVyxFQUNaO0VDM0pEO0lHTEUsaUJEdUVTO0lDdEVULGdCRHNFUyxFRjNETjtFQVBMO0lDeURFLHdCQUYrRDtJQUcvRCx1QkFIK0QsRURyQzlEO0lUc0hDO01TeElKO1FDeURFLHlCQUYrRDtRQUcvRCx3QkFIK0QsRURyQzlELEVBQUE7SVRzSEM7TVN4SUo7UUN5REUseUJBRitEO1FBRy9ELHdCQUgrRCxFRHJDOUQsRUFBQTtJQWxCSDtNQWVNLGdCQUFlO01BQ2YsZUFBYyxFQUNmO0VBakJMO0lDc0VBLGdCQUhhLEVEdkNWO0lBNUJIO01BeUJNLG1CQUFrQjtNQUNsQixrQkFBaUIsRUFDbEI7RUEzQkw7SUNzRUEsZ0JBSGEsRURuQ1Y7RUFoQ0g7SUdMRSx3QkFGcUM7SUFHckMsdUJBSHFDLEVIZ0Q5QjtFQXpDVDtJR0xFLHlCQUZxQztJQUdyQyx3QkFIcUMsRUhnRDlCOztBQU9UO0VJN0RBLFlDZXFEO0VBK0JyRCxZUjREeUQ7RU1sR3ZELHdCQUZxQztFQUdyQyx1QkFIcUMsRUgrRHRDO0VUZ0ZHO0lTeEZKO01HckRFLHlCQUZxQztNQUdyQyx3QkFIcUMsRUgrRHRDLEVBQUE7RUtoQkM7SUFDRSxhUnFEc0QsRVFwRHZEO0VDckJIO0lBQ0UsWVR1RXVELEVTdEV4RDs7QU5xQ0Q7RUFDRSxZQUFXLEVBQ1o7O0FBR0Q7RUFDRSxnQkFBZTtFQUNmLGVBQWM7RUFDZCxpQkFBZ0I7RUFDaEIsZ0JBQWUsRUFDaEI7O0FBS0c7RUl4RkosZ0JDZXFELEVMMkVoRDs7QUFJQztFTTdGSixtQkFBa0I7RUFDbEIsZUFIbUQsRU5pRzlDOztBQUVEO0VNakdKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU5xRzlDOztBQU1IO0VNOUVKLGdCRGhCZ0MsRUxnRzNCOztBQXBCRDtFSXhGSixpQkNlcUQsRUwyRWhEOztBQUlDO0VNN0ZKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU5pRzlDOztBQUVEO0VNakdKLG1CQUFrQjtFQUNsQixpQkFIbUQsRU5xRzlDOztBQU1IO0VNOUVKLHNCRGJxRCxFTDZGaEQ7O0FBcEJEO0VJeEZKLFdDZXFELEVMMkVoRDs7QUFJQztFTTdGSixtQkFBa0I7RUFDbEIsVUFIbUQsRU5pRzlDOztBQUVEO0VNakdKLG1CQUFrQjtFQUNsQixXQUhtRCxFTnFHOUM7O0FBTUg7RU05RUosdUJEYnFELEVMNkZoRDs7QUFwQkQ7RUl4RkosaUJDZXFELEVMMkVoRDs7QUFJQztFTTdGSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOaUc5Qzs7QUFFRDtFTWpHSixtQkFBa0I7RUFDbEIsaUJBSG1ELEVOcUc5Qzs7QUFNSDtFTTlFSixpQkRicUQsRUw2RmhEOztBQXBCRDtFSXhGSixpQkNlcUQsRUwyRWhEOztBQUlDO0VNN0ZKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU5pRzlDOztBQUVEO0VNakdKLG1CQUFrQjtFQUNsQixpQkFIbUQsRU5xRzlDOztBQU1IO0VNOUVKLHVCRGJxRCxFTDZGaEQ7O0FBcEJEO0VJeEZKLFdDZXFELEVMMkVoRDs7QUFJQztFTTdGSixtQkFBa0I7RUFDbEIsVUFIbUQsRU5pRzlDOztBQUVEO0VNakdKLG1CQUFrQjtFQUNsQixXQUhtRCxFTnFHOUM7O0FBTUg7RU05RUosdUJEYnFELEVMNkZoRDs7QUFwQkQ7RUl4RkosaUJDZXFELEVMMkVoRDs7QUFJQztFTTdGSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOaUc5Qzs7QUFFRDtFTWpHSixtQkFBa0I7RUFDbEIsaUJBSG1ELEVOcUc5Qzs7QUFNSDtFTTlFSixpQkRicUQsRUw2RmhEOztBQXBCRDtFSXhGSixpQkNlcUQsRUwyRWhEOztBQUlDO0VNN0ZKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU5pRzlDOztBQUVEO0VNakdKLG1CQUFrQjtFQUNsQixpQkFIbUQsRU5xRzlDOztBQU1IO0VNOUVKLHVCRGJxRCxFTDZGaEQ7O0FBcEJEO0VJeEZKLFdDZXFELEVMMkVoRDs7QUFJQztFTTdGSixtQkFBa0I7RUFDbEIsVUFIbUQsRU5pRzlDOztBQUVEO0VNakdKLG1CQUFrQjtFQUNsQixXQUhtRCxFTnFHOUM7O0FBTUg7RU05RUosdUJEYnFELEVMNkZoRDs7QUFwQkQ7RUl4RkosaUJDZXFELEVMMkVoRDs7QUFJQztFTTdGSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOaUc5Qzs7QUFFRDtFTWpHSixtQkFBa0I7RUFDbEIsaUJBSG1ELEVOcUc5Qzs7QUFNSDtFTTlFSixpQkRicUQsRUw2RmhEOztBQXBCRDtFSXhGSixpQkNlcUQsRUwyRWhEOztBQUlDO0VNN0ZKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU5pRzlDOztBQUVEO0VNakdKLG1CQUFrQjtFQUNsQixpQkFIbUQsRU5xRzlDOztBQU1IO0VNOUVKLHVCRGJxRCxFTDZGaEQ7O0FBcEJEO0VJeEZKLFlDZXFELEVMMkVoRDs7QUFnQkQ7RU05RUosdUJEYnFELEVMNkZoRDs7QUFLRDtFT3pHRixZVmtHdUQ7RVVqR3ZELFlBQXVCLEVBaUN4QjtFUHVFRztJT2pGQSxZQUFXLEVBQ1o7RVBnRkM7SU83RUEsWUFBVyxFQUNaO0VQNEVDO0lPekVBLFlWa0VxRCxFVWpFdEQ7O0FQd0VDO0VPekdGLFlWa0d1RDtFVWpHdkQsV0FBdUIsRUFpQ3hCO0VQdUVHO0lPakZBLFlBQVcsRUFDWjtFUGdGQztJTzdFQSxZQUFXLEVBQ1o7RVA0RUM7SU96RUEsWVZrRXFELEVVakV0RDs7QVB3RUM7RU96R0YsWVZrR3VEO0VVakd2RCxpQkFBdUIsRUFpQ3hCO0VQdUVHO0lPakZBLFlBQVcsRUFDWjtFUGdGQztJTzdFQSxZQUFXLEVBQ1o7RVA0RUM7SU96RUEsWVZrRXFELEVVakV0RDs7QVB3RUM7RU96R0YsWVZrR3VEO0VVakd2RCxXQUF1QixFQWlDeEI7RVB1RUc7SU9qRkEsWUFBVyxFQUNaO0VQZ0ZDO0lPN0VBLFlBQVcsRUFDWjtFUDRFQztJT3pFQSxZVmtFcUQsRVVqRXREOztBUHdFQztFT3pHRixZVmtHdUQ7RVVqR3ZELFdBQXVCLEVBaUN4QjtFUHVFRztJT2pGQSxZQUFXLEVBQ1o7RVBnRkM7SU83RUEsWUFBVyxFQUNaO0VQNEVDO0lPekVBLFlWa0VxRCxFVWpFdEQ7O0FQd0VDO0VPekdGLFlWa0d1RDtFVWpHdkQsaUJBQXVCLEVBaUN4QjtFUHVFRztJT2pGQSxZQUFXLEVBQ1o7RVBnRkM7SU83RUEsWUFBVyxFQUNaO0VQNEVDO0lPekVBLFlWa0VxRCxFVWpFdEQ7O0FQd0VDO0VPekdGLFlWa0d1RDtFVWpHdkQsaUJBQXVCLEVBaUN4QjtFUHVFRztJT2pGQSxZQUFXLEVBQ1o7RVBnRkM7SU83RUEsWUFBVyxFQUNaO0VQNEVDO0lPekVBLFlWa0VxRCxFVWpFdEQ7O0FQd0VDO0VPekdGLFlWa0d1RDtFVWpHdkQsYUFBdUIsRUFpQ3hCO0VQdUVHO0lPakZBLFlBQVcsRUFDWjtFUGdGQztJTzdFQSxZQUFXLEVBQ1o7RVA0RUM7SU96RUEsWVZrRXFELEVVakV0RDs7QVA4RUQ7RUcvR0EsaUJEdUVTO0VDdEVULGdCRHNFUyxFRnlDdUM7O0FBRGhEO0VBSUksZ0JBQWU7RUFDZixlQUFjLEVBQ2Y7O0FBR0g7RUFDRSxnQkFBZTtFQUNmLGVBQWMsRUFDZjs7QUFFRDtFRzdIQSx3QkFGcUM7RUFHckMsdUJBSHFDLEVIZ0lvQjs7QUFJekQ7RU1qSUEsbUJBQWtCO0VBQ2xCLGtCQUFpQixFTmtJaEI7RU12SUQ7SUFDRSxZQUFXO0lBQ1gsWUFBVyxFQUNaOztBTnVJRDs7O0VNNUhGLGlCQUFnQjtFQUNoQixZVHNGeUQ7RVNyRnpELGdCQUFlO0VBQ2YsZUFBYyxFTjZIWDs7QVRFQztFUzdEQTtJSXhGSixnQkNlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1ELEVOaUc5QztFQUVEO0lNakdKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU5xRzlDO0VBTUg7SU05RUosZ0JEaEJnQyxFTGdHM0I7RUFwQkQ7SUl4RkosaUJDZXFELEVMMkVoRDtFQUlDO0lNN0ZKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU5pRzlDO0VBRUQ7SU1qR0osbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTnFHOUM7RUFNSDtJTTlFSixzQkRicUQsRUw2RmhEO0VBcEJEO0lJeEZKLFdDZXFELEVMMkVoRDtFQUlDO0lNN0ZKLG1CQUFrQjtJQUNsQixVQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsV0FIbUQsRU5xRzlDO0VBTUg7SU05RUosdUJEYnFELEVMNkZoRDtFQXBCRDtJSXhGSixpQkNlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVOcUc5QztFQU1IO0lNOUVKLGlCRGJxRCxFTDZGaEQ7RUFwQkQ7SUl4RkosaUJDZXFELEVMMkVoRDtFQUlDO0lNN0ZKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU5pRzlDO0VBRUQ7SU1qR0osbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTnFHOUM7RUFNSDtJTTlFSix1QkRicUQsRUw2RmhEO0VBcEJEO0lJeEZKLFdDZXFELEVMMkVoRDtFQUlDO0lNN0ZKLG1CQUFrQjtJQUNsQixVQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsV0FIbUQsRU5xRzlDO0VBTUg7SU05RUosdUJEYnFELEVMNkZoRDtFQXBCRDtJSXhGSixpQkNlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVOcUc5QztFQU1IO0lNOUVKLGlCRGJxRCxFTDZGaEQ7RUFwQkQ7SUl4RkosaUJDZXFELEVMMkVoRDtFQUlDO0lNN0ZKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU5pRzlDO0VBRUQ7SU1qR0osbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTnFHOUM7RUFNSDtJTTlFSix1QkRicUQsRUw2RmhEO0VBcEJEO0lJeEZKLFdDZXFELEVMMkVoRDtFQUlDO0lNN0ZKLG1CQUFrQjtJQUNsQixVQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsV0FIbUQsRU5xRzlDO0VBTUg7SU05RUosdUJEYnFELEVMNkZoRDtFQXBCRDtJSXhGSixpQkNlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVOcUc5QztFQU1IO0lNOUVKLGlCRGJxRCxFTDZGaEQ7RUFwQkQ7SUl4RkosaUJDZXFELEVMMkVoRDtFQUlDO0lNN0ZKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU5pRzlDO0VBRUQ7SU1qR0osbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTnFHOUM7RUFNSDtJTTlFSix1QkRicUQsRUw2RmhEO0VBcEJEO0lJeEZKLFlDZXFELEVMMkVoRDtFQWdCRDtJTTlFSix1QkRicUQsRUw2RmhEO0VBS0Q7SU96R0YsWVZrR3VEO0lVakd2RCxZQUF1QixFQWlDeEI7SVB1RUc7TU9qRkEsWUFBVyxFQUNaO0lQZ0ZDO01PN0VBLFlBQVcsRUFDWjtJUDRFQztNT3pFQSxZVmtFcUQsRVVqRXREO0VQd0VDO0lPekdGLFlWa0d1RDtJVWpHdkQsV0FBdUIsRUFpQ3hCO0lQdUVHO01PakZBLFlBQVcsRUFDWjtJUGdGQztNTzdFQSxZQUFXLEVBQ1o7SVA0RUM7TU96RUEsWVZrRXFELEVVakV0RDtFUHdFQztJT3pHRixZVmtHdUQ7SVVqR3ZELGlCQUF1QixFQWlDeEI7SVB1RUc7TU9qRkEsWUFBVyxFQUNaO0lQZ0ZDO01PN0VBLFlBQVcsRUFDWjtJUDRFQztNT3pFQSxZVmtFcUQsRVVqRXREO0VQd0VDO0lPekdGLFlWa0d1RDtJVWpHdkQsV0FBdUIsRUFpQ3hCO0lQdUVHO01PakZBLFlBQVcsRUFDWjtJUGdGQztNTzdFQSxZQUFXLEVBQ1o7SVA0RUM7TU96RUEsWVZrRXFELEVVakV0RDtFUHdFQztJT3pHRixZVmtHdUQ7SVVqR3ZELFdBQXVCLEVBaUN4QjtJUHVFRztNT2pGQSxZQUFXLEVBQ1o7SVBnRkM7TU83RUEsWUFBVyxFQUNaO0lQNEVDO01PekVBLFlWa0VxRCxFVWpFdEQ7RVB3RUM7SU96R0YsWVZrR3VEO0lVakd2RCxpQkFBdUIsRUFpQ3hCO0lQdUVHO01PakZBLFlBQVcsRUFDWjtJUGdGQztNTzdFQSxZQUFXLEVBQ1o7SVA0RUM7TU96RUEsWVZrRXFELEVVakV0RDtFUHdFQztJT3pHRixZVmtHdUQ7SVVqR3ZELGlCQUF1QixFQWlDeEI7SVB1RUc7TU9qRkEsWUFBVyxFQUNaO0lQZ0ZDO01PN0VBLFlBQVcsRUFDWjtJUDRFQztNT3pFQSxZVmtFcUQsRVVqRXREO0VQd0VDO0lPekdGLFlWa0d1RDtJVWpHdkQsYUFBdUIsRUFpQ3hCO0lQdUVHO01PakZBLFlBQVcsRUFDWjtJUGdGQztNTzdFQSxZQUFXLEVBQ1o7SVA0RUM7TU96RUEsWVZrRXFELEVVakV0RDtFUDhFRDtJRy9HQSxpQkR1RVM7SUN0RVQsZ0JEc0VTLEVGeUN1QztFQURoRDtJQUlJLGdCQUFlO0lBQ2YsZUFBYyxFQUNmO0VBR0g7SUFDRSxnQkFBZTtJQUNmLGVBQWMsRUFDZjtFQUVEO0lHN0hBLHlCQUZxQztJQUdyQyx3QkFIcUMsRUhnSW9CO0VBSXpEO0lNaklBLG1CQUFrQjtJQUNsQixrQkFBaUIsRU5rSWhCO0lNdklEO01BQ0UsWUFBVztNQUNYLFlBQVcsRUFDWjtFTnVJRDs7O0lNNUhGLGlCQUFnQjtJQUNoQixZVHNGeUQ7SVNyRnpELGdCQUFlO0lBQ2YsZUFBYyxFTjZIWCxFQUFBOztBVEVDO0VTN0RBO0lJeEZKLGdCQ2VxRCxFTDJFaEQ7RUFJQztJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQsRU5pRzlDO0VBRUQ7SU1qR0osbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTnFHOUM7RUFNSDtJTTlFSixnQkRoQmdDLEVMZ0czQjtFQXBCRDtJSXhGSixpQkNlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVOcUc5QztFQU1IO0lNOUVKLHNCRGJxRCxFTDZGaEQ7RUFwQkQ7SUl4RkosV0NlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLFVBSG1ELEVOaUc5QztFQUVEO0lNakdKLG1CQUFrQjtJQUNsQixXQUhtRCxFTnFHOUM7RUFNSDtJTTlFSix1QkRicUQsRUw2RmhEO0VBcEJEO0lJeEZKLGlCQ2VxRCxFTDJFaEQ7RUFJQztJTTdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOaUc5QztFQUVEO0lNakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5xRzlDO0VBTUg7SU05RUosaUJEYnFELEVMNkZoRDtFQXBCRDtJSXhGSixpQkNlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVOcUc5QztFQU1IO0lNOUVKLHVCRGJxRCxFTDZGaEQ7RUFwQkQ7SUl4RkosV0NlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLFVBSG1ELEVOaUc5QztFQUVEO0lNakdKLG1CQUFrQjtJQUNsQixXQUhtRCxFTnFHOUM7RUFNSDtJTTlFSix1QkRicUQsRUw2RmhEO0VBcEJEO0lJeEZKLGlCQ2VxRCxFTDJFaEQ7RUFJQztJTTdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOaUc5QztFQUVEO0lNakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5xRzlDO0VBTUg7SU05RUosaUJEYnFELEVMNkZoRDtFQXBCRDtJSXhGSixpQkNlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVOcUc5QztFQU1IO0lNOUVKLHVCRGJxRCxFTDZGaEQ7RUFwQkQ7SUl4RkosV0NlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLFVBSG1ELEVOaUc5QztFQUVEO0lNakdKLG1CQUFrQjtJQUNsQixXQUhtRCxFTnFHOUM7RUFNSDtJTTlFSix1QkRicUQsRUw2RmhEO0VBcEJEO0lJeEZKLGlCQ2VxRCxFTDJFaEQ7RUFJQztJTTdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOaUc5QztFQUVEO0lNakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5xRzlDO0VBTUg7SU05RUosaUJEYnFELEVMNkZoRDtFQXBCRDtJSXhGSixpQkNlcUQsRUwyRWhEO0VBSUM7SU03RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTmlHOUM7RUFFRDtJTWpHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVOcUc5QztFQU1IO0lNOUVKLHVCRGJxRCxFTDZGaEQ7RUFwQkQ7SUl4RkosWUNlcUQsRUwyRWhEO0VBZ0JEO0lNOUVKLHVCRGJxRCxFTDZGaEQ7RUFLRDtJT3pHRixZVmtHdUQ7SVVqR3ZELFlBQXVCLEVBaUN4QjtJUHVFRztNT2pGQSxZQUFXLEVBQ1o7SVBnRkM7TU83RUEsWUFBVyxFQUNaO0lQNEVDO01PekVBLFlWa0VxRCxFVWpFdEQ7RVB3RUM7SU96R0YsWVZrR3VEO0lVakd2RCxXQUF1QixFQWlDeEI7SVB1RUc7TU9qRkEsWUFBVyxFQUNaO0lQZ0ZDO01PN0VBLFlBQVcsRUFDWjtJUDRFQztNT3pFQSxZVmtFcUQsRVVqRXREO0VQd0VDO0lPekdGLFlWa0d1RDtJVWpHdkQsaUJBQXVCLEVBaUN4QjtJUHVFRztNT2pGQSxZQUFXLEVBQ1o7SVBnRkM7TU83RUEsWUFBVyxFQUNaO0lQNEVDO01PekVBLFlWa0VxRCxFVWpFdEQ7RVB3RUM7SU96R0YsWVZrR3VEO0lVakd2RCxXQUF1QixFQWlDeEI7SVB1RUc7TU9qRkEsWUFBVyxFQUNaO0lQZ0ZDO01PN0VBLFlBQVcsRUFDWjtJUDRFQztNT3pFQSxZVmtFcUQsRVVqRXREO0VQd0VDO0lPekdGLFlWa0d1RDtJVWpHdkQsV0FBdUIsRUFpQ3hCO0lQdUVHO01PakZBLFlBQVcsRUFDWjtJUGdGQztNTzdFQSxZQUFXLEVBQ1o7SVA0RUM7TU96RUEsWVZrRXFELEVVakV0RDtFUHdFQztJT3pHRixZVmtHdUQ7SVVqR3ZELGlCQUF1QixFQWlDeEI7SVB1RUc7TU9qRkEsWUFBVyxFQUNaO0lQZ0ZDO01PN0VBLFlBQVcsRUFDWjtJUDRFQztNT3pFQSxZVmtFcUQsRVVqRXREO0VQd0VDO0lPekdGLFlWa0d1RDtJVWpHdkQsaUJBQXVCLEVBaUN4QjtJUHVFRztNT2pGQSxZQUFXLEVBQ1o7SVBnRkM7TU83RUEsWUFBVyxFQUNaO0lQNEVDO01PekVBLFlWa0VxRCxFVWpFdEQ7RVB3RUM7SU96R0YsWVZrR3VEO0lVakd2RCxhQUF1QixFQWlDeEI7SVB1RUc7TU9qRkEsWUFBVyxFQUNaO0lQZ0ZDO01PN0VBLFlBQVcsRUFDWjtJUDRFQztNT3pFQSxZVmtFcUQsRVVqRXREO0VQOEVEO0lHL0dBLGlCRHVFUztJQ3RFVCxnQkRzRVMsRUZ5Q3VDO0VBRGhEO0lBSUksZ0JBQWU7SUFDZixlQUFjLEVBQ2Y7RUFHSDtJQUNFLGdCQUFlO0lBQ2YsZUFBYyxFQUNmO0VBRUQ7SUc3SEEseUJBRnFDO0lBR3JDLHdCQUhxQyxFSGdJb0I7RUFJekQ7SU1qSUEsbUJBQWtCO0lBQ2xCLGtCQUFpQixFTmtJaEI7SU12SUQ7TUFDRSxZQUFXO01BQ1gsWUFBVyxFQUNaO0VOdUlEOzs7SU01SEYsaUJBQWdCO0lBQ2hCLFlUc0Z5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RztFQUZEO0lHN0JBLDhCQURnSCxFSGdDL0c7RUFGRDtJRzdCQSw4QkFEZ0gsRUhnQy9HO0VBRkQ7SUc3QkEsd0JBRGdILEVIZ0MvRztFQUZEO0lHN0JBLDhCQURnSCxFSGdDL0c7RUFGRDtJRzdCQSw4QkFEZ0gsRUhnQy9HO0VBRkQ7SUc3QkEsd0JBRGdILEVIZ0MvRztFQUZEO0lHN0JBLDhCQURnSCxFSGdDL0c7RUFGRDtJRzdCQSw4QkFEZ0gsRUhnQy9HO0VBRkQ7SUc3QkEseUJBRGdILEVIZ0MvRztFakI4Q0M7SWlCNURKO01HekJFLFlBQW1CLEVIMkJwQjtJQUVEO01HekJFLFlBQW1CLEVIMkJwQjtJQU1DO01HN0JBLDZCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsd0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsd0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsd0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQWRIO01HekJFLFlBQW1CLEVIMkJwQjtJQUVEO01HekJFLFlBQW1CLEVIMkJwQjtJQU1DO01HN0JBLDZCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsd0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsd0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsd0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRyxFQUFBO0VqQjhDQztJaUI1REo7TUd6QkUsWUFBbUIsRUgyQnBCO0lBRUQ7TUd6QkUsWUFBbUIsRUgyQnBCO0lBTUM7TUc3QkEsNkJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HO0lBZEg7TUd6QkUsWUFBbUIsRUgyQnBCO0lBRUQ7TUd6QkUsWUFBbUIsRUgyQnBCO0lBTUM7TUc3QkEsNkJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HO0lBZEg7TUd6QkUsWUFBbUIsRUgyQnBCO0lBRUQ7TUd6QkUsWUFBbUIsRUgyQnBCO0lBTUM7TUc3QkEsNkJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx3QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HLEVBQUE7O0FBOENIO0VDbklNLHNCQUE0QjtFQUE1QixxQkFBNEIsRUR3SS9CO0VqQkxDO0lpQkFKO01DbklNLHNCQUE0QjtNQUE1QixxQkFBNEIsRUR3SS9CLEVBQUE7RWpCTEM7SWlCQUo7TUNuSU0sb0JBQTRCO01BQTVCLG1CQUE0QixFRHdJL0IsRUFBQTs7QUFJRDtFQzVJSSxzQkFBNEI7RUFBNUIscUJBQTRCLEVEOEkvQjtFakJYQztJaUJTRjtNQzVJSSxzQkFBNEI7TUFBNUIscUJBQTRCLEVEOEkvQixFQUFBO0VqQlhDO0lpQlNGO01DNUlJLG9CQUE0QjtNQUE1QixtQkFBNEIsRUQ4SS9CLEVBQUE7O0FBWEg7RUNuSU0sc0JBQTRCO0VBQTVCLHFCQUE0QixFRG1KL0I7RWpCaEJDO0lpQkFKO01DbklNLHNCQUE0QjtNQUE1QixxQkFBNEIsRURtSi9CLEVBQUE7RWpCaEJDO0lpQkFKO01DbklNLG9CQUE0QjtNQUE1QixtQkFBNEIsRURtSi9CLEVBQUE7O0FJdEpIO0VEeURFLFlBRG9ELEVDdERyRDs7QUFGRDtFRHlERSxXQURvRCxFQ3REckQ7O0FBRkQ7RUR5REUsaUJBRG9ELEVDdERyRDs7QUFGRDtFRHlERSxXQURvRCxFQ3REckQ7O0FBRkQ7RUR5REUsV0FEb0QsRUN0RHJEOztBQUZEO0VEeURFLGlCQURvRCxFQ3REckQ7O0FBRkQ7RUR5REUsaUJBRG9ELEVDdERyRDs7QUFGRDtFRHlERSxhQURvRCxFQ3REckQ7O0FyQm9JRztFcUJ0SUo7SUR5REUsWUFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsV0FEb0QsRUN0RHJEO0VBRkQ7SUR5REUsaUJBRG9ELEVDdERyRDtFQUZEO0lEeURFLFdBRG9ELEVDdERyRDtFQUZEO0lEeURFLFdBRG9ELEVDdERyRDtFQUZEO0lEeURFLGlCQURvRCxFQ3REckQ7RUFGRDtJRHlERSxpQkFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsYUFEb0QsRUN0RHJELEVBQUE7O0FyQm9JRztFcUJ0SUo7SUR5REUsWUFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsV0FEb0QsRUN0RHJEO0VBRkQ7SUR5REUsaUJBRG9ELEVDdERyRDtFQUZEO0lEeURFLFdBRG9ELEVDdERyRDtFQUZEO0lEeURFLFdBRG9ELEVDdERyRDtFQUZEO0lEeURFLGlCQURvRCxFQ3REckQ7RUFGRDtJRHlERSxpQkFEb0QsRUN0RHJEO0VBRkQ7SUR5REUsYUFEb0QsRUN0RHJELEVBQUE7O0FBRkQ7RUR5REUseUJBRGdILEVDdERqSDs7QUFGRDtFRHlERSx3QkFEZ0gsRUN0RGpIOztBQUZEO0VEeURFLDhCQURnSCxFQ3REakg7O0FBRkQ7RUR5REUsd0JBRGdILEVDdERqSDs7QUFGRDtFRHlERSx3QkFEZ0gsRUN0RGpIOztBQUZEO0VEeURFLDhCQURnSCxFQ3REakg7O0FBRkQ7RUR5REUsOEJBRGdILEVDdERqSDs7QUFGRDtFRHlERSwwQkFEZ0gsRUN0RGpIOztBckJvSUc7RXFCdElKO0lEeURFLHlCQURnSCxFQ3REakg7RUFGRDtJRHlERSx3QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsOEJBRGdILEVDdERqSDtFQUZEO0lEeURFLHdCQURnSCxFQ3REakg7RUFGRDtJRHlERSx3QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsOEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDhCQURnSCxFQ3REakg7RUFGRDtJRHlERSwwQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUseUJBRGdILEVDdERqSDtFQUZEO0lEeURFLHdCQURnSCxFQ3REakg7RUFGRDtJRHlERSw4QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsd0JBRGdILEVDdERqSDtFQUZEO0lEeURFLHdCQURnSCxFQ3REakg7RUFGRDtJRHlERSw4QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsOEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakgsRUFBQTs7QXJCb0lHO0VxQnRJSjtJRHlERSx5QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUseUJBRGdILEVDdERqSDtFQUZEO0lEeURFLHdCQURnSCxFQ3REakg7RUFGRDtJRHlERSx3QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsOEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDhCQURnSCxFQ3REakg7RUFGRDtJRHlERSx3QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsd0JBRGdILEVDdERqSDtFQUZEO0lEeURFLHdCQURnSCxFQ3REakg7RUFGRDtJRHlERSx3QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsOEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDhCQURnSCxFQ3REakg7RUFGRDtJRHlERSw4QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsOEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakg7RUFGRDtJRHlERSwwQkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUseUJBRGdILEVDdERqSDtFQUZEO0lEeURFLHdCQURnSCxFQ3REakg7RUFGRDtJRHlERSw4QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsd0JBRGdILEVDdERqSDtFQUZEO0lEeURFLHdCQURnSCxFQ3REakg7RUFGRDtJRHlERSw4QkFEZ0gsRUN0RGpIO0VBRkQ7SUR5REUsOEJBRGdILEVDdERqSDtFQUZEO0lEeURFLDBCQURnSCxFQ3REakgsRUFBQTs7QUpnTUc7RUt2TUUsZ0JBQTBCO0VBQTFCLGVBQTBCLEVMeU0zQjtFS3RNRDtJQUVJLGdCQUEwQjtJQUExQixlQUEwQixFQUU3QjtFQW9CSztJRm1DUixnQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFlBRG9ELEVFaEMzQztFdEI4R1A7SXNCaEhNO01GbUNSLGdCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsV0FEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixXQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFdBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsWUFEb0QsRUVoQzNDLEVBQUE7RXRCOEdQO0lzQmhITTtNRm1DUixnQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFdBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsV0FEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLGlCQURvRCxFRWhDM0M7SUFGRDtNRm1DUixXQURvRCxFRWhDM0M7SUFGRDtNRm1DUixpQkFEb0QsRUVoQzNDO0lBRkQ7TUZtQ1IsaUJBRG9ELEVFaEMzQztJQUZEO01GbUNSLFlBRG9ELEVFaEMzQyxFQUFBOztBTGdMUDtFS3RLRSxnQkFBMEI7RUFBMUIsZUFBMEIsRUx3SzNCO0VLcktEO0lBRUksaUJBQTRCO0lBQTVCLGdCQUE0QixFQUUvQjs7QXRCNkZEO0VpQjREQTtJS3ZNRSxnQkFBMEI7SUFBMUIsZUFBMEIsRUx5TTNCO0lLdE1EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0F0Qm9JRDtFc0J6SE07SUY0Q1IsZ0JBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixZQURvRCxFRXpDM0MsRUFBQTs7QXRCdUhQO0VzQmhITTtJRm1DUixnQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFlBRG9ELEVFaEMzQyxFQUFBOztBdEI4R1A7RXNCaEhNO0lGbUNSLGdCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsWUFEb0QsRUVoQzNDLEVBQUE7O0F0QjhHUDtFaUJrRUE7SUt0S0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVMd0szQjtJS3JLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QXRCNkZEO0VpQjREQTtJS3ZNRSxnQkFBMEI7SUFBMUIsZUFBMEIsRUx5TTNCO0lLdE1EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0F0Qm9JRDtFc0J6SE07SUY0Q1IsZ0JBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixZQURvRCxFRXpDM0MsRUFBQTs7QXRCdUhQO0VzQnpITTtJRjRDUixnQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFdBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsV0FEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLGlCQURvRCxFRXpDM0M7RUFGRDtJRjRDUixXQURvRCxFRXpDM0M7RUFGRDtJRjRDUixpQkFEb0QsRUV6QzNDO0VBRkQ7SUY0Q1IsaUJBRG9ELEVFekMzQztFQUZEO0lGNENSLFlBRG9ELEVFekMzQyxFQUFBOztBdEJ1SFA7RXNCaEhNO0lGbUNSLGdCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsV0FEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixXQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsaUJBRG9ELEVFaEMzQztFQUZEO0lGbUNSLFdBRG9ELEVFaEMzQztFQUZEO0lGbUNSLGlCQURvRCxFRWhDM0M7RUFGRDtJRm1DUixpQkFEb0QsRUVoQzNDO0VBRkQ7SUZtQ1IsWUFEb0QsRUVoQzNDLEVBQUE7O0F0QjhHUDtFaUJrRUE7SUt0S0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVMd0szQjtJS3JLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QWJrREQ7RWMvRkYsZ0JBQTZCLEVONE4xQjs7QUFFRDtFTTlORiwrQkFBNkIsRU5nTzFCOztBUmpJRDtFYy9GRixzQkFBNkIsRU40TjFCOztBQUVEO0VNOU5GLHFDQUE2QixFTmdPMUI7O0FSaklEO0VjL0ZGLHVCQUE2QixFTjROMUI7O0FBRUQ7RU05TkYsc0NBQTZCLEVOZ08xQjs7QVJqSUQ7RWMvRkYsaUJBQTZCLEVONE4xQjs7QUFFRDtFTTlORixnQ0FBNkIsRU5nTzFCOztBUmpJRDtFYy9GRix1QkFBNkIsRU40TjFCOztBQUVEO0VNOU5GLHNDQUE2QixFTmdPMUI7O0FSaklEO0VjL0ZGLHVCQUE2QixFTjROMUI7O0FBRUQ7RU05TkYsc0NBQTZCLEVOZ08xQjs7QVJqSUQ7RWMvRkYsaUJBQTZCLEVONE4xQjs7QUFFRDtFTTlORixnQ0FBNkIsRU5nTzFCOztBUmpJRDtFYy9GRix1QkFBNkIsRU40TjFCOztBQUVEO0VNOU5GLHNDQUE2QixFTmdPMUI7O0FSaklEO0VjL0ZGLHVCQUE2QixFTjROMUI7O0FBRUQ7RU05TkYsc0NBQTZCLEVOZ08xQjs7QVJqSUQ7RWMvRkYsaUJBQTZCLEVONE4xQjs7QUFFRDtFTTlORixnQ0FBNkIsRU5nTzFCOztBUmpJRDtFYy9GRix1QkFBNkIsRU40TjFCOztBQUVEO0VNOU5GLHNDQUE2QixFTmdPMUI7O0FSaklEO0VjL0ZGLHVCQUE2QixFTjROMUI7O0FBRUQ7RU05TkYsc0NBQTZCLEVOZ08xQjs7QWpCdEZEO0VTM0NBO0ljL0ZGLGdCQUE2QixFTjROMUI7RUFFRDtJTTlORiwrQkFBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLHNCQUE2QixFTjROMUI7RUFFRDtJTTlORixxQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLHVCQUE2QixFTjROMUI7RUFFRDtJTTlORixzQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLGlCQUE2QixFTjROMUI7RUFFRDtJTTlORixnQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLHVCQUE2QixFTjROMUI7RUFFRDtJTTlORixzQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLHVCQUE2QixFTjROMUI7RUFFRDtJTTlORixzQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLGlCQUE2QixFTjROMUI7RUFFRDtJTTlORixnQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLHVCQUE2QixFTjROMUI7RUFFRDtJTTlORixzQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLHVCQUE2QixFTjROMUI7RUFFRDtJTTlORixzQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLGlCQUE2QixFTjROMUI7RUFFRDtJTTlORixnQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLHVCQUE2QixFTjROMUI7RUFFRDtJTTlORixzQ0FBNkIsRU5nTzFCO0VSaklEO0ljL0ZGLHVCQUE2QixFTjROMUI7RUFFRDtJTTlORixzQ0FBNkIsRU5nTzFCLEVBQUE7O0FqQnRGRDtFUzNDQTtJYy9GRixnQkFBNkIsRU40TjFCO0VBRUQ7SU05TkYsNkJBQTZCLEVOZ08xQjtFUmpJRDtJYy9GRixzQkFBNkIsRU40TjFCO0VBRUQ7SU05TkYsbUNBQTZCLEVOZ08xQjtFUmpJRDtJYy9GRix1QkFBNkIsRU40TjFCO0VBRUQ7SU05TkYsb0NBQTZCLEVOZ08xQjtFUmpJRDtJYy9GRixp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SUc3QkEsK0JBRGdILEVIZ0MvRztFQUZEO0lHN0JBLCtCQURnSCxFSGdDL0c7RUFGRDtJRzdCQSx5QkFEZ0gsRUhnQy9HO0VBRkQ7SUc3QkEsK0JBRGdILEVIZ0MvRztFQUZEO0lHN0JBLCtCQURnSCxFSGdDL0c7RUFGRDtJRzdCQSx5QkFEZ0gsRUhnQy9HO0VBRkQ7SUc3QkEsK0JBRGdILEVIZ0MvRztFQUZEO0lHN0JBLCtCQURnSCxFSGdDL0c7RUFGRDtJRzdCQSwwQkFEZ0gsRUhnQy9HO0VqQjhDQztJaUI1REo7TUd6QkUsYUFBbUIsRUgyQnBCO0lBRUQ7TUd6QkUsYUFBbUIsRUgyQnBCO0lBTUM7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwwQkFEZ0gsRUhnQy9HO0lBZEg7TUd6QkUsYUFBbUIsRUgyQnBCO0lBRUQ7TUd6QkUsYUFBbUIsRUgyQnBCO0lBTUM7TUc3QkEsOEJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSx5QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwwQkFEZ0gsRUhnQy9HLEVBQUE7RWpCOENDO0lpQjVESjtNR3pCRSxhQUFtQixFSDJCcEI7SUFFRDtNR3pCRSxhQUFtQixFSDJCcEI7SUFNQztNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDBCQURnSCxFSGdDL0c7SUFkSDtNR3pCRSxhQUFtQixFSDJCcEI7SUFFRDtNR3pCRSxhQUFtQixFSDJCcEI7SUFNQztNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDBCQURnSCxFSGdDL0c7SUFkSDtNR3pCRSxhQUFtQixFSDJCcEI7SUFFRDtNR3pCRSxhQUFtQixFSDJCcEI7SUFNQztNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdI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SCxFSGdDL0c7RUFGRDtJRzdCQSwrQkFEZ0gsRUhnQy9HO0VBRkQ7SUc3QkEsK0JBRGdILEVIZ0MvRztFQUZEO0lHN0JBLHlCQURnSCxFSGdDL0c7RUFGRDtJRzdCQSwrQkFEZ0gsRUhnQy9HO0VBRkQ7SUc3QkEsK0JBRGdILEVIZ0MvRztFQUZEO0lHN0JBLHlCQURnSCxFSGdDL0c7RUFGRDtJRzdCQSwrQkFEZ0gsRUhnQy9HO0VBRkQ7SUc3QkEsK0JBRGdILEVIZ0MvRztFQUZEO0lHN0JBLDBCQURnSCxFSGdDL0c7RWpCOENDO0lpQjVESjtNR3pCRSxhQUFtQixFSDJCcEI7SUFFRDtNR3pCRSxhQUFtQixFSDJCcEI7SUFNQztNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDBCQURnSCxFSGdDL0c7SUFkSDtNR3pCRSxhQUFtQixFSDJCcEI7SUFFRDtNR3pCRSxhQUFtQixFSDJCcEI7SUFNQztNRzdCQSw4QkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLHlCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsK0JBRGdILEVIZ0MvRztJQUZEO01HN0JBLDBCQURnSCxFSGdDL0csRUFBQTtFakI4Q0M7SWlCNURKO01HekJFLGFBQW1CLEVIMkJwQjtJQUVEO01HekJFLGFBQW1CLEVIMkJwQjtJQU1DO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsMEJBRGdILEVIZ0MvRztJQWRIO01HekJFLGFBQW1CLEVIMkJwQjtJQUVEO01HekJFLGFBQW1CLEVIMkJwQjtJQU1DO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsMEJBRGdILEVIZ0MvRztJQWRIO01HekJFLGFBQW1CLEVIMkJwQjtJQUVEO01HekJFLGFBQW1CLEVIMkJwQjtJQU1DO01HN0JBLDhCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEseUJBRGdILEVIZ0MvRztJQUZEO01HN0JBLCtCQURnSCxFSGdDL0c7SUFGRDtNRzdCQSwrQkFEZ0gsRUhnQy9HO0lBRkQ7TUc3QkEsMEJBRGdILEVIZ0MvRyxFQUFBOztBQXlTRDtFTzNYSSwyQkFBbUMsRVA2WHRDO0VqQjdQQztJaUIyUEY7TU8zWEksMkJBQW1DLEVQNlh0QyxFQUFBO0VqQjdQQztJaUIyUEY7TU8zWEksMkJBQW1DLEVQNlh0QyxFQUFBOztBakI3UEM7RWlCK1BBO0lPL1hFLDJCQUFtQyxFUGlZcEMsRUFBQTs7QWpCalFEO0VpQitQQTtJTy9YRSwyQkFBbUMsRVBpWXBDLEVBQUE7O0FRcktMOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBbUJFLFVBQVM7RUFDVCxXQUFVLEVBQ1g7O0FBR0Q7RUFDRSxvQmxCaEgwQjtFa0JrSDFCLG1CQUFrQjtFQUNsQixpQmxCcEhzQjtFa0JxSHRCLG1DbEJuSHlDLEVrQm9IMUM7O0FBR0Q7O0VBRUUsbUJBQWtCO0VBQ2xCLHFCQUFvQixFQUNyQjs7QUFHRDs7RUFFRSxrQmxCeE1xQjtFa0J5TXJCLHFCQUFvQixFQUNyQjs7QXRCZ0RDO0VzQjVDQSxlbEIxSWlCO0VrQjJJakIscUJBQW9CLEVBQ3JCOztBQUdEOzs7Ozs7RUFNRSwrQ2xCL05nRDtFa0JnT2hELG1CbEI5S3NCO0VrQitLdEIsb0JsQjVOeUI7RWtCNk56QixlbEI5S2tCO0VrQitLbEIsbUNsQjFKc0MsRWtCZ0t2QztFQWhCRDs7Ozs7O0lBYUksZUFBYztJQUNkLGVsQmpQZSxFa0JrUGhCOztBQVFHO0VBSUksa0JkdlA2QztFY21RN0MsaUJsQjNNVztFa0JtTlgsY0FBYTtFQU9iLHNCbEJ6TmlCLEVrQjJOcEI7O0FBakNEO0VBSUksbUJkdlA2QztFY21RN0MsaUJsQjNNVztFa0JtTlgsY0FBYTtFQU9iLHNCbEJ6TmlCLEVrQjJOcEI7O0FBakNEO0VBSUkscUJkdlA2QztFY21RN0MsaUJsQjNNVztFa0JtTlgsY0FBYTtFQU9iLHNCbEJ6TmlCLEVrQjJOcEI7O0FBakNEO0VBSUksb0JkdlA2QztFY21RN0MsaUJsQjNNVztFa0JtTlgsY0FBYTtFQU9iLHNCbEJ6TmlCLEVrQjJOcEI7O0FBakNEO0VBSUkscUJkdlA2QztFY21RN0MsaUJsQjNNVztFa0JtTlgsY0FBYTtFQU9iLHNCbEJ6TmlCLEVrQjJOcEI7O0FBakNEO0VBSUksZ0JkdlA2QztFY21RN0MsaUJsQjNNVztFa0JtTlgsY0FBYTtFQU9iLHNCbEJ6TmlCLEVrQjJOcEI7O0F6QnpNSDtFeUJ3S0U7SUFJSSxnQmR2UDZDLEVjb1JoRDtFQWpDRDtJQUlJLGtCZHZQNkMsRWNvUmhEO0VBakNEO0lBSUkscUJkdlA2QyxFY29SaEQ7RUFqQ0Q7SUFJSSxxQmR2UDZDLEVjb1JoRDtFQWpDRDtJQUlJLG1CZHZQNkMsRWNvUmhEO0VBakNEO0lBSUksZ0JkdlA2QyxFY29SaEQsRUFBQTs7QXRCbkdMO0VzQjBHQSxxQkFBb0I7RUFDcEIsZWxCMVNjO0VrQjJTZCxzQmxCbk15QjtFa0JxTXpCLGdCQUFlLEVBYWhCO0VBbEJEO0lBU0ksZWxCMU0yRCxFa0I4TTVEO0VBYkg7SUFnQkksVUFBUyxFQUNWOztBdEJ2S0Q7RXNCNEtBLFlBQVc7RUFFWCxpQmRsVHFEO0VjbVRyRCxVQUFTO0VBQ1QscUJsQnROeUI7RWtCd056QixjQUFhO0VBQ2IsZ0JBQWU7RUFDZixpQ2xCL1RpQjtFa0JnVWpCLGVBQWMsRUFDZjs7QUFHRDs7O0VBR0Usb0JsQmhQMEI7RWtCaVAxQiw2QmxCL055QjtFa0JnT3pCLGlCbEJuUHNCLEVrQm9QdkI7O0FBR0Q7RUFDRSxtQkFBa0IsRUFDbkI7O0FBR0Q7RUFDRSxxQmxCek9zQjtFa0IwT3RCLHNCbEI1T2tCLEVrQjZPbkI7O0FBR0Q7RUFDRSxxQmxCL09zQixFa0JnUHZCOztBQUdEO0VBRUkscUJsQnBQMkI7RWtCcVAzQixpQkFBZ0IsRUFDakI7O0FBSUg7RUFDRSxvQmxCMVB5QixFa0JnUTFCO0VBUEQ7SUFJSSxzQmxCM1A4QjtJa0I0UDlCLGtCbEIxVm1CLEVrQjJWcEI7O0FBSUg7RUFDRSxpQmxCelIwQjtFa0IwUjFCLHVDZDFXcUQ7RWMyV3JELCtCbEJsWGlCLEVrQndYbEI7RUFURDtJQU1JLGlCbEIvUm9CO0lrQmdTcEIsZWxCclhhLEVrQnNYZDs7QUFJSDtFQUNFLGVBQWM7RUFDZCxxQmR0WHFEO0VjdVhyRCxlbEI3WGUsRWtCa1loQjtFQVJEO0lBTUksY2xCN1E2QixFQUFBOztBa0JrUmpDO0VBQ0Usa0NsQnJZVztFa0JzWVgsYUFBWTtFQUNaLHNCQUFxQixFQUN0Qjs7QXRCN1FDO0VzQmlSQSxVQUFTLEVBQ1Y7O0FBR0Q7RUFDRSxzQ2Q1WXFEO0VjOFlyRCwwQmxCclppQjtFa0JzWmpCLDBCbEJ2WmdCO0VrQnlaaEIsNkRsQjNWbUU7RWtCNFZuRSxvQmxCMVl5QjtFa0IyWXpCLGVsQnhaVyxFa0J5Wlo7O0FBR0Q7RUFDRSxVQUFTO0VBQ1QsNEJkcFpTO0Vjc1pULDBCbEJuYWdCO0VrQnFhaEIsNkRsQnZXbUU7RWtCd1duRSxlbEJuYVcsRWtCd2FaOztBQzVjRDtFQUNFLG1CbkJxS3lCO0VtQnBLekIsc0JuQnFLNEI7RW1Cbks1QixvQm5CNkN5QjtFbUI1Q3pCLGlCbkI4SnNCO0VtQjdKdEIsZW5CNkJlLEVtQjVCaEI7O0FBR0Q7RUFDRSxnQm5Cc0pxQztFbUJySnJDLGlCbkJzSmlCLEVtQnJKbEI7O0FBR0Q7RUFDRSxrQm5CdUptQjtFbUJ0Sm5CLGVBQWMsRUFLZjtFQUhDO0lBQ0Usa0JBQWlCLEVBQ2xCOztBQUdIO0VBR0ksZUFBZ0M7RUFDaEMsaUJBQWdCLEVBQ2pCOztBQy9ESztFQUNFLGlCQVJlLEVBU2hCOztBQUZEO0VBQ0Usa0JBUnNCLEVBU3ZCOztBQUZEO0VBQ0UsbUJBUjhCLEVBUy9COztBQUZEO0VBQ0Usb0JBUnVDLEVBU3hDOztBM0JtSkw7RTJCMUpJO0lBQ0UsaUJBSGUsRUFJaEI7RUFGRDtJQUNFLGtCQUhzQixFQUl2QjtF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QWhCLHNCQUFnQjtVQUFoQixpQkFBZ0IsRUFDakI7RWhDbzFHRDs7SWdDcjJHRSxjQUFhO0lBQ2IsMEJ2QjlCZTtJdUIrQmYsMEJ2QjdCVztJdUI4Qlgsb0N2QmpDaUI7WXVCaUNqQiw0QnZCakNpQjtJdUJvQ2YsNEV2QjhVNEQ7SXVCOVU1RCxvRXZCOFU0RDtJdUI5VTVELDREdkI4VTREO0l1QjlVNUQscUZ2QjhVNEQsRXVCNVUvRDs7QTNCcWRDO0UyQnhjQSxnQkFBZSxFQUtoQjtFQU5EO0lBSUksYUFBWSxFQUNiOztBQUdIOztFQUlJLGV2QjlEZSxFdUIrRGhCOztBQUxIOztFQUlJLGV2QjlEZSxFdUIrRGhCOztBQUxIOztFQUlJLGV2QjlEZSxFdUIrRGhCOztBQUxIOzs7RUFVSSwwQnZCckVjO0V1QnNFZCxvQnZCNFM2QixFdUIzUzlCOztBaENvMUdMOztFZ0M5MEdJLHlCQUFnQjtLQUFoQixzQkFBZ0I7VUFBaEIsaUJBQWdCO0VBQ2hCLGlCdkI1RGEsRXVCNkRkOztBQUdEO0VBQ0UsK0JBQXNCO1VBQXRCLHVCQUFzQixFQUN2Qjs7QWhDKzBHSDs7O0VpQ3YrR0ksaUJwQjRFcUQsRW9CM0V0RDs7QWpDMitHSDs7RWlDdCtHSSxzQkFBcUI7RUFDckIseUJBQXdCO0VBRXhCLG9CQUFrRDtFQUNsRCxtQnBCa0VxRDtFb0JqRXJELGlCQUFnQixFQUtqQjtFakNtK0dEOztJaUNyK0dJLGdCQUFlLEVBQ2hCOztBQUlIOztFQUVFLHFCQUFtRCxFQUNwRDs7QWpDcStHSDtFaUNqK0dJLFlBQVcsRUFDWjs7QUNHRDtFQWpCQSxlQUFjO0VBQ2QsVUFBUztFQUVULG9CckI0RHVEO0VxQjNEdkQsb0J6Qm1FMkI7RXlCbEUzQixpQnpCa1owQjtFeUJqWjFCLGV6Qm9EYSxFeUJuQ1o7RUFORDtJQUxBLGlCckJtRHVEO0lxQmxEdkQscUJBQThELEVBUzNEOztBQzFCSDtFQUdFLG9CQUZ1QztFQUd2QyxxQnRCK0RxRDtFc0I5RHJELG1CMUI4WXdCO0UwQjdZeEIsZTFCd0RXLEUwQnZEWjs7QUNGRDtFQUNFLHFCQUFpQztFQUFqQyxzQkFBaUM7RUFBakMscUJBQWlDO0VBQWpDLGNBQWlDO0VBQ2pDLFlBQVc7RUFDWCxvQnZCMkRxRDtFdUJ4RG5ELDJCQUFvQjtFQUFwQiw2QkFBb0I7TUFBcEIsd0JBQW9CO1VBQXBCLHFCQUFvQixFQVl2QjtFQWxCRDtJQVVJLHVCM0I4RFcsRTJCN0RaO0VBWEg7SUFlTSx1QkFBaUgsRUFDbEg7O0FBSUw7Ozs7RUFDRSxVQUFTO0VBQ1Qsb0JBQW1CLEVBTXBCOztBQUVEO0VBRUUsZ0IzQmtYdUI7RTJCalh2QiwwQjNCc0JpQjtFMkJyQmpCLG9CM0JvQmdCO0UyQmxCaEIsZTNCcUJXO0UyQnBCWCxtQkFBa0I7RUFDbEIsb0JBQW1CO0VBR2pCLHFCQUFhO0VBQWIsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYixvQkFBYztFQUFkLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjO0VBQ2QsMEJBQW1CO0VBQW5CLDRCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsb0JBQW1CLEVBZ0J0QjtFQTdCRDtJQXNCTSxnQkFBaUMsRUFDbEM7RUF2Qkw7SUEwQk0sZUFBZ0MsRUFDakM7O0FBSUw7RUFFRSxpQkFBZ0I7RUFHZCxvQkFBYTtFQUFiLHNCQUFhO01BQWIsa0JBQWE7VUFBYixjQUFhO0VBQ2IsYUFBWTtFQUNaLGFBQVksRUFLZjs7QUFFRDtFQUVFLGVBQWM7RUFDZCxrQkFBaUI7RUFDakIsbUJBQWtCO0VBR2hCLHFCQUFhO0VBQWIsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYixvQkFBYztFQUFkLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjLEVBd0JqQjtFQWhDRDs7OztJQXNCTSxhQUFZO0lBQ1osNEJBQW1CO1FBQW5CLDZCQUFtQjtZQUFuQixvQkFBbUI7SUFLckIsZUFBYztJQUNkLGtCQUFpQjtJQUNqQixnQnZCM0NtRCxFdUI0Q3BEOztBL0JvYUQ7RWdDamdCQSxVQUFTO0VBQ1QsV0FBVTtFQUNWLFVBQVMsRUFDVjs7QWhDMmdCQztFZ0N4Z0JBLGdCQUFlO0VBQ2Ysc0JBQWtDLEVBQ25DOztBQUVEO0VBeEJBLG1CeEJvRVc7RXdCbkVYLGlCeEI4RHVEO0V3QjdEdkQsMEI1QnNEbUIsRTRCOUJsQjtFQXRCRDtJQUVFLFVBQVM7SUFDVCx3QnhCd0RxRDtJd0J2RHJELHFCeEJ1RHFELEV3QnREdEQ7O0E3QjZKRDtFOEJ4S0Esa0JBRnNKO0VBR3RKLGlCekJnRXVEO0V5Qi9EdkQsZ0I3QnNhK0I7RTZCcGEvQix5QkFBZ0I7S0FBaEIsc0JBQWdCO1VBQWhCLGlCQUFnQjtFQUNoQiwwQjdCcURtQjtFNkJwRG5CLGlCN0JxRWU7RTZCcEVmLDBCN0JzRGE7RTZCcERiLHFCN0JzWnlCO0U2QnJaekIsZ0J6QnVEdUQ7RXlCdER2RCxvQjdCOEQyQjtFNkI3RDNCLGlCN0JxQ3FCO0U2QnBDckIsZTdCK0NhO0VDbUViLHNPQUF5TjtFNEI5R3ZOLCtCQUE4QjtFQUM5Qix3Q0FBMEQ7RUFDMUQsNkJBQTRCO0VBQzVCLHlCQUF3QjtFQUV4QixzQkFBdUQ7RUFJdkQsNEU3QmtaOEQ7RTZCbFo5RCxvRTdCa1o4RDtFNkJsWjlELDREN0JrWjhEO0U2QmxaOUQscUY3QmtaOEQsRTZCL1cvRDtFNUJvRUQ7SUZ1Q0E7TUVwQ0ksd1dBQXVXLEU0QnZFMVcsRUFBQTtFQS9CRDtJQUNFLGNBQWE7SUFDYiwwQjdCMkJlO0k2QjFCZiwwQjdCNEJXO0k2QjNCWCxvQzdCd0JpQjtZNkJ4QmpCLDRCN0J3QmlCO0k2QnJCZiw0RTdCdVk0RDtJNkJ2WTVELG9FN0J1WTREO0k2QnZZNUQsNEQ3QnVZNEQ7STZCdlk1RCxxRjdCdVk0RCxFNkJyWS9EO0VBR0Q7SUFDRSwwQjdCY2dCO0k2QmJoQixvQjdCK1grQixFNkI5WGhDO0VBR0Q7SUFDRSxjQUFhLEVBQ2Q7RUFFRDtJQUNFLGFBQVk7SUFDWix1QkFBc0IsRUFDdkI7O0FDbENEO0VBQ0Usc0I5QmlDWTtFOEJoQ1osMEJBQStELEVBSWhFO0VBSEM7SUFDRSxlOUI4QlUsRThCN0JYO0VBRkQ7SUFDRSxlOUI4QlUsRThCN0JYO0VBRkQ7SUFDRSxlOUI4QlUsRThC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QjtVQ2xDaEIsU0RrQ2dCLEVBR1g7O0FBRkQ7RUNuQ0osNkJEa0NnQjtFQ2xDaEIsaUJEa0NnQjtNQ2xDaEIsa0JEa0NnQjtVQ2xDaEIsU0RrQ2dCLEVBR1g7O0F0RXFERDtFc0V2REE7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYLEVBQUE7O0F0RXFERDtFc0V2REE7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNs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a0JjO1VEbEJkLDJCQ2tCYztFRGpCZCwyQ0NpQ2U7VURqQ2YsbUNDaUNlO0VDZ0JiLFdGaENrQztFSUVsQyxxQ0FBNEI7RUFBNUIsNkJBQTRCLEVMQTNCOztBQVVEO0VHb0JBLFdGaENxQyxFRGNwQzs7QUFkRDtFQ2xCRixtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsV0YvQmtDO0VJQ2xDLHFDQUE0QjtFQUE1Qiw2QkFBNEIsRUxBM0I7O0FBVUQ7RUdvQkEsV0YvQnFDLEVEYXBDOztBQWREO0VDbEJGLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYix1REdyQ21DO1VIcUNuQywrQ0dyQ21DO0VIcUNuQyw4QkY1Qm1EO01FNEJuRCwwQkY1Qm1EO1VFNEJuRCxzQkY1Qm1EO0VNSWpELHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYix1REdwQ3FDO1VIb0NyQywrQ0dwQ3FDO0VIb0NyQyxnQ0YzQnFEO01FMkJyRCw0QkYzQnFEO1VFMkJyRCx3QkYzQnFEO0VNR25ELHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYixzREduQ2lDO1VIbUNqQyw4Q0duQ2lDO0VIbUNqQyxpQ0YxQnNEO01FMEJ0RCw2QkYxQnNEO1VFMEJ0RCx5QkYxQnNEO0VNRXBELHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYixzREdsQytCO1VIa0MvQiw4Q0dsQytCO0VIa0MvQiwrQkZ6Qm9EO01FeUJwRCwyQkZ6Qm9EO1VFeUJwRCx1QkZ6Qm9EO0VNQ2xELHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYix1REdyQ21DO1VIcUNuQywrQ0dyQ21DO0VIcUNuQyxpQ0dFZTtNSEZmLDZCR0VlO1VIRmYseUJHRWU7RUMxQmIsd0RBQXVDO0VBQXZDLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQUDVCOztBQVVEO0VHb0JBLG9ER1Q0QztVSFM1Qyw0Q0dUNEM7RUNKMUMsV0FBMkIsRVBMNUI7O0FBZEQ7RUNsQkYsbUNDa0JjO1VEbEJkLDJCQ2tCYztFRGpCZCwyQ0NpQ2U7VURqQ2YsbUNDaUNlO0VDZ0JiLHVER3BDcUM7VUhvQ3JDLCtDR3BDcUM7RUhvQ3JDLGlDR0VlO01IRmYsNkJHRWU7VUhGZix5QkdFZTtFQzFCYix3REFBdUM7RUFBdkMsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBQNUI7O0FBVUQ7RUdvQkEsb0RHVDRDO1VIUzVDLDRDR1Q0QztFQ0oxQyxXQUEyQixFUEw1Qjs7QUFkRDtFQ2xCRixtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85Qyw4QkZ0Qm1EO01Fc0JuRCwwQkZ0Qm1EO1VFc0JuRCxzQkZ0Qm1EO0VNRmpELHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSxzREcvQjhCO1VIK0I5Qiw4Q0cvQjhCO0VDa0I1QixXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRixtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85QyxnQ0ZyQnFEO01FcUJyRCw0QkZyQnFEO1VFcUJyRCx3QkZyQnFEO0VNSG5ELHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSxzREc5QmdDO1VIOEJoQyw4Q0c5QmdDO0VDaUI5QixXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRixtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85QyxpQ0ZwQnNEO01Fb0J0RCw2QkZwQnNEO1VFb0J0RCx5QkZwQnNEO0VNSnBELHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSx1REc3QnNDO1VINkJ0QywrQ0c3QnNDO0VDZ0JwQyxXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRixtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85QywrQkZuQm9EO01FbUJwRCwyQkZuQm9EO1VFbUJwRCx1QkZuQm9EO0VNTGxELHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSx1REc1Qm9DO1VINEJwQywrQ0c1Qm9DO0VDZWxDLFdBQThCLEVQTC9COztBQWREO0VDbEJGLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYixvREdQOEM7VUhPOUMsNENHUDhDO0VITzlDLGlDR0VlO01IRmYsNkJHRWU7VUhGZix5QkdFZTtFQzFCYix3REFBdUM7RUFBdkMsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBOEIsRVBQL0I7O0FBVUQ7RUdvQkEsc0RHL0I4QjtVSCtCOUIsOENHL0I4QjtFQ2tCNUIsV0FBOEIsRVBML0I7O0FBZEQ7RUNsQkYsbUNDa0JjO1VEbEJkLDJCQ2tCYztFRGpCZCwyQ0NpQ2U7VURqQ2YsbUNDaUNlO0VDZ0JiLG9ER1A4QztVSE85Qyw0Q0dQOEM7RUhPOUMsaUNHRWU7TUhGZiw2QkdFZTtVSEZmLHlCR0VlO0VDMUJiLHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSxzREc5QmdDO1VIOEJoQyw4Q0c5QmdDO0VDaUI5QixXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRixtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsOEJBRnlCO01BRXpCLDBCQUZ5QjtVQUV6QixzQkFGeUI7RUt6QnZCLHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUko1Qjs7QUFVRDtFR29CQSw0QkFGeUI7TUFFekIsd0JBRnlCO1VBRXpCLG9CQUZ5QjtFS2R2QixXQUEyQixFUkY1Qjs7QUFkRDtFQ2xCRixtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsOEJBRnlCO01BRXpCLDBCQUZ5QjtVQUV6QixzQkFGeUI7RUt6QnZCLHdEQUF1QztFQUF2QyxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJE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QUNyQjtFQXhURjtJQTBUSyxpQkFBZ0I7SUFDaEIsdUJBQXNCLEVBQ3RCO0VBNVRMO0lBOFRLLGlCQUFnQjtJQUNoQix1QkFBc0IsRUFDekI7RUFoVUY7SUFrVUssbUJBQWtCO0lBQ2xCLHVCQUFzQixFQUN6QjtFQXBVRjtJQXNVSyxXQUFVO0lBQ1YsaUJBQWdCLEVBQ25CO0VBeFVGO0lBMFVLLGlCQUFnQixFQUNuQjtFQTNVRjtJQTZVSyxrQkFBaUI7SUFDakIsbUJBQWtCLEVBQ3JCO0VBL1VGO0lBaVZLLGtCQUFpQjtJQUNqQixpQkFBZ0IsRUFDbkI7RUFuVkY7SUFxVksseUNBQXVDLEVBQzFDO0VBdFZGO0lBd1ZLLGlCQUFnQjtJQUNoQixtQkFBa0I7SUFDbEIsa0JBQWlCLEVBQ3BCO0VBM1ZGO0lBNlZLLGlCQUFnQjtJQUNoQixVQUFTLEVBQ1o7RUEvVkY7SUFpV0ssbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixpQ0FBZ0M7SUFDaEMsNkJBQTRCO0lBQzVCLHlCQUF3QjtJQUN4QixZQUFXLEVBQ2Q7RUF0TkY7SUF3TkssMENBQXlDO0lBQ3pDLGlDQUFnQyxFQUNuQztFQTFORjtJQTROSyxpQkFBZ0I7SUFDaEIsdUJBQXNCO0lBQ3RCLG9CQUFtQixFQUNsQjtFQS9OTjtJQWlPSyxZQUFXO0lBQ1gsbUJBQWtCLEVBQ3JCO0VBbk9GO0lBcU9LLGVBQWM7SUFDZCx1QkFBc0IsRUFDdEIsRUFBQSIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNC4zXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbCwgLnJldmVhbC50aW55LCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLmxhcmdlIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cblxuLyogRm9udCBGYWNlICovXG4vKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAyICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqLyB9XG5cbi8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi8gfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqLyB9XG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi8gfVxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIjsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgZm9udC1mYW1pbHk6IFwiRm9yZEFudGVubmEtUmVndWxhclwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5yb3c6OmJlZm9yZSwgLnJvdzo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5yb3c6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJvdyAucm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIC5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAucm93LmV4cGFuZGVkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAucm93LmV4cGFuZGVkIC5yb3cge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLnJvdzpub3QoLmV4cGFuZGVkKSAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1uLCAucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbiwgLmNvbHVtbnMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY29sdW1uLmVuZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5lbmQuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lOyB9XG5cbi5yb3cgLmNvbHVtbi5yb3cucm93LCAucm93IC5yb3cucm93LmNvbHVtbnMge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0xNi42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtcHVzaC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAyNSU7IH1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTMzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtcHVzaC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7IH1cblxuLnNtYWxsLXB1bGwtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTUwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTU4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uc21hbGwtcHVzaC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA3NSU7IH1cblxuLnNtYWxsLXB1bGwtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTc1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTgzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyMCU7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMi41JTsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uc21hbGwtY29sbGFwc2UgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmV4cGFuZGVkLnJvdyAuc21hbGwtY29sbGFwc2Uucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuXG4uc21hbGwtY2VudGVyZWQge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5zbWFsbC1jZW50ZXJlZCwgLnNtYWxsLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11bmNlbnRlcmVkLFxuLnNtYWxsLXB1c2gtMCxcbi5zbWFsbC1wdWxsLTAge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLm1lZGl1bS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmV4cGFuZGVkLnJvdyAubWVkaXVtLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLm1lZGl1bS1jZW50ZXJlZCwgLm1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkLFxuICAubWVkaXVtLXB1c2gtMCxcbiAgLm1lZGl1bS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTsgfVxuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZXhwYW5kZWQucm93IC5sYXJnZS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICAubGFyZ2UtY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5sYXJnZS1jZW50ZXJlZCwgLmxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdW5jZW50ZXJlZCxcbiAgLmxhcmdlLXB1c2gtMCxcbiAgLmxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4uY29sdW1uLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29sdW1uLWJsb2NrIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmdyaWQtY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH0gfVxuICAuZ3JpZC1jb250YWluZXIuZnVsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5ncmlkLXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG5cbi5jZWxsIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1pbi1oZWlnaHQ6IDBweDtcbiAgbWluLXdpZHRoOiAwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jZWxsLmF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLmNlbGwuc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC14ID4gLmF1dG8ge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNocmluayB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC14ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4LWJhc2lzOiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTMge1xuICB3aWR0aDogMjUlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTYge1xuICB3aWR0aDogNTAlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCB7XG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxcmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxcmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH0gfVxuXG4uc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiAyMCU7IH1cblxuLnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNC4yODU3MSU7IH1cblxuLnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiAxMi41JTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxcmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxcmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxcmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyMCUgLSAxcmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxcmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxcmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDFyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxcmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDJyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMnJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAycmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMnJlbSk7IH0gfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC41cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC41cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC41cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC41cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAxcmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDFyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAxcmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDFyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAxcmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDFyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAxcmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMXJlbSk7IH0gfVxuXG4uZ3JpZC15IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gIC5ncmlkLXkgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLXNocmluaywgLmdyaWQteSA+IC5zbWFsbC1mdWxsLCAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC15ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS0xMCwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTMsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTYsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTksIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiAyNSU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiA1MCU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiA3NSU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTFyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMHZ3OyB9XG5cbi5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNlbGwtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eXBlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2steSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eXBlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eXBlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eXBlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBoZWlnaHQ6IDEwMHZoOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDJyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMnJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAycmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDFyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDJyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDFyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMnJlbSk7IH0gfVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvcmRBbnRlbm5hLVJlZ3VsYXJcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAzcmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtOyB9XG4gIGg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtOyB9XG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMDA3NWI2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwNjU5ZDsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICMzMzMzMzM7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICMzMzMzMzM7IH1cbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCUIFwiOyB9XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMDAwMDAwO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICMzMzMzMzM7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMzMzMztcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzViNjtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTg4OTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLnRpbnkge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24uc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5idXR0b24ucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzViNjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDVlOTI7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA4MmE0NztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDYyMjM5O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24ud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzViNjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzViNjtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA4MmE0NztcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3Mge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLmhvbGxvdyB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgIzAwNzViNjtcbiAgICBjb2xvcjogIzAwNzViNjsgfVxuICAgIC5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwM2I1YjtcbiAgICAgIGNvbG9yOiAjMDAzYjViOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3c6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgIzAwNzViNjtcbiAgICAgICAgY29sb3I6ICMwMDc1YjY7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICMwMDc1YjY7XG4gICAgICBjb2xvcjogIzAwNzViNjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzAwM2I1YjtcbiAgICAgICAgY29sb3I6ICMwMDNiNWI7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjMDA3NWI2O1xuICAgICAgICAgIGNvbG9yOiAjMDA3NWI2OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICMwODJhNDc7XG4gICAgICBjb2xvcjogIzA4MmE0NzsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwNDE1MjQ7XG4gICAgICAgIGNvbG9yOiAjMDQxNTI0OyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjMDgyYTQ3O1xuICAgICAgICAgIGNvbG9yOiAjMDgyYTQ3OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgICAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI2NjNGIzNztcbiAgICAgICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmNsZWFyIHtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjMDA3NWI2O1xuICAgIGNvbG9yOiAjMDA3NWI2OyB9XG4gICAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwM2I1YjtcbiAgICAgIGNvbG9yOiAjMDAzYjViOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjMDA3NWI2O1xuICAgICAgICBjb2xvcjogIzAwNzViNjsgfVxuICAgIC5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLmJ1dHRvbi5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSB7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAjMDA3NWI2O1xuICAgICAgY29sb3I6ICMwMDc1YjY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAzYjViO1xuICAgICAgICBjb2xvcjogIzAwM2I1YjsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgIzAwNzViNjtcbiAgICAgICAgICBjb2xvcjogIzAwNzViNjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSB7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAjMDgyYTQ3O1xuICAgICAgY29sb3I6ICMwODJhNDc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzA0MTUyNDtcbiAgICAgICAgY29sb3I6ICMwNDE1MjQ7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgIzA4MmE0NztcbiAgICAgICAgICBjb2xvcjogIzA4MmE0NzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3Mge1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICMzYWRiNzY7XG4gICAgICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuYWxlcnQge1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgI2NjNGIzNztcbiAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICAgICAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNjYzRiMzc7XG4gICAgICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cywgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMDA3NWI2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMDA3NWI2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMwODJhNDc7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgIHRvcDogLTAuMWVtO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmEuYnV0dG9uOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMzMzMztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OjpwbGFjZWhvbGRlcixcbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2FjYWNhOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuW3R5cGU9J2ZpbGUnXSxcblt0eXBlPSdjaGVja2JveCddLFxuW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsW2Zvcl0sXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWxbZm9yXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG5sYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuW3R5cGU9J2ZpbGUnXSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IDAuNTYyNXJlbSAwOyB9XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwsIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi13aWR0aDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4gIC5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTsgfVxuICAuZmllbGRzZXQgbGVnZW5kIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW07XG4gICAgcGFkZGluZzogMCAwLjE4NzVyZW07IH1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4NTEsIDUxLCA1MSUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7IH0gfVxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMzMzMztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBzZWxlY3Q6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgc2VsZWN0W211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWVkZWI7IH1cbiAgLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyk6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5mb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmN2Y3Zjc7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMDA3NWI2OyB9XG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmN2Y3O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbnRlbnQ6ICcrJzsgfVxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDEzJzsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjdmN2Y3O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICA6bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y3ZjdmNzsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgbGkge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudSAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA3NWI2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIHJpZ2h0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDsgfVxuXG4uc3VibWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDsgfVxuICAuc3VibWVudS10b2dnbGU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMwMDc1YjYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW46IGF1dG87IH1cblxuLnN1Ym1lbnUtdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwOyB9XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAyLjFlbTtcbiAgcGFkZGluZzogMC4zZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAwLjZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzAwNzViNjtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJhZGdlLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICMwMDc1YjY7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJhZGdlLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzA4MmE0NztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYmFkZ2Uuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYmFkZ2Uud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYmFkZ2UuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCAwLjc1cmVtO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgY29sb3I6ICNjYWNhY2E7IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjMDA3NWI2OyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICNjYWNhY2E7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmJ1dHRvbi1ncm91cC50aW55IC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAuc21hbGwgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAubGFyZ2UgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzViNjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ZTkyO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA4MmE0NztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA2MjIzOTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgICAgZmxleDogMCAwIDEwMCU7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWVkZmY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzVlMWY4O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWZhZWE7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNkOTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZTRlMTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAuY2FsbG91dC5sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cblxuLmNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmN2Y3Zjc7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jYXJkID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtZGl2aWRlciB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG4gIC5jYXJkLWRpdmlkZXIgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1zZWN0aW9uIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLWltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4OyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gICAgcmlnaHQ6IDAuNjZyZW07XG4gICAgdG9wOiAwLjMzZW07XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAubWVudSBhLFxuICAubWVudSAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLm1lbnUgaW5wdXQsXG4gIC5tZW51IHNlbGVjdCxcbiAgLm1lbnUgYSxcbiAgLm1lbnUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51IGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lbnUsIC5tZW51Lmhvcml6b250YWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZW51LnZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZW51LmV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5tZW51LnNpbXBsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5tZW51LnNpbXBsZSBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gICAgLm1lbnUuc2ltcGxlIGEge1xuICAgICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS5tZWRpdW0tdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUubWVkaXVtLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS5tZWRpdW0tc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW51LmxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51LmxhcmdlLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51LmxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS5sYXJnZS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIC5tZW51Lm5lc3RlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5tZW51Lmljb25zIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lbnUuaWNvbi10b3AgYSwgLm1lbnUuaWNvbi1yaWdodCBhLCAubWVudS5pY29uLWJvdHRvbSBhLCAubWVudS5pY29uLWxlZnQgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLWxlZnQgbGkgYSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tbGVmdCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXJpZ2h0IGxpIGEge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXRvcCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA3NWI2O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA3NWI2O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5tZW51LmFsaWduLWxlZnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudS5hbGlnbi1yaWdodCBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgLm1lbnUuYWxpZ24tcmlnaHQgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVudS5hbGlnbi1jZW50ZXIgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubWVudS5hbGlnbi1jZW50ZXIgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51IC5tZW51LXRleHQge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tZW51LWljb246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogIzAwNzViNjtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICMwMDc1YjYsIDAgMTRweCAwICMwMDc1YjY7XG4gICAgY29udGVudDogJyc7IH1cbiAgLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMDgyYTQ3LCAwIDE0cHggMCAjMDgyYTQ3OyB9XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMDAwMDAwLCAwIDE0cHggMCAjMDAwMDAwO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMzMzMzMzLCAwIDE0cHggMCAjMzMzMzMzOyB9XG5cbi5pcy1kcmlsbGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmlzLWRyaWxsZG93biBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7IH1cblxuLmRyaWxsZG93biBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWNsb3Npbmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuICAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSBhIHtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uZHJpbGxkb3duIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kcmlsbGRvd24gLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICByaWdodDogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDc1YjY7IH1cblxuLmRyaWxsZG93bi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDA3NWI2OyB9XG5cbi5kcmlsbGRvd24uYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDc1YjYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cblxuLmRyaWxsZG93biAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDA3NWI2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAuZHJvcGRvd24tcGFuZS5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZHJvcGRvd24tcGFuZS5pcy1vcGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5kcm9wZG93bi1wYW5lLnRpbnkge1xuICB3aWR0aDogMTAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUubGFyZ2Uge1xuICB3aWR0aDogNDAwcHg7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3NWI2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtM3B4OyB9XG5cbi5kcm9wZG93bi5tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7XG4gICAgb3V0bGluZTogMDsgfVxuXG4uZHJvcGRvd24ubWVudSAuaXMtYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzAwNzViNjsgfVxuXG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDA3NWI2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDc1YjY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMwMDc1YjYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDA3NWI2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwNzViNjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMwMDc1YjYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzAwNzViNiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwNzViNjsgfSB9XG5cbi5kcm9wZG93bi5tZW51LmFsaWduLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7IH1cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC02cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAuZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDc1YjYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwNzViNjsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4gIC5yZXNwb25zaXZlLWVtYmVkIG9iamVjdCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4gIC5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuICAuZmxleC12aWRlbyBpZnJhbWUsXG4gIC5mbGV4LXZpZGVvIG9iamVjdCxcbiAgLmZsZXgtdmlkZW8gZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4sXG4gIC5mbGV4LXZpZGVvLndpZGVzY3JlZW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6ICMwMDc1YjY7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5sYWJlbC5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA3NWI2O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5sYWJlbC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmxhYmVsLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmxhYmVsLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmxhYmVsLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaWEtb2JqZWN0IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1haW4tc2VjdGlvbiB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuXG4uaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDExO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgdmlzaWJpbGl0eSAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ub2ZmLWNhbnZhcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAxMjsgfVxuICAub2ZmLWNhbnZhcy5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6IDEzOyB9XG4gICAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHotaW5kZXg6IDEyOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogMTM7IH1cbiAgICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH1cbiAgLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAtMTNweCAwIDIwcHggLTEzcHggcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMTNweCAwIDIwcHggLTEzcHggcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tdG9wIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3Age1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0xM3B4IDIwcHggLTEzcHggcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1ib3R0b20uaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMTNweCAyMHB4IC0xM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0OyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tYm90dG9tIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogaW5oZXJpdDsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tYm90dG9tIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5vcmJpdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ub3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTsgfVxuICAub3JiaXQtc2xpZGUubm8tbW90aW9udWkuaXMtYWN0aXZlIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuXG4ub3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDsgfVxuXG4ub3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ub3JiaXQtcHJldmlvdXMsIC5vcmJpdC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1wcmV2aW91cywgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1uZXh0IHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vcmJpdC1wcmV2aW91czpob3ZlciwgLm9yYml0LW5leHQ6aG92ZXIsIC5vcmJpdC1wcmV2aW91czphY3RpdmUsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmZvY3VzLCAub3JiaXQtbmV4dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi5vcmJpdC1wcmV2aW91cyB7XG4gIGxlZnQ6IDA7IH1cblxuLm9yYml0LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LWJ1bGxldHMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgICB3aWR0aDogMS4ycmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIG1hcmdpbjogMC4xcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhOyB9XG4gICAgLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7IH1cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7IH1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5wYWdpbmF0aW9uIGE6aG92ZXIsXG4gICAgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cbiAgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjMDA3NWI2O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb250ZW50OiAnXFwyMDI2JztcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBhYic7IH1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGJiJzsgfVxuXG4ucHJvZ3Jlc3Mge1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7IH1cbiAgLnByb2dyZXNzLnByaW1hcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3NWI2OyB9XG4gIC5wcm9ncmVzcy5zZWNvbmRhcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDgyYTQ3OyB9XG4gIC5wcm9ncmVzcy5zdWNjZXNzIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjsgfVxuICAucHJvZ3Jlc3Mud2FybmluZyAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7IH1cbiAgLnByb2dyZXNzLmFsZXJ0IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNzsgfVxuXG4ucHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzViNjsgfVxuXG4ucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lOyB9XG5cbi5zbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5zbGlkZXItZmlsbC5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjsgfVxuXG4uc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzViNjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuc2xpZGVyLWhhbmRsZSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjM5YjsgfVxuICAuc2xpZGVyLWhhbmRsZS5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjsgfVxuXG4uc2xpZGVyLmRpc2FibGVkLFxuLnNsaWRlcltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5zbGlkZXIudmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpOyB9XG4gIC5zbGlkZXIudmVydGljYWwgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDAuNXJlbTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5zbGlkZXIudmVydGljYWwgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxLjRyZW07XG4gICAgaGVpZ2h0OiAxLjRyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG5cbi5zdGlja3ktY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zdGlja3kge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICAgIHRvcDogMDsgfVxuICAuc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbi5zdGlja3kuaXMtYW5jaG9yZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvOyB9XG4gIC5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgICBib3R0b206IDA7IH1cblxuYm9keS5pcy1yZXZlYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuaHRtbC5pcy1yZXZlYWwtb3Blbixcbmh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40NSk7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICAucmV2ZWFsIC5jb2x1bW4sIC5yZXZlYWwgLmNvbHVtbnMge1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICAucmV2ZWFsLmNvbGxhcHNlIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC50aW55IHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnNtYWxsIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLmxhcmdlIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgLnJldmVhbC5mdWxsIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5zd2l0Y2gge1xuICBoZWlnaHQ6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zd2l0Y2gtcGFkZGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDRyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBpbnB1dCArIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gICAgY29udGVudDogJyc7IH1cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA3NWI2OyB9XG4gICAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgICBsZWZ0OiAyLjI1cmVtOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBpbnB1dDpmb2N1cyB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi5zd2l0Y2gtYWN0aXZlLCAuc3dpdGNoLWluYWN0aXZlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5zd2l0Y2gtYWN0aXZlIHtcbiAgbGVmdDogOCU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zd2l0Y2gtaW5hY3RpdmUge1xuICByaWdodDogMTUlOyB9XG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnN3aXRjaC50aW55IHtcbiAgaGVpZ2h0OiAxLjVyZW07IH1cbiAgLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNjI1cmVtOyB9XG4gIC5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICBsZWZ0OiAwLjI1cmVtO1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTsgfVxuICAuc3dpdGNoLnRpbnkgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgbGVmdDogMS43NXJlbTsgfVxuXG4uc3dpdGNoLnNtYWxsIHtcbiAgaGVpZ2h0OiAxLjc1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGUge1xuICAgIHdpZHRoOiAzLjVyZW07XG4gICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgbGVmdDogMnJlbTsgfVxuXG4uc3dpdGNoLmxhcmdlIHtcbiAgaGVpZ2h0OiAyLjVyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAyLjc1cmVtOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRoZWFkIHRoLFxuICB0aGVhZCB0ZCxcbiAgdGZvb3QgdGgsXG4gIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjsgfVxuICB0YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICB0YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjJmMmYyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0OyB9XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cblxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuICAudGFibGUtc2Nyb2xsIHRhYmxlIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y3ZjdmNztcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnRhYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bzsgfVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwOyB9XG4gIC50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYnMucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMwMDc1YjY7IH1cbiAgLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDgwYzY7IH1cblxuLnRhYnMtdGl0bGUge1xuICBmbG9hdDogbGVmdDsgfVxuICAudGFicy10aXRsZSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogIzAwNzViNjsgfVxuICAgIC50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICMwMDY1OWQ7IH1cbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICAgIGNvbG9yOiAjMDA3NWI2OyB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjdmN2Y3O1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y3ZjdmNztcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IHNvbGlkIDRweCAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDsgfVxuXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7IH1cbiAgYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDAsIDExNywgMTgyLCAwLjUpOyB9XG4gIGEudGh1bWJuYWlsIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbi50aXRsZS1iYXIge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cblxuLnRpdGxlLWJhci1sZWZ0LFxuLnRpdGxlLWJhci1yaWdodCB7XG4gIGZsZXg6IDEgMSAwcHg7IH1cblxuLnRpdGxlLWJhci1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50aXRsZS1iYXItdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5oYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzAwNzViNjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogaGVscDsgfVxuXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAwLjY0OTVyZW0pO1xuICB6LWluZGV4OiAxMjAwO1xuICBtYXgtd2lkdGg6IDIycmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3NWI2O1xuICBmb250LXNpemU6IDgwJTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLnRvb2x0aXA6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC50b29sdGlwLmJvdHRvbTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDA3NWI2O1xuICAgIGJvdHRvbTogMTAwJTsgfVxuICAudG9vbHRpcC5ib3R0b20uYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLnRvb2x0aXAudG9wOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMwMDc1YjYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiAxMDAlO1xuICAgIGJvdHRvbTogYXV0bzsgfVxuICAudG9vbHRpcC50b3AuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLnRvb2x0aXAubGVmdDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDA3NWI2O1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLnRvb2x0aXAubGVmdC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAudG9vbHRpcC5yaWdodDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDA3NWI2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLnRvb2x0aXAucmlnaHQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLnRvb2x0aXAuYWxpZ24tdG9wOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDEwJTsgfVxuICAudG9vbHRpcC5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdG9wOiBhdXRvOyB9XG4gIC50b29sdGlwLmFsaWduLWxlZnQ6OmJlZm9yZSB7XG4gICAgbGVmdDogMTAlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC50b29sdGlwLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwJTsgfVxuXG4udG9wLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC50b3AtYmFyLFxuICAudG9wLWJhciB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAudG9wLWJhciBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgLnRvcC1iYXIgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnRvcC1iYXIgaW5wdXQuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAudG9wLWJhciAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvcC1iYXIge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1hcmdpbjogMC41cmVtIDFyZW0gMC41cmVtIDA7IH1cblxuLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyLXJpZ2h0IHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBjbGlwLXBhdGg6IG5vbmU7IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi1qdXN0aWZ5IHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgtY2hpbGQtYXV0byB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuXG4uZmxleC1kaXItcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxuXG4uZmFkZS1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuXG4uZmFkZS1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNsb3cge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7IH1cblxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7IH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpOyB9IH1cblxuLnNwaW4tY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5zcGluLWNjdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWNjdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY2N3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7IH0gfVxuXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZS03ZGVnOyB9XG5cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTsgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTsgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLnNoYWtlLFxuLnNwaW4tY3csXG4uc3Bpbi1jY3csXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtczsgfVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1MCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMDAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMDAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwMCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxMDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTUwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PScxNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTUwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzIwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nMjAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjAwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyNTAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNTAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1MCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyNTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSczMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMzAwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSczMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzAwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzMwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSczMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMzUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzM1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nMzUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzM1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzUwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzQwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc0MDAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzQwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc0MDAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzQwMCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA0MDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNDUwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0NTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNDUwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzQ1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc0NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogNDUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNTAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzUwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nNTAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzUwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc1MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNTAwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzU1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc1NTAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzU1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1NTAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzU1MCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA1NTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNjAwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA2MDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNjAwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzYwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc2MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogNjAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNjUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzY1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNjUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nNjUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzY1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc2NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNjUwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzcwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc3MDAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzcwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc3MDAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzcwMCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNzUwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNzUwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9Jzc1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc3NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogNzUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nODAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzgwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogODAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nODAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzgwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc4MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nODAwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249Jzg1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc4NTAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9Jzg1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc4NTAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Jzg1MCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA4NTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nOTAwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA5MDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nOTAwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzkwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc5MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogOTAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nOTUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249Jzk1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogOTUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nOTUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Jzk1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc5NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nOTUwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTAwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTAwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEwNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTA1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTA1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzExMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTEwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzExMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTEwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzExMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzExNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTE1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTE1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzExNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTE1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzExNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTE1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEyMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTIwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEyMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTIwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEyMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEyNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTI1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEyNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTI1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEyNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEzMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTMwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTMwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEzMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTMwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEzMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTMwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEzNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTM1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEzNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTM1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEzNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE0MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTQwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE0MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTQwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE0MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTQ1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTQ1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTQ1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE0NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTQ1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE1MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTUwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTUwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE1MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE1NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTU1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTU1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE1NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTYwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTYwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTYwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE2MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTYwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE2NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTY1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE2NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTY1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE2NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE3MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTcwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE3MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTcwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE3MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTc1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTc1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTc1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE3NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTc1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE4MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTgwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE4MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTgwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxODAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE4MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE4NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTg1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE4NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTg1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE4NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTkwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTkwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTkwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxOTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE5MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTkwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE5NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTk1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE5NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTk1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxOTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE5NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjAwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjAwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIwNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjA1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIwNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjA1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIxMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjEwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIxMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjEwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIxMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIxNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjE1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjE1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIxNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjE1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIxNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjE1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIyMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjIwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIyMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjIwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIyMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIyNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjI1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIyNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjI1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIyNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIzMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjMwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjMwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIzMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjMwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIzMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjMwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIzNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjM1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIzNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjM1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIzNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI0MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjQwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI0MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjQwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI0MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjQ1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjQ1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjQ1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI0NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjQ1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI1MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjUwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjUwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI1NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjU1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjU1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjYwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjYwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjYwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI2MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjYwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI2NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjY1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI2NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjY1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI2NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI3MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjcwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI3MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjcwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI3MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjc1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjc1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjc1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI3NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjc1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI4MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjgwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI4MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjgwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyODAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI4MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI4NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjg1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI4NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjg1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI4NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjkwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjkwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjkwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyOTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI5MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjkwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI5NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjk1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI5NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjk1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyOTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI5NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzMwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMzAwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzMwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzAwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzMwMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwibGluZWFyXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImxpbmVhclwiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC4yNSwgMC43NSwgMC43NSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2VcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2UtaW5cIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDIsIDAsIDEsIDEpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXRcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXRcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuNTgsIDEpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXRcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXRcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDIsIDAsIDAuNTgsIDEpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1iYWNrXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2UtaW4tYmFja1wiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42LCAtMC4yOCwgMC43MzUsIDAuMDQ1KTsgfVxuXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1cImVhc2Utb3V0LWJhY2tcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXQtYmFja1wiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1iYWNrXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2UtaW4tb3V0LWJhY2tcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLXNpbmVcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1zaW5lXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ3LCAwLCAwLjc0NSwgMC43MTUpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXQtc2luZVwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLW91dC1zaW5lXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXQtc2luZVwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1zaW5lXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ0NSwgMC4wNSwgMC41NSwgMC45NSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLXF1YWRcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1xdWFkXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA4NSwgMC42OCwgMC41Myk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLW91dC1xdWFkXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2Utb3V0LXF1YWRcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXQtcXVhZFwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1xdWFkXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTsgfVxuXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1cImVhc2UtaW4tY3ViaWNcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1jdWJpY1wiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXQtY3ViaWNcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXQtY3ViaWNcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXQtY3ViaWNcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXQtY3ViaWNcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1xdWFydFwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLXF1YXJ0XCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA4NSwgMC42OCwgMC41Myk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLW91dC1xdWFydFwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLW91dC1xdWFydFwiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1xdWFydFwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1xdWFydFwiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NTUsIDAuMDMsIDAuNTE1LCAwLjk1NSk7IH1cblxuLyoqXHJcbiAqIEZhZGUgYW5pbWF0aW9uczpcclxuICogZmFkZVxyXG4gKiBmYWRlLXVwLCBmYWRlLWRvd24sIGZhZGUtbGVmdCwgZmFkZS1yaWdodFxyXG4gKiBmYWRlLXVwLXJpZ2h0LCBmYWRlLXVwLWxlZnQsIGZhZGUtZG93bi1yaWdodCwgZmFkZS1kb3duLWxlZnRcclxuICovXG5bZGF0YS1hb3NePSdmYWRlJ11bZGF0YS1hb3NePSdmYWRlJ10ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07IH1cbiAgW2RhdGEtYW9zXj0nZmFkZSddW2RhdGEtYW9zXj0nZmFkZSddLmFvcy1hbmltYXRlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbltkYXRhLWFvcz0nZmFkZS11cCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAwcHgpOyB9XG5cbltkYXRhLWFvcz0nZmFkZS1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwcHgpOyB9XG5cbltkYXRhLWFvcz0nZmFkZS1yaWdodCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMHB4LCAwKTsgfVxuXG5bZGF0YS1hb3M9J2ZhZGUtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwcHgsIDApOyB9XG5cbltkYXRhLWFvcz0nZmFkZS11cC1yaWdodCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMHB4LCAxMDBweCk7IH1cblxuW2RhdGEtYW9zPSdmYWRlLXVwLWxlZnQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMHB4LCAxMDBweCk7IH1cblxuW2RhdGEtYW9zPSdmYWRlLWRvd24tcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDBweCwgLTEwMHB4KTsgfVxuXG5bZGF0YS1hb3M9J2ZhZGUtZG93bi1sZWZ0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDBweCwgLTEwMHB4KTsgfVxuXG4vKipcclxuICogWm9vbSBhbmltYXRpb25zOlxyXG4gKiB6b29tLWluLCB6b29tLWluLXVwLCB6b29tLWluLWRvd24sIHpvb20taW4tbGVmdCwgem9vbS1pbi1yaWdodFxyXG4gKiB6b29tLW91dCwgem9vbS1vdXQtdXAsIHpvb20tb3V0LWRvd24sIHpvb20tb3V0LWxlZnQsIHpvb20tb3V0LXJpZ2h0XHJcbiAqL1xuW2RhdGEtYW9zXj0nem9vbSddW2RhdGEtYW9zXj0nem9vbSddIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtOyB9XG4gIFtkYXRhLWFvc149J3pvb20nXVtkYXRhLWFvc149J3pvb20nXS5hb3MtYW5pbWF0ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSBzY2FsZSgxKTsgfVxuXG5bZGF0YS1hb3M9J3pvb20taW4nXSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42KTsgfVxuXG5bZGF0YS1hb3M9J3pvb20taW4tdXAnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMHB4KSBzY2FsZSgwLjYpOyB9XG5cbltkYXRhLWFvcz0nem9vbS1pbi1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwcHgpIHNjYWxlKDAuNik7IH1cblxuW2RhdGEtYW9zPSd6b29tLWluLXJpZ2h0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwcHgsIDApIHNjYWxlKDAuNik7IH1cblxuW2RhdGEtYW9zPSd6b29tLWluLWxlZnQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMHB4LCAwKSBzY2FsZSgwLjYpOyB9XG5cbltkYXRhLWFvcz0nem9vbS1vdXQnXSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfVxuXG5bZGF0YS1hb3M9J3pvb20tb3V0LXVwJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDBweCkgc2NhbGUoMS4yKTsgfVxuXG5bZGF0YS1hb3M9J3pvb20tb3V0LWRvd24nXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDBweCkgc2NhbGUoMS4yKTsgfVxuXG5bZGF0YS1hb3M9J3pvb20tb3V0LXJpZ2h0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwcHgsIDApIHNjYWxlKDEuMik7IH1cblxuW2RhdGEtYW9zPSd6b29tLW91dC1sZWZ0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDBweCwgMCkgc2NhbGUoMS4yKTsgfVxuXG4vKipcclxuICogU2xpZGUgYW5pbWF0aW9uc1xyXG4gKi9cbltkYXRhLWFvc149J3NsaWRlJ11bZGF0YS1hb3NePSdzbGlkZSddIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG4gIFtkYXRhLWFvc149J3NsaWRlJ11bZGF0YS1hb3NePSdzbGlkZSddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG5bZGF0YS1hb3M9J3NsaWRlLXVwJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cblxuW2RhdGEtYW9zPSdzbGlkZS1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbltkYXRhLWFvcz0nc2xpZGUtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cblxuW2RhdGEtYW9zPSdzbGlkZS1sZWZ0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLyoqXHJcbiAqIEZsaXAgYW5pbWF0aW9uczpcclxuICogZmxpcC1sZWZ0LCBmbGlwLXJpZ2h0LCBmbGlwLXVwLCBmbGlwLWRvd25cclxuICovXG5bZGF0YS1hb3NePSdmbGlwJ11bZGF0YS1hb3NePSdmbGlwJ10ge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsgfVxuXG5bZGF0YS1hb3M9J2ZsaXAtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoLTEwMGRlZyk7IH1cbiAgW2RhdGEtYW9zPSdmbGlwLWxlZnQnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMCk7IH1cblxuW2RhdGEtYW9zPSdmbGlwLXJpZ2h0J10ge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgxMDBkZWcpOyB9XG4gIFtkYXRhLWFvcz0nZmxpcC1yaWdodCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTsgfVxuXG5bZGF0YS1hb3M9J2ZsaXAtdXAnXSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKC0xMDBkZWcpOyB9XG4gIFtkYXRhLWFvcz0nZmxpcC11cCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKTsgfVxuXG5bZGF0YS1hb3M9J2ZsaXAtZG93biddIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMTAwZGVnKTsgfVxuICBbZGF0YS1hb3M9J2ZsaXAtZG93biddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKTsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4vYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4vZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuL2ZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi9mb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stcHJldjpob3ZlciwgLnNsaWNrLXByZXY6Zm9jdXMsXG4gIC5zbGljay1uZXh0OmhvdmVyLFxuICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2xpY2stcHJldjpob3ZlcjpiZWZvcmUsIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsXG4gICAgLnNsaWNrLW5leHQ6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnNsaWNrLXByZXYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlLFxuICAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMjU7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMjVweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMjVweDsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oaQXCI7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIuKGklwiOyB9XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLihpJcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaQXCI7IH1cblxuLyogRG90cyAqL1xuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1kb3RzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgb3BhY2l0eTogMC43NTsgfVxuXG4uaW5kZXgtbWVudSB7XG4gIGhlaWdodDogMTAwdmg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5pbmRleC1tZW51IC5tZW51IGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluOyB9XG4gICAgLmluZGV4LW1lbnUgLm1lbnUgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzAwNzViNjsgfVxuXG4uY29udGFpbmVyLWRpdmlkZXItcmlnaHQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y3ZjdmNzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWluZXItZGl2aWRlci1yaWdodCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZjdmN2Y3O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfSB9XG5cbi5hdmF0YXIge1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1pbi13aWR0aDogNDBweDsgfVxuICAuYXZhdGFyLmF2YXRhci1zbWFsbCB7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAuYXZhdGFyLmF2YXRhci1sYXJnZSB7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi5tYjAge1xuICBtYXJnaW4tYm90dG9tOiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iMSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWIyIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYjMge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKiBNZW51IGljb24gKi9cbi5tZW51LWljb24tc2hhcGUge1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDN2aDtcbiAgbGVmdDogM3ZoO1xuICB6LWluZGV4OiAyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9jbG9zZS1pY29uLnBuZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLm1haW4tbWVudS1kcm9wcGVyIC5tZW51LWljb24tc2hhcGUge1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDNweDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDd2dztcbiAgei1pbmRleDogMjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY2xvc2UtaWNvbi1ibHVlLnBuZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFpbi1tZW51LWRyb3BwZXIgLm1lbnUtaWNvbi1zaGFwZSB7XG4gICAgdG9wOiAxMHB4O1xuICAgIHJpZ2h0OiAxMHB4OyB9IH1cblxuLyogTmF2aWdhdGlvbiAqL1xuLm92ZXJsYXktbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjMTk3NmQyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDE2LCAxNiwgMTYsIDAuNyk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzLCB2aXNpYmlsaXR5IDAuMzVzLCBoZWlnaHQgMC42cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzLCB2aXNpYmlsaXR5IDAuMzVzLCBoZWlnaHQgMC42cyBlYXNlOyB9XG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gIC5vdmVybGF5LW5hdiB7XG4gICAgYmFja2dyb3VuZDogIzE5NzZkMjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE2LCAxNiwgMTYsIDAuOTUpOyB9IH1cblxuLyogT3BlbiBuYXZpZ2lhdGlvbiAqL1xuLm92ZXJsYXktbmF2LmFjdGl2ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4ubmF2LWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gIHRvcDogMTB2aDtcbiAgcGFkZGluZy1ib3R0b206IDEwdmg7IH1cblxuLm5hdi1jb250ZW50LTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gIHRvcDogMjUlICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIG1hcmdpbi10b3A6IDQ4dnc7IH1cblxuLm5hdi1jb250ZW50IHVsIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLm5hdi1jb250ZW50ID4gdWwge1xuICBib3JkZXItbGVmdDogOHB4IHNvbGlkICNGQUI1MTc7XG4gIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogM3ZoOyB9XG5cbi5uYXYtY29udGVudCB1bCBsaSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBsZXR0ZXItc3BhY2luZzogMC42cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHdoaXRlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlOyB9XG5cbi5oZWFkLXRvcCB7XG4gIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQmxhY2snLCdGb3JkQW50ZW5uYS1Cb2xkJztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gIGZvbnQtc2l6ZTogMi4zdnc7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uc3ViLXByby1pdGVtcyB7XG4gIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCc7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogM3Z3O1xuICBmb250LXNpemU6IDEuMnZ3O1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmctdG9wOiAxNXB4OyB9XG4gIC5zdWItcHJvLWl0ZW1zIGE6aG92ZXIsIC5zdWItcHJvLWl0ZW1zIGE6Zm9jdXMge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogI0ZBQjUxNzsgfVxuXG4uc3ViLXByby1pdGVtcy1hY2Mge1xuICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgZm9udC1zaXplOiAxLjJ2dztcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAuc3ViLXByby1pdGVtcy1hY2MgYTpob3ZlciwgLnN1Yi1wcm8taXRlbXMtYWNjIGE6Zm9jdXMge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogIzA2NzlCQzsgfVxuXG4udmVoaWNsZS1ncm91cC1pbiB7XG4gIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCc7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogM3Z3O1xuICBmb250LXNpemU6IDEuMnZ3O1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4uY29tbS1zaWRlIC52ZWhpY2xlLWdyb3VwLWluIGE6aG92ZXIsIC5jb21tLXNpZGUgLnZlaGljbGUtZ3JvdXAtaW4gYTpmb2N1cyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICNGQUI1MTc7IH1cblxuLnN1Yi1wcm8taXRlbXMtcmVjIHtcbiAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gIGZvbnQtc2l6ZTogMS4ydnc7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZy10b3A6IDE1cHg7IH1cbiAgLnN1Yi1wcm8taXRlbXMtcmVjIGE6aG92ZXIsIC5zdWItcHJvLWl0ZW1zLXJlYyBhOmZvY3VzIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICMwNjYzNzQ7IH1cblxuLnN1Yi1wcm8taXRlbXMtb3Age1xuICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgZm9udC1zaXplOiAyMnB4O1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIHBhZGRpbmctdG9wOiAxNXB4OyB9XG5cbi5zdWItcHJvLWl0ZW1zLW9wOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzA2NzlCQzsgfVxuXG4uc3ViLXByby1pdGVtcy1vcC1hY2M6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDY3OUJDOyB9XG5cbi5pbmNlbi1saXN0IHtcbiAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gIGZvbnQtc2l6ZTogMC44dnc7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG4gIC5pbmNlbi1saXN0IGE6aG92ZXIsIC5pbmNlbi1saXN0IGE6Zm9jdXMge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogI0ZBQjUxNzsgfVxuXG4uaW5jZW4tbGlzdC1hY2Mge1xuICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgZm9udC1zaXplOiAwLjh2dztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgLmluY2VuLWxpc3QtYWNjIGE6aG92ZXIsIC5pbmNlbi1saXN0LWFjYyBhOmZvY3VzIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICMwNjc5QkM7IH1cblxuLmFjY2Vzcy1zaWRlIHtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAjMDY3OUJDICFpbXBvcnRhbnQ7IH1cblxuLmFjY2Vzcy1zaWRlIC52ZWhpY2xlLWdyb3VwLWluIGE6aG92ZXIsIC5hY2Nlc3Mtc2lkZSAudmVoaWNsZS1ncm91cC1pbiBhOmZvY3VzIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzA2NzlCQzsgfVxuXG4ucmVjLXNpZGUge1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkICMwNjYzNzQgIWltcG9ydGFudDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogNThweDtcbiAgcGFkZGluZy1sZWZ0OiAzcHg7IH1cblxuLyogTWVkaWEgcXVlcmllcyAqL1xuLyogU21hbGwgb25seSAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5uYXYtY29udGVudCA+IHVsIHtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkICNGQUI1MTc7XG4gICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDJ2aDsgfVxuICAuYWNjZXNzLXNpZGUge1xuICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgIzA2NzlCQyAhaW1wb3J0YW50OyB9XG4gIC5yZWMtc2lkZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjMDY2Mzc0ICFpbXBvcnRhbnQ7IH1cbiAgLmhlYWQtdG9wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDYuM3Z3O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnN1Yi1wcm8taXRlbXMge1xuICAgIHBhZGRpbmctbGVmdDogM3Z3O1xuICAgIGZvbnQtc2l6ZTogMy4ydnc7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7IH1cbiAgLnN1Yi1wcm8taXRlbXMtYWNjIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDMuMnZ3O1xuICAgIHBhZGRpbmctdG9wOiAxNXB4OyB9XG4gIC5zdWItcHJvLWl0ZW1zLXJlYyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gICAgZm9udC1zaXplOiAzLjJ2dztcbiAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAudmVoaWNsZS1ncm91cC1pbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gICAgZm9udC1zaXplOiAzLjJ2dztcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfVxuICAuaW5jZW4tbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gICAgZm9udC1zaXplOiAydnc7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgLmluY2VuLWxpc3QtYWNjIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDJ2dztcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBtYXJnaW4tbGVmdDogMzBweDsgfSB9XG5cbi8qIEJsdXIgRWZmZWN0ICovXG4uYmx1ci1vdmVybGF5Lm9uIHtcbiAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoMzBweCk7XG4gIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgZmlsdGVyOiBCbHVyKFN0cmVuZ3RoPTgwKTsgfVxuXG4ubm9zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi50eXBlLXNpZGVsaW5lcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC50eXBlLXNpZGVsaW5lcyBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIC50eXBlLXNpZGVsaW5lcyBzcGFuOmJlZm9yZSwgLnR5cGUtc2lkZWxpbmVzIHNwYW46YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogOTk5OXB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDJweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgICAudHlwZS1zaWRlbGluZXMgc3BhbjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDEwMCU7IH1cbiAgICAudHlwZS1zaWRlbGluZXMgc3BhbjphZnRlciB7XG4gICAgICBsZWZ0OiAxMDAlOyB9XG5cbi50eXBlLXNpZGVsaW5lcy1kb3R0ZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudHlwZS1zaWRlbGluZXMtZG90dGVkIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgLnR5cGUtc2lkZWxpbmVzLWRvdHRlZCBzcGFuOmJlZm9yZSwgLnR5cGUtc2lkZWxpbmVzLWRvdHRlZCBzcGFuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDk5OTlweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgYm9yZGVyLXRvcC1zdHlsZTogZG90dGVkO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMnB4O1xuICAgICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAgIC50eXBlLXNpZGVsaW5lcy1kb3R0ZWQgc3BhbjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDEwMCU7IH1cbiAgICAudHlwZS1zaWRlbGluZXMtZG90dGVkIHNwYW46YWZ0ZXIge1xuICAgICAgbGVmdDogMTAwJTsgfVxuXG4uZG91YmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZG91YmxlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVlbTsgfVxuICAgIC5kb3VibGUgc3BhbjpiZWZvcmUsIC5kb3VibGUgc3BhbjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiA5OTk5cHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMnB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgICBoZWlnaHQ6IDAuNWVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuMjVlbTsgfVxuICAgIC5kb3VibGUgc3BhbjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDEwMCU7IH1cbiAgICAuZG91YmxlIHNwYW46YWZ0ZXIge1xuICAgICAgbGVmdDogMTAwJTsgfVxuXG4uY3VzdG9tIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuY3VzdG9tIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAuY3VzdG9tIHNwYW46YmVmb3JlLCAuY3VzdG9tIHNwYW46YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgYm9yZGVyLXRvcC1zdHlsZTogZG90dGVkO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogNHB4O1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzI5ODBiOTtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgICAuY3VzdG9tIHNwYW46YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAxMDAlOyB9XG4gICAgLmN1c3RvbSBzcGFuOmFmdGVyIHtcbiAgICAgIGxlZnQ6IDEwMCU7IH1cblxuLmN1c3RvbS0yIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuY3VzdG9tLTIgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtOyB9XG4gICAgLmN1c3RvbS0yIHNwYW46YmVmb3JlLCAuY3VzdG9tLTIgc3BhbjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiA5OTk5cHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogNHB4O1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzI3YWU2MDtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgICAuY3VzdG9tLTIgc3BhbjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDEwMCU7IH1cbiAgICAuY3VzdG9tLTIgc3BhbjphZnRlciB7XG4gICAgICBsZWZ0OiAxMDAlOyB9XG5cbi50aGluZyB7XG4gIHotaW5kZXg6IDQwMDA7IH1cblxuLmFwcC1kYXNoYm9hcmQge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5hcHAtZGFzaGJvYXJkLWJvZHkge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uYXBwLWRhc2hib2FyZC1zaWRlYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gIC5hcHAtZGFzaGJvYXJkLXNpZGViYXIgLmFwcC1kYXNoYm9hcmQtb3Blbi1zaWRlYmFyLFxuICAuYXBwLWRhc2hib2FyZC1zaWRlYmFyIC5hcHAtZGFzaGJvYXJkLWNsb3NlLXNpZGViYXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIGhlaWdodDogM3JlbTsgfVxuICAuYXBwLWRhc2hib2FyZC1zaWRlYmFyIC5hcHAtZGFzaGJvYXJkLXNpZGViYXItYmxvY2stdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmFwcC1kYXNoYm9hcmQtc2lkZWJhciAuYXBwLWRhc2hib2FyZC1zaWRlYmFyLWNsb3NlLWJ1dHRvbiBpbWcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cbiAgLmFwcC1kYXNoYm9hcmQtc2lkZWJhciBpbWcgKyAuYXBwLWRhc2hib2FyZC1zaWRlYmFyLXRleHQge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5hcHAtZGFzaGJvYXJkLXNpZGViYXIgLmFwcC1kYXNoYm9hcmQtc2lkZWJhci1pbm5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgLmFwcC1kYXNoYm9hcmQtc2lkZWJhciAuYXBwLWRhc2hib2FyZC1zaWRlYmFyLWlubmVyIC5tZW51ID4gbGkgPiBhIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwLjYzNjhyZW0gMXJlbTsgfVxuXG4ucmV2ZWFsLWZvci1tZWRpdW0gLmFwcC1kYXNoYm9hcmQtb3Blbi1zaWRlYmFyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYXBwLWRhc2hib2FyZC1zaWRlYmFyLWZvb3RlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNDIsIDU3LCA3OSwgMC44KTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5hcHAtZGFzaGJvYXJkLW9wZW4tc2lkZWJhciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYXBwLWRhc2hib2FyZC1ib2R5LWNvbnRlbnQge1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBmbGV4OiAxIDEgMDtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1tZWRpdW0gLmFwcC1kYXNoYm9hcmQtY2xvc2Utc2lkZWJhcixcbiAgLmFwcC1kYXNoYm9hcmQuc2hyaW5rLW1lZGl1bSAuYXBwLWRhc2hib2FyZC1zaWRlYmFyLXRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmFwcC1kYXNoYm9hcmQuc2hyaW5rLW1lZGl1bSAuYXBwLWRhc2hib2FyZC1vcGVuLXNpZGViYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuYXBwLWRhc2hib2FyZC5zaHJpbmstbWVkaXVtIC5hcHAtZGFzaGJvYXJkLXNpZGViYXIge1xuICAgIHdpZHRoOiA1cmVtOyB9XG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1tZWRpdW0gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDVyZW0pOyB9XG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1tZWRpdW0gLm1lbnUudmVydGljYWwgPiBsaSA+IGEge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1tZWRpdW0gLm1lbnUgbGk6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1tZWRpdW0gLm1lbnUgbGkgYSBzdmcge1xuICAgIG1hcmdpbjogMDsgfVxuICAuYXBwLWRhc2hib2FyZC5zaHJpbmstbWVkaXVtIC5tZW51IGxpIGEgc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1sYXJnZSAuYXBwLWRhc2hib2FyZC1jbG9zZS1zaWRlYmFyLFxuICAuYXBwLWRhc2hib2FyZC5zaHJpbmstbGFyZ2UgLmFwcC1kYXNoYm9hcmQtc2lkZWJhci10ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1sYXJnZSAuYXBwLWRhc2hib2FyZC1vcGVuLXNpZGViYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuYXBwLWRhc2hib2FyZC5zaHJpbmstbGFyZ2UgLmFwcC1kYXNoYm9hcmQtc2lkZWJhciB7XG4gICAgd2lkdGg6IDVyZW07IH1cbiAgLmFwcC1kYXNoYm9hcmQuc2hyaW5rLWxhcmdlIC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiA1cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1cmVtKTsgfVxuICAuYXBwLWRhc2hib2FyZC5zaHJpbmstbGFyZ2UgLm1lbnUudmVydGljYWwgPiBsaSA+IGEge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1sYXJnZSAubWVudSBsaTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7IH1cbiAgLmFwcC1kYXNoYm9hcmQuc2hyaW5rLWxhcmdlIC5tZW51IGxpIGEgc3ZnIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmFwcC1kYXNoYm9hcmQuc2hyaW5rLWxhcmdlIC5tZW51IGxpIGEgc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDsgfSB9XG5cbi5hcHAtZGFzaGJvYXJkLXRvcC1uYXYtYmFyIHtcbiAgaGVpZ2h0OiAzLjQzNzVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBmbGV4OiAwIDAgMy40Mzc1cmVtOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb3JkQW50ZW5uYUNvbmQtQm9sZFwiO1xuICBzcmM6IHVybChcIi9hc3NldHMvZm9udHMvRm9yZEFudGVubmFDb25kLUJvbGQuZW90P1wiKSBmb3JtYXQoXCJlb3RcIiksIHVybChcIi9hc3NldHMvZm9udHMvRm9yZEFudGVubmFDb25kLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hQ29uZC1Cb2xkLnN2ZyNGb3JkQW50ZW5uYUNvbmQtQm9sZFwiKSBmb3JtYXQoXCJzdmdcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvcmRBbnRlbm5hLVJlZ3VsYXJcIjtcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLVJlZ3VsYXIuZW90P1wiKSBmb3JtYXQoXCJlb3RcIiksIHVybChcIi9hc3NldHMvZm9udHMvRm9yZEFudGVubmEtUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi9hc3NldHMvZm9udHMvRm9yZEFudGVubmEtUmVndWxhci5zdmcjRm9yZEFudGVubmEtUmVndWxhclwiKSBmb3JtYXQoXCJzdmdcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvcmRBbnRlbm5hLVJlZ3VsYXJJdGFsaWNcIjtcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLVJlZ3VsYXJJdGFsaWMuZW90P1wiKSBmb3JtYXQoXCJlb3RcIiksIHVybChcIi9hc3NldHMvZm9udHMvRm9yZEFudGVubmEtUmVndWxhckl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi9hc3NldHMvZm9udHMvRm9yZEFudGVubmEtUmVndWxhckl0YWxpYy5zdmcjRm9yZEFudGVubmEtUmVndWxhckl0YWxpY1wiKSBmb3JtYXQoXCJzdmdcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvcmRBbnRlbm5hLVNlbWlib2xkXCI7XG4gIHNyYzogdXJsKFwiL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1TZW1pYm9sZC5lb3Q/XCIpIGZvcm1hdChcImVvdFwiKSwgdXJsKFwiL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1TZW1pYm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi9hc3NldHMvZm9udHMvRm9yZEFudGVubmEtU2VtaWJvbGQuc3ZnI0ZvcmRBbnRlbm5hLVNlbWlib2xkXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9yZEFudGVubmEtQm9sZFwiO1xuICBzcmM6IHVybChcIi9hc3NldHMvZm9udHMvRm9yZEFudGVubmEtQm9sZC5lb3Q/XCIpIGZvcm1hdChcImVvdFwiKSwgdXJsKFwiL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1Cb2xkLnN2ZyNGb3JkQW50ZW5uYS1Cb2xkXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9yZEFudGVubmEtQmxhY2tcIjtcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLUJsYWNrLmVvdD9cIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLUJsYWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1CbGFjay5zdmcjRm9yZEFudGVubmEtQmxhY2tcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb3JkQW50ZW5uYS1NZWRpdW1cIjtcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLU1lZGl1bS5lb3Q/XCIpIGZvcm1hdChcImVvdFwiKSwgdXJsKFwiL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1NZWRpdW0ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLU1lZGl1bS5zdmcjRm9yZEFudGVubmEtTWVkaXVtXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9yZEFudGVubmEtTGlnaHRcIjtcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLUxpZ2h0LmVvdD9cIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLUxpZ2h0LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1MaWdodC5zdmcjRm9yZEFudGVubmEtTGlnaHRcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbm5hdiAubWVudSBhLCBuYXYgLm1lbnUgLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuN3Z3OyB9XG5cbm5hdiAubWVudSAubWVudS10ZXh0IHtcbiAgcGFkZGluZzogMCAxcmVtOyB9XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICB6LWluZGV4OiAyNTsgfVxuXG5pbWcuYWRtaW4taWNvbiB7XG4gIHdpZHRoOiAydnc7XG4gIG1hcmdpbi10b3A6IC0wLjV2dzsgfVxuXG5oMSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XG4gIGZvbnQtc2l6ZTogMy4yMTA1dnc7XG4gIGxpbmUtaGVpZ2h0OiAwLjc7XG4gIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gIHBhZGRpbmc6IDEuNXZ3O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG5oMSBzcGFuIHtcbiAgZm9udC1zaXplOiAxLjI3ODl2dztcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG4uaW50ZXJpb3ItcGFnZSBoMSB7XG4gIGZvbnQtc2l6ZTogMy4yMTA1dnc7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmgyIHtcbiAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcbiAgZm9udC1zaXplOiAycmVtO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG5oMi5saWdodGJhY2sge1xuICBjb2xvcjogIzAwNzViNjtcbiAgcGFkZGluZzogMXJlbSAwOyB9XG5cbmgzIHtcbiAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcbiAgZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5saWdodC1zZWN0aW9uIGgzIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6IGluaGVyaXQ7IH1cblxuaDQge1xuICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMi4xdnc7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW46IDIuNjh2dyAwIDAgMS4xdnc7XG4gIHBhZGRpbmc6IDEuMXZ3O1xuICBiYWNrZ3JvdW5kOiAjMDgyYTQ3O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnVwZml0LW9wdGlvbnMtc2VjdGlvbiBoNCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS4xdncgMDtcbiAgZm9udC1zaXplOiAycmVtOyB9XG5cbi5iYW5uZXItdGFnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwOyB9XG4gIC5iYW5uZXItdGFnIGgyIHtcbiAgICBmb250LXNpemU6IDEuNXZ3O1xuICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgcGFkZGluZzogMC4yNXZ3IDAuNXZ3OyB9XG5cbnN1cCB7XG4gIGZvbnQtc2l6ZTogNTAlO1xuICB0b3A6IC0xZW07IH1cblxudWwuZmlyc3QtcGFydCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnRlY2hub2xvZ3ktdGlsZSBoNCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbi1yaWdodDogMi4xdnc7IH1cblxubGkuY2VsbCB7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDByZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLyogd2lkdGggKi9cbjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICB3aWR0aDogMTBweDsgfVxuXG4vKiBUcmFjayAqL1xuOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cblxuLyogSGFuZGxlICovXG46Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYmFja2dyb3VuZDogI2NhY2FjYTsgfVxuXG4vKiBIYW5kbGUgb24gaG92ZXIgKi9cbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzOyB9XG5cbi5kZXNrdG9wLWhlYWRlci1sb2dvIHtcbiAgd2lkdGg6IDE4LjA1dnc7XG4gIHRyYW5zaXRpb246IHdpZHRoIDMwMG1zIGxpbmVhcjsgfVxuXG4uZm9vdGVyLWxvZ28gaW1nIHtcbiAgd2lkdGg6IDIwdnc7XG4gIHRyYW5zaXRpb246IHdpZHRoIDMwMG1zIGxpbmVhcjsgfVxuXG4uaXMtc3R1Y2sgLmRlc2t0b3AtaGVhZGVyLWxvZ28ge1xuICB3aWR0aDogMTAuMDV2dzsgfVxuXG4udG9wLWJhciAubWVudSBsaSB7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZmZmZmZmO1xuICBtYXJnaW46IDAgMC43NXZ3O1xuICBmb250LXNpemU6IDF2dzsgfVxuICAudG9wLWJhciAubWVudSBsaS5jb21tZXJjaWFsLW5hdjpob3ZlciwgLnRvcC1iYXIgLm1lbnUgbGkuY29tbWVyY2lhbC1uYXY6Zm9jdXMsIC50b3AtYmFyIC5tZW51IGxpLmNvbW1lcmNpYWwtbmF2LmFjdGl2ZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICMwMDc1YjY7IH1cbiAgLnRvcC1iYXIgLm1lbnUgbGkuYWNjZXNzaWJpbGl0eS1uYXY6aG92ZXIsIC50b3AtYmFyIC5tZW51IGxpLmFjY2Vzc2liaWxpdHktbmF2OmZvY3VzLCAudG9wLWJhciAubWVudSBsaS5hY2Nlc3NpYmlsaXR5LW5hdi5hY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjMDA3NWI2OyB9XG4gIC50b3AtYmFyIC5tZW51IGxpLnJlY3JlYXRpb25hbC1uYXY6aG92ZXIsIC50b3AtYmFyIC5tZW51IGxpLnJlY3JlYXRpb25hbC1uYXY6Zm9jdXMsIC50b3AtYmFyIC5tZW51IGxpLnJlY3JlYXRpb25hbC1uYXYuYWN0aXZlIHtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzAwNzViNjsgfVxuICAudG9wLWJhciAubWVudSBsaS5zdGFydC13aXRoLXZlaGljbGUtbmF2OmhvdmVyLCAudG9wLWJhciAubWVudSBsaS5zdGFydC13aXRoLXZlaGljbGUtbmF2OmZvY3VzLCAudG9wLWJhciAubWVudSBsaS5zdGFydC13aXRoLXZlaGljbGUtbmF2LmFjdGl2ZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICMwMDc1YjY7IH1cbiAgLnRvcC1iYXIgLm1lbnUgbGkuZGlyZWN0b3J5LW5hdjpob3ZlciwgLnRvcC1iYXIgLm1lbnUgbGkuZGlyZWN0b3J5LW5hdjpmb2N1cywgLnRvcC1iYXIgLm1lbnUgbGkuZGlyZWN0b3J5LW5hdi5hY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjMDA3NWI2OyB9XG4gIC50b3AtYmFyIC5tZW51IGxpLmFkbWluLWxvZ2luOmhvdmVyLCAudG9wLWJhciAubWVudSBsaS5hZG1pbi1sb2dpbjpmb2N1cywgLnRvcC1iYXIgLm1lbnUgbGkuYWRtaW4tbG9naW4uYWN0aXZlIHtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzAwNzViNjsgfVxuXG4ubWVnYS1mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBwYWRkaW5nOiAzcmVtOyB9XG4gIC5tZWdhLWZvb3RlciAubWVudSBhIHtcbiAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmOyB9XG4gICAgLm1lZ2EtZm9vdGVyIC5tZW51IGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLm1lZ2EtZm9vdGVyIC5tZW51IC5tZW51LXRleHQge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCcsIHNhbi1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gICAgLm1lZ2EtZm9vdGVyIC5tZW51IC5tZW51LXRleHQgYSB7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnLCBzYW4tc2VyaWY7XG4gICAgICBwYWRkaW5nOiAwIDAgMnJlbSAwOyB9XG4gICAgICAubWVnYS1mb290ZXIgLm1lbnUgLm1lbnUtdGV4dCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmRhcmstc2VjdGlvbiBhIHtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmRhcmstc2VjdGlvbiBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uZGFyay1zZWN0aW9uIC5kaXNjbGFpbWVyIGEge1xuICBjb2xvcjogIzAwNzViNjsgfVxuICAuZGFyay1zZWN0aW9uIC5kaXNjbGFpbWVyIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5jb3B5cmlnaHQge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07IH1cbiAgLmNvcHlyaWdodCAubWVudSBhIHtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmOyB9XG4gICAgLmNvcHlyaWdodCAubWVudSBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5pbnRyby12aWRlbyB7XG4gIGhlaWdodDogNzV2aDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDYwMG1zIGVhc2U7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaW50cm8tdmlkZW8gaDEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDJ2dzsgfVxuICAuaW50cm8tdmlkZW8uY29tbWVyY2lhbC1iYW5uZXIge1xuICAgIGhlaWdodDogNDB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjMDA3NWI2OyB9XG4gICAgLmludHJvLXZpZGVvLmNvbW1lcmNpYWwtYmFubmVyIGgxIHtcbiAgICAgIHRvcDogNnZoOyB9XG4gIC5pbnRyby12aWRlby5yZWNyZWF0aW9uYWwtYmFubmVyIHtcbiAgICBoZWlnaHQ6IDQwdnc7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXItYm90dG9tOiA4cHggc29saWQgIzAwNzViNjsgfVxuICAgIC5pbnRyby12aWRlby5yZWNyZWF0aW9uYWwtYmFubmVyOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3JlY3JlYXRpb25hbC1mbG9yaXNoLWxhbmRpbmcucG5nKSBuby1yZXBlYXQgMCBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICB3aWR0aDogNDd2dztcbiAgICAgIGhlaWdodDogMjB2dztcbiAgICAgIGJvdHRvbTogLTN2dztcbiAgICAgIGxlZnQ6IDc1dnc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAtMTsgfVxuICAgIC5pbnRyby12aWRlby5yZWNyZWF0aW9uYWwtYmFubmVyLmxhbmRpbmc6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDQydnc7XG4gICAgICBoZWlnaHQ6IDE4dnc7XG4gICAgICBsZWZ0OiAtMXZ3O1xuICAgICAgYm90dG9tOiAtMXZ3OyB9XG4gICAgLmludHJvLXZpZGVvLnJlY3JlYXRpb25hbC1iYW5uZXIgPiAuY2VsbCB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDAuNXZ3IDg1JTsgfVxuICAuaW50cm8tdmlkZW8uYWNjZXNzaWJpbGl0eS1iYW5uZXIge1xuICAgIGhlaWdodDogNDB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjMDA3NWI2OyB9XG4gICAgLmludHJvLXZpZGVvLmFjY2Vzc2liaWxpdHktYmFubmVyOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktZmxvcmlzaC1sYW5kaW5nLnBuZykgbm8tcmVwZWF0IDAgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgd2lkdGg6IDE0dnc7XG4gICAgICBoZWlnaHQ6IDE3dnc7XG4gICAgICBsZWZ0OiA4NnZ3O1xuICAgICAgYm90dG9tOiAtN3Z3O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogLTE7IH1cbiAgICAuaW50cm8tdmlkZW8uYWNjZXNzaWJpbGl0eS1iYW5uZXIubGFuZGluZzphZnRlciB7XG4gICAgICB3aWR0aDogMTV2dztcbiAgICAgIGhlaWdodDogMTh2dztcbiAgICAgIGxlZnQ6IDJ2dztcbiAgICAgIGJvdHRvbTogLTd2dzsgfVxuICAgIC5pbnRyby12aWRlby5hY2Nlc3NpYmlsaXR5LWJhbm5lci5kZXRhaWwtcGFnZSB7XG4gICAgICBoZWlnaHQ6IDI5dnc7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAxdncgMTB2dyAxNTJweCA0dncgcmdiYSgwLCAwLCAwLCAwKTsgfVxuICAgICAgLmludHJvLXZpZGVvLmFjY2Vzc2liaWxpdHktYmFubmVyLmRldGFpbC1wYWdlIGgxIHtcbiAgICAgICAgdG9wOiA2dmg7IH1cbiAgICAuaW50cm8tdmlkZW8uYWNjZXNzaWJpbGl0eS1iYW5uZXIudmlkZW8tcG9ydGFsIHtcbiAgICAgIGhlaWdodDogMzV2dztcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDF2dyAxMHZ3IDE1MnB4IDR2dyByZ2JhKDAsIDAsIDAsIDApOyB9XG4gICAgICAuaW50cm8tdmlkZW8uYWNjZXNzaWJpbGl0eS1iYW5uZXIudmlkZW8tcG9ydGFsIGgxIHtcbiAgICAgICAgdG9wOiA2dmg7IH1cbiAgICAuaW50cm8tdmlkZW8uYWNjZXNzaWJpbGl0eS1iYW5uZXIgPiAuY2VsbCB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDAuNXZ3IDg1JTsgfVxuICAuaW50cm8tdmlkZW8uZmxlZXQtYmFubmVyIHtcbiAgICBoZWlnaHQ6IDQwdnc7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXItYm90dG9tOiA4cHggc29saWQgIzAwNzViNjsgfVxuICAgIC5pbnRyby12aWRlby5mbGVldC1iYW5uZXIgPiAuY2VsbCB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDAuNXZ3IDg1JTsgfVxuICAuaW50cm8tdmlkZW8uc3RhcnQtd2l0aC1iYW5uZXIge1xuICAgIGhlaWdodDogMzB2dzsgfVxuICAgIC5pbnRyby12aWRlby5zdGFydC13aXRoLWJhbm5lciBoMSB7XG4gICAgICB0b3A6IDV2aDsgfVxuICAuaW50cm8tdmlkZW8uZ2FyYWdlLWJhbm5lciB7XG4gICAgaGVpZ2h0OiAzMHZ3OyB9XG4gICAgLmludHJvLXZpZGVvLmdhcmFnZS1iYW5uZXIgaDEge1xuICAgICAgdG9wOiA0dmg7IH1cblxuLmludHJvLXZpZGVvID4gLmNlbGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmludHJvLXZpZGVvIC5pbnRyby1jdGEge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMXZoO1xuICBwYWRkaW5nOiAxcmVtIDFyZW0gMDtcbiAgYmFja2dyb3VuZDogIzA4MmE0NzsgfVxuICAuaW50cm8tdmlkZW8gLmludHJvLWN0YS5nYXJhZ2UtaW50cm8ge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDE2dnc7IH1cbiAgLmludHJvLXZpZGVvIC5pbnRyby1jdGEubm9iYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5pbnRyby12aWRlbyAuaW50cm8tY3RhLmZ1bGx3aWRlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3R0b206IDJ2dzsgfVxuXG4uaW50cm8tY3RhIC5idXR0b24ge1xuICBtaW4td2lkdGg6IDkwJTtcbiAgZm9udC1zaXplOiAxLjA1M3Z3O1xuICBwYWRkaW5nOiAxdncgMC41NDJ2dyAwLjUyNXZ3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDgyYTQ3OyB9XG4gIC5pbnRyby1jdGEgLmJ1dHRvbi5leHBhbmRlZCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmludHJvLWN0YSAuYnV0dG9uOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTA4JTtcbiAgICBoZWlnaHQ6IDAuNHZ3O1xuICAgIGJhY2tncm91bmQ6ICMwMDc1YjY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogLTEuNXZ3O1xuICAgIGxlZnQ6IC0wLjZ2dzsgfVxuICAuaW50cm8tY3RhIC5idXR0b24uaG9sbG93OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5pbnRyby1jdGEgLmJ1dHRvbjpob3ZlciwgLmludHJvLWN0YSAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3NWI2OyB9XG5cbi5zdGFydC13aXRoLXZlaGljbGUtaG9tZSB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cbiAgLnN0YXJ0LXdpdGgtdmVoaWNsZS1ob21lIC50YWJzLXBhbmVsIC5jZWxsIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDYsIDEyMCwgMTg4LCAwKTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2U7IH1cbiAgICAuc3RhcnQtd2l0aC12ZWhpY2xlLWhvbWUgLnRhYnMtcGFuZWwgLmNlbGw6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA2NzhiYzsgfVxuICAgICAgLnN0YXJ0LXdpdGgtdmVoaWNsZS1ob21lIC50YWJzLXBhbmVsIC5jZWxsOmhvdmVyIGEge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luOiAxLjg3NXJlbSAwOyB9XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBjb2xvcjogIzMzMzMzMztcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNzViNjsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY29yZGlvbi1jYXJldC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDIuMjExdnc7XG4gICAgaGVpZ2h0OiAxLjR2dztcbiAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICB0b3A6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlOyB9XG5cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwNzViNjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGU6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbmxpLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNzViNjtcbiAgYm9yZGVyLXRvcC13aWR0aDogMHB4OyB9XG5cbi5hY2Nlc3NpYmlsaXR5LWluZm8gbGkuYWNjb3JkaW9uLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbnVsLnRhYnMtdGl0bGUge1xuICAvKiB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7ICovXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyogbWFyZ2luOiAwOyAqL1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnRhYnMtdGl0bGUge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLnRhYnMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRhYnMtdGl0bGUgPiBhIHtcbiAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1SZWd1bGFyJywgc2FuLXNlcmlmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAyLjVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiAycHggc29saWQgIzAwNzViNjsgfVxuXG4udGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICBiYWNrZ3JvdW5kOiAjMDA3NWI2O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYWNjb3JkaW9uLmRpc2NsYWltZXIge1xuICBtYXJnaW46IDAuNXJlbSAwO1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5hY2NvcmRpb24uZGlzY2xhaW1lciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgIGJvcmRlcjogMCBzb2xpZCAjMDA3NWI2O1xuICAgIHBhZGRpbmc6IDAgMXJlbTsgfVxuICAgIC5hY2NvcmRpb24uZGlzY2xhaW1lciAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLmRpc2NsYWltZXIgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgLmFjY29yZGlvbi5kaXNjbGFpbWVyIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYWNjb3JkaW9uLmRpc2NsYWltZXIgLmFjY29yZGlvbi10aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYWNjb3JkaW9uLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMS4yMTF2dztcbiAgICAgIGhlaWdodDogMC41dnc7XG4gICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgdG9wOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2U7IH1cbiAgLmFjY29yZGlvbi5kaXNjbGFpbWVyIGxpLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cblxuLmFjY29yZGlvbi5maWx0ZXIge1xuICBtYXJnaW46IDAuNXJlbSAwO1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5hY2NvcmRpb24uZmlsdGVyIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDEuN3Z3O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogMCBzb2xpZCAjMDA3NWI2O1xuICAgIHBhZGRpbmc6IDAgMXJlbTsgfVxuICAgIC5hY2NvcmRpb24uZmlsdGVyIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24uZmlsdGVyIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIC5hY2NvcmRpb24uZmlsdGVyIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYWNjb3JkaW9uLmZpbHRlciAuYWNjb3JkaW9uLXRpdGxlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9hY2NvcmRpb24tY2FyZXQtd2hpdGUucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyLjIxMXZ3O1xuICAgICAgaGVpZ2h0OiAxdnc7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2U7IH1cbiAgLmFjY29yZGlvbi5maWx0ZXIgbGkuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDFyZW0gMDsgfVxuICAgIC5hY2NvcmRpb24uZmlsdGVyIGxpLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uZGFyay1zZWN0aW9uIC5hY2NvcmRpb24uZGlzY2xhaW1lciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmRhcmstc2VjdGlvbiAuYWNjb3JkaW9uLmRpc2NsYWltZXIgLmFjY29yZGlvbi10aXRsZTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9hY2NvcmRpb24tY2FyZXQtd2hpdGUucG5nKTsgfVxuXG46bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNzViNjsgfVxuXG4ua2VlcC11cGRhdGVkLCAuaW50cm8tY3RhIHtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmtlZXAtdXBkYXRlZCBsYWJlbCwgLmludHJvLWN0YSBsYWJlbCB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5rZWVwLXVwZGF0ZWQgbGVnZW5kLCAuaW50cm8tY3RhIGxlZ2VuZCB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAua2VlcC11cGRhdGVkIC5jb250ZW50LWJ1Y2tldCwgLmludHJvLWN0YSAuY29udGVudC1idWNrZXQge1xuICAgIGJhY2tncm91bmQ6ICMwODJhNDc7IH1cbiAgLmtlZXAtdXBkYXRlZCAuZm9ybS1yZXNwb25zZSwgLmludHJvLWN0YSAuZm9ybS1yZXNwb25zZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMnZ3O1xuICAgIHBhZGRpbmc6IDkuNTF2dyAwOyB9XG4gIC5rZWVwLXVwZGF0ZWQgZm9ybSwgLmludHJvLWN0YSBmb3JtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAua2VlcC11cGRhdGVkIGZvcm0gLmhlbHAtdGV4dCwgLmludHJvLWN0YSBmb3JtIC5oZWxwLXRleHQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmtlZXAtdXBkYXRlZCAuYmFja2dyb3VuZC1pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogaW5oZXJpdDsgfVxuXG4uaW50cm8tY3RhIGxlZ2VuZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIG1hcmdpbjogMCAwO1xuICBmb250LXNpemU6IDEuMnZ3OyB9XG5cbi5pbnRyby1jdGEgLmZvcm0tcmVzcG9uc2UgcCB7XG4gIHRleHQtc2hhZG93OiBibGFjayAwcHggMHB4IDEwcHgsIGJsYWNrIDBweCAwcHggMTBweDsgfVxuXG4ub2ZmIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc3BlY2lhbC1zcGxpdCB7XG4gIHBhZGRpbmc6IDF2dztcbiAgbWFyZ2luOiAxdnc7XG4gIGZvbnQtc2l6ZTogMnZ3O1xuICBiYWNrZ3JvdW5kOiAjMDgyYTQ3OyB9XG5cbi5ib3R0b20tYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDgzJTtcbiAgei1pbmRleDogMjA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ib3R0b20tYnV0dG9uMiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA4MyU7XG4gIHotaW5kZXg6IDIwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMC41dnc7IH1cblxuLnNwbGl0aGVybyB7XG4gIGhlaWdodDogMzh2dztcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc3BsaXRoZXJvMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAzOHZ3O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zcGxpdGhlcm8xIC5iYW5uZXJfX3ZpZGVvIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc3BsaXRoZXJvMSBoMiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDIwO1xuICAgIGxlZnQ6IDM1Ljc1JTsgfVxuICAuc3BsaXRoZXJvMSAucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTguNzUlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdG9wOiAtOCU7IH1cblxuLmRhcmtpbWFnZWJhY2suc3BsaXRoZXJvMSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmN2cy1ob21lLWxvZ28ge1xuICB3aWR0aDogMjF2dztcbiAgbWFyZ2luLXRvcDogMnZ3OyB9XG5cbi5mZmwtaW5mb2dyYXBoIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDUlO1xuICB3aWR0aDogOTAlOyB9XG5cbi5mb3JkZmxlZXRsaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5mb3JkZmxlZXRsaXZlIHAge1xuICBmb250LXNpemU6IDAuOHZ3O1xuICBtYXJnaW4tYm90dG9tOiAwLjc1dnc7IH1cblxuLmZvcmRmbGVldGxpdmUgaDMge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYUNvbmQtQm9sZCc7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMnZ3O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDZweDtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXZ3O1xuICB3aWR0aDogMTMwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xNSU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNyk7IH1cbiAgLmZvcmRmbGVldGxpdmUgaDMgc3BhbiB7XG4gICAgY29sb3I6ICMwMDc1YjY7IH1cblxuLmxvY2F0ZS11cGZpdHRlciB7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5sb2NhdGUtdXBmaXR0ZXIgcCB7XG4gICAgZm9udC1zaXplOiAxLjV2dzsgfVxuICAubG9jYXRlLXVwZml0dGVyIC5jb250ZW50LWJ1Y2tldCBpbWcge1xuICAgIG1heC13aWR0aDogMTAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG5cbi5zZWFyY2gtdXBmaXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBwYWRkaW5nOiAycmVtIDFyZW07IH1cbiAgLnNlYXJjaC11cGZpdHMgaDMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIHRleHQtc2hhZG93OiAwcHggMHB4IDE1cHggd2hpdGUsIDBweCAwcHggMTVweCB3aGl0ZSwgMHB4IDBweCAxMHB4IHdoaXRlLCAwcHggMHB4IDE1cHggd2hpdGUsIDBweCAwcHggMTVweCB3aGl0ZSwgMHB4IDBweCAxNXB4IHdoaXRlOyB9XG4gIC5zZWFyY2gtdXBmaXRzIHAge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCB3aGl0ZSwgMHB4IDBweCAxNXB4IHdoaXRlLCAwcHggMHB4IDE1cHggd2hpdGUsIDBweCAwcHggMTVweCB3aGl0ZSwgMHB4IDBweCAxNXB4IHdoaXRlLCAwcHggMHB4IDE1cHggd2hpdGU7IH1cbiAgICAuc2VhcmNoLXVwZml0cyBwIC5idXR0b24ge1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7IH1cblxuLmxvY2F0ZS11cGZpdHRlciAuYmFja2dyb3VuZC1pbWcge1xuICBiYWNrZ3JvdW5kOiAjMDA3NWI2OyB9XG5cbi5iYW5uZXIge1xuICAvKiB0aGlzIGJpdCBvZiBtYXJrdXAgaXMgZXNzZW50aWFsICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uYmFubmVyX192aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogLTE7IH1cblxuLmJhbm5lcl9faW1hZ2Uge1xuICB6LWluZGV4OiAwICFpbXBvcnRhbnQ7IH1cblxuLmZsZWV0LWJhbm5lciAuYmFubmVyX192aWRlbywgLmNvbW1lcmNpYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvLCAuYWNjZXNzaWJpbGl0eS1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5yZWNyZWF0aW9uYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uYWxsLWluY2VudGl2ZXMgLmZsZWV0LWJhbm5lciAuYmFubmVyX192aWRlbywgLmFsbC1pbmNlbnRpdmVzIC5jb21tZXJjaWFsLWJhbm5lciAuYmFubmVyX192aWRlbywgLmFsbC1pbmNlbnRpdmVzIC5hY2Nlc3NpYmlsaXR5LWJhbm5lciAuYmFubmVyX192aWRlbywgLmFsbC1pbmNlbnRpdmVzIC5yZWNyZWF0aW9uYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvIHtcbiAgd2lkdGg6IDExMiU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uc3RhcnQtd2l0aC12ZWhpY2xlIC5iYW5uZXJfX3ZpZGVvLCAuZ2FyYWdlLWJhbm5lciAuYmFubmVyX192aWRlbyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmhhbGYtc2NyZWVuLXZpZC5iYW5uZXJfX3ZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMzAlO1xuICBiYWNrZ3JvdW5kOiAjMDgyYTQ3OyB9XG5cbnZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZW5yb2xsLXN0YXJ0ZXIge1xuICBwYWRkaW5nOiAydncgM3Z3OyB9XG5cbi5jb21tZXJjaWFsLXVuZGVybGluZSB7XG4gIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjZmZmZmZmOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwubWVkaXVtLTkuc3BsaXRoZXJvMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbC5tZWRpdW0tMy5mb3JkZmxlZXRsaXZlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc3BsaXRoZXJvIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5kYXJrLWJhY2sge1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xuICBwYWRkaW5nOiAzdnc7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsLmRhcmtibHVlLWJhY2sge1xuICBiYWNrZ3JvdW5kOiAjMDgyYTQ3O1xuICBwYWRkaW5nOiAzdnc7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsLmRhcmstYmFjayB7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gIHBhZGRpbmc6IDN2dztcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuY2VsbC5kYXJraW1hZ2ViYWNrIHtcbiAgcGFkZGluZzogMXZ3IDJ2dyAwO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5ibHVlbmVzcy1iYWNrLCAuY2VsbC5ibHVlbmVzcy1iYWNrIHtcbiAgYmFja2dyb3VuZDogIzAwNzViNjtcbiAgcGFkZGluZzogMnZ3O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5kYXJrYmx1ZSBwIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIHBhZGRpbmc6IDAgMnZ3OyB9XG5cbi5jZWxsLmJsdWVuZXNzLWJhY2sgcCB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtOyB9XG5cbi5ib3R0b20tYnVtcCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLmFubm91bmNlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07IH1cblxuLmVucm9sbC1yZWFzb25zIHtcbiAgYm9yZGVyLWJvdHRvbTogMXJlbSBzb2xpZCAjZmZmZmZmOyB9XG5cbi5lbnJvbGwtcmVhc29ucyBoMyB7XG4gIGZvbnQtc2l6ZTogM3JlbTsgfVxuXG4uYW5ub3VuY2UtbXVnIHtcbiAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuXG4uZnJlZS1tdWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAtNXZ3O1xuICBib3R0b206IC01dnc7XG4gIG1hcmdpbjogMCAtNXZ3IC01dncgMDsgfVxuXG4uZW5yb2xsLXJlYXNvbnMgLmRhcmstYmFjayBwIHtcbiAgZm9udC1zaXplOiAxLjVyZW07IH1cblxuLmVucm9sbC1yZWFzb25zIC5kYXJrLWJhY2sgbGkge1xuICBmb250LXNpemU6IDEuMjVyZW07IH1cblxuLmVucm9sbC1mb3JtIGxlZ2VuZCB7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuXG4uZW5yb2xsLWZvcm0gZmllbGRzZXQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5hY2Nlc3Nvcnktc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIHBhZGRpbmctdG9wOiAycmVtOyB9XG4gIC5hY2Nlc3Nvcnktc2VjdGlvbiBoMyB7XG4gICAgY29sb3I6ICMwMDc1YjY7IH1cbiAgLmFjY2Vzc29yeS1zZWN0aW9uIGg0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMnZ3O1xuICAgIGNvbG9yOiAjMDA3NWI2O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAuYWNjZXNzb3J5LXNlY3Rpb24gLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5IHtcbiAgICBib3JkZXI6IDAgc29saWQgIzEwMmI0ZTtcbiAgICBjb2xvcjogIzEwMmI0ZTsgfVxuICAgIC5hY2Nlc3Nvcnktc2VjdGlvbiAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5hY2Nlc3Nvcnktc2VjdGlvbiAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6YWN0aXZlLCAuYWNjZXNzb3J5LXNlY3Rpb24gLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmlzLWFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwODJhNDc7IH1cbiAgLmFjY2Vzc29yeS1zZWN0aW9uIC5hY2Nlc3Nvcmllcy1saXN0LWhvbGRlciB7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzAwNzViNjtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDJyZW07IH1cblxuLmdhcmFnZS1iYW5uZXIgLmFsbC1lcXVhdGlvbiB7XG4gIHdpZHRoOiAzNSU7XG4gIG1hcmdpbjogMXZ3IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5nYXJhZ2UtYmFubmVyIC5hbGwtZXF1YXRpb24gLmVxLWVsZW1lbnQge1xuICAgIGZvbnQtc2l6ZTogMS4ydnc7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC1zaGFkb3c6IDBweCAzcHggMTBweCAjMDAwMDAwLCAwcHggM3B4IDEwcHggIzAwMDAwMDsgfVxuXG4uZ2FyYWdlLWJhbm5lciAuYWNjb3JkaW9uLmRpc2NsYWltZXIgLmFjY29yZGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogMHB4IDNweCAxMHB4ICMwMDAwMDAsIDBweCAzcHggMTBweCAjMDAwMDAwOyB9XG5cbi5saWdodC1ncmF5LXNlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7IH1cblxuLmNvbnRlbnQtYnVja2V0IHtcbiAgcGFkZGluZzogMnJlbSAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIGN1c3RvbWl6ZWQgZm9ybSBlbGVtZW50cyAqL1xuLyogQ3VzdG9taXplIHRoZSBsYWJlbCAodGhlIGNvbnRhaW5lcikgKi9cbi5jaGVjay1jb250YWluZXIge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAyLjJ2dztcbiAgbWFyZ2luOiAxcmVtIDAuNXJlbSAycmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4vKiBIaWRlIHRoZSBicm93c2VyJ3MgZGVmYXVsdCBjaGVja2JveCAqL1xuLmNoZWNrLWNvbnRhaW5lciBpbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwOyB9XG5cbi8qIENyZWF0ZSBhIGN1c3RvbSBjaGVja2JveCAqL1xuLmNoZWNrbWFyayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEuNXZ3O1xuICB3aWR0aDogMS41dnc7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwODJhNDc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7IH1cblxuLmNlcnRpZnktc3RlcHMgLmNoZWNrbWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwODJhNDc7IH1cblxuLmlzLWludmFsaWQtbGFiZWwgLmNoZWNrbWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7IH1cblxuLyogT24gbW91c2Utb3ZlciwgYWRkIGEgZ3JleSBiYWNrZ3JvdW5kIGNvbG9yICovXG4uY2hlY2stY29udGFpbmVyOmhvdmVyIGlucHV0IH4gLmNoZWNrbWFyaywgLmNoZWNrLWNvbnRhaW5lciBpbnB1dDpmb2N1cyB+IC5jaGVja21hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3NWI2OyB9XG5cbi8qIFdoZW4gdGhlIGNoZWNrYm94IGlzIGNoZWNrZWQsIGFkZCBhIGJsdWUgYmFja2dyb3VuZCAqL1xuLmNoZWNrLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwODJhNDc7IH1cblxuLyogQ3JlYXRlIHRoZSBjaGVja21hcmsvaW5kaWNhdG9yIChoaWRkZW4gd2hlbiBub3QgY2hlY2tlZCkgKi9cbi5jaGVja21hcms6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogU2hvdyB0aGUgY2hlY2ttYXJrIHdoZW4gY2hlY2tlZCAqL1xuLmNoZWNrLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyazphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIFN0eWxlIHRoZSBjaGVja21hcmsvaW5kaWNhdG9yICovXG4uY2hlY2stY29udGFpbmVyIC5jaGVja21hcms6YWZ0ZXIge1xuICBsZWZ0OiAwLjR2dztcbiAgdG9wOiAwO1xuICB3aWR0aDogMC42dnc7XG4gIGhlaWdodDogMS4ydnc7XG4gIGJvcmRlcjogc29saWQgd2hpdGU7XG4gIGJvcmRlci13aWR0aDogMCAzcHggM3B4IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cblxuLyogQ3VzdG9taXplIHRoZSBsYWJlbCAodGhlIHJhZGlvKSAqL1xuLnJhZGlvLWNvbnRhaW5lciB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDIuMnZ3O1xuICBtYXJnaW46IDFyZW0gMC41cmVtIDJyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi8qIEhpZGUgdGhlIGJyb3dzZXIncyBkZWZhdWx0IGNoZWNrYm94ICovXG4ucmFkaW8tY29udGFpbmVyIGlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7IH1cblxuLyogQ3JlYXRlIGEgY3VzdG9tIGNoZWNrYm94ICovXG4ucmFkaW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxLjV2dztcbiAgd2lkdGg6IDEuNXZ3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDsgfVxuXG4uY2VydGlmeS1zdGVwcyAucmFkaW8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDgyYTQ3OyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIC5yYWRpbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7IH1cblxuLyogT24gbW91c2Utb3ZlciwgYWRkIGEgZ3JleSBiYWNrZ3JvdW5kIGNvbG9yICovXG4ucmFkaW8tY29udGFpbmVyOmhvdmVyIGlucHV0IH4gLnJhZGlvLCAucmFkaW8tY29udGFpbmVyIGlucHV0OmZvY3VzIH4gLnJhZGlvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA4MmE0NzsgfVxuXG4vKiBXaGVuIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBhZGQgYSBibHVlIGJhY2tncm91bmQgKi9cbi5yYWRpby1jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCB+IC5yYWRpbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwODJhNDc7IH1cblxuLyogQ3JlYXRlIHRoZSBjaGVja21hcmsvaW5kaWNhdG9yIChoaWRkZW4gd2hlbiBub3QgY2hlY2tlZCkgKi9cbi5yYWRpbzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBTaG93IHRoZSBjaGVja21hcmsgd2hlbiBjaGVja2VkICovXG4ucmFkaW8tY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAucmFkaW86YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBTdHlsZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAqL1xuLnJhZGlvLWNvbnRhaW5lciAucmFkaW86YWZ0ZXIge1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxLjR2dztcbiAgaGVpZ2h0OiAxLjR2dztcbiAgYmFja2dyb3VuZDogIzAwNzViNjtcbiAgYm9yZGVyOiBzb2xpZCB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGJvcmRlci13aWR0aDogM3B4IDNweCAzcHggM3B4O1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG5cbnNlY3Rpb246bm90KC5iYW5uZXIpIC5idXR0b24ubGFyZ2UsIHNlY3Rpb24uYmFubmVyIC5zcGVjaWFsLWhvbWUtYW5ub3VuY2UgLmJ1dHRvbi5sYXJnZSB7XG4gIHBhZGRpbmc6IDEuMXZ3IDR2dyAxLjN2dztcbiAgZm9udC1zaXplOiAxLjV2dzsgfVxuICBzZWN0aW9uOm5vdCguYmFubmVyKSAuYnV0dG9uLmxhcmdlOmFmdGVyLCBzZWN0aW9uLmJhbm5lciAuc3BlY2lhbC1ob21lLWFubm91bmNlIC5idXR0b24ubGFyZ2U6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYnV0dG9uLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgd2lkdGg6IDF2dztcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMS42NXZ3O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxdnc7XG4gICAgdG9wOiAwLjN2dzsgfVxuICBzZWN0aW9uOm5vdCguYmFubmVyKSAuYnV0dG9uLmxhcmdlLmRvd25sb2FkOmFmdGVyLCBzZWN0aW9uLmJhbm5lciAuc3BlY2lhbC1ob21lLWFubm91bmNlIC5idXR0b24ubGFyZ2UuZG93bmxvYWQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvZG93bmxvYWQtY2FyZXQtd2hpdGUucG5nKTtcbiAgICB3aWR0aDogMnZ3OyB9XG5cbnNlY3Rpb24uYmFubmVyIC5idXR0b24ubGFyZ2Uuc3BlY2lhbGxpbmsge1xuICBwYWRkaW5nOiAwLjh2dyAydncgMC44dnc7XG4gIGZvbnQtc2l6ZTogMS4xdnc7IH1cbiAgc2VjdGlvbi5iYW5uZXIgLmJ1dHRvbi5sYXJnZS5zcGVjaWFsbGluazphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9idXR0b24tY2FyZXQucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICB3aWR0aDogMC41dnc7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDF2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMXZ3O1xuICAgIHRvcDogMC4xNXZ3OyB9XG5cbnNlY3Rpb246bm90KC5iYW5uZXIpIGlucHV0LmJ1dHRvbi5sYXJnZSwgaW5wdXQuYnV0dG9uLmxhcmdlIHtcbiAgYmFja2dyb3VuZDogIzAwNzViNiB1cmwoLi4vaW1nL2J1dHRvbi1jYXJldC5wbmcpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgM3Z3IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjc1dncgMS42NXZ3O1xuICBwYWRkaW5nOiAxLjJ2dyA1dncgMS4ydncgNHZ3OyB9XG4gIHNlY3Rpb246bm90KC5iYW5uZXIpIGlucHV0LmJ1dHRvbi5sYXJnZTpob3Zlciwgc2VjdGlvbjpub3QoLmJhbm5lcikgaW5wdXQuYnV0dG9uLmxhcmdlOmZvY3VzLCBpbnB1dC5idXR0b24ubGFyZ2U6aG92ZXIsIGlucHV0LmJ1dHRvbi5sYXJnZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTg4OTsgfVxuXG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG5zZWN0aW9uOm5vdCguYmFubmVyKSAuYnV0dG9uLmxhcmdlLmhvbGxvdzphZnRlciwgc2VjdGlvbi5iYW5uZXIgLnNwZWNpYWwtaG9tZS1hbm5vdW5jZSAuYnV0dG9uLmxhcmdlLmhvbGxvdzphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYnV0dG9uLWNhcmV0LWJsdWUucG5nKTsgfVxuXG4uYnV0dG9uLnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBwYWRkaW5nOiAwLjg1ZW0gM2VtOyB9XG5cbi5idXR0b24uc21hbGwuaG9sbG93IHtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7IH1cblxuLmJ1dHRvbi5vZmZzaXRlLWN0YSB7XG4gIGNvbG9yOiAjMDA3NWI2O1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDAuODc1dnc7XG4gIHBhZGRpbmc6IDAuODV2dyAzdncgMC44NXZ3IDF2dzsgfVxuICAuYnV0dG9uLm9mZnNpdGUtY3RhOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL29mZnNpdGUtY2FyZXQucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICB3aWR0aDogMXZ3O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxLjY1dnc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMC4zdnc7IH1cblxuLnNwZWNpYWwtaG9tZS1hbm5vdW5jZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogMXZ3OyB9XG5cbi5nb3RvLWRpcmVjdG9yeSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDM5JTsgfVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IH1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBub25lO1xuICBjb2xvcjogIzQ0NDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7XG4gIC8qIEFib3ZlIFdQIHRvb2xiYXIuICovIH1cblxuLnByb21vdGlvbmFsLXNlY3Rpb24ge1xuICBwYWRkaW5nOiAycmVtIDFyZW0gMDsgfVxuXG4uZm9vdGVyLWxvZ28ge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuXG4ucHJvbW8tcm93IHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07IH1cblxuLnByb21vLXRpbGUge1xuICBoZWlnaHQ6IDI3dnc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucHJvbW8tdGlsZSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlOyB9XG4gICAgLnByb21vLXRpbGUgYSBpbWcge1xuICAgICAgdHJhbnNpdGlvbjogLXdlYmtpdC1maWx0ZXIgMzAwbXMgZWFzZSxmaWx0ZXIgMzAwbXMgZWFzZTsgfVxuICAgIC5wcm9tby10aWxlIGE6aG92ZXIsIC5wcm9tby10aWxlIGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgxNiwgNDMsIDc4LCAwLjcpOyB9XG4gICAgLnByb21vLXRpbGUgYTpob3ZlciBpbWcsIC5wcm9tby10aWxlIGE6Zm9jdXMgaW1nIHtcbiAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICAvKiBTYWZhcmkgNi4wIC0gOS4wICovXG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsgfVxuICAgIC5wcm9tby10aWxlIGE6aG92ZXIgc3BhbiwgLnByb21vLXRpbGUgYTpmb2N1cyBzcGFuIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5wcm9tby10aWxlMiB7XG4gIGhlaWdodDogMjF2dztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2U7IH1cbiAgLnByb21vLXRpbGUyIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5wcm9tby10aWxlMiBhIGltZyB7XG4gICAgICB0cmFuc2l0aW9uOiAtd2Via2l0LWZpbHRlciAzMDBtcyBlYXNlLGZpbHRlciAzMDBtcyBlYXNlOyB9XG4gICAgLnByb21vLXRpbGUyIGE6aG92ZXIsIC5wcm9tby10aWxlMiBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTYsIDQzLCA3OCwgMC43KTsgfVxuICAgIC5wcm9tby10aWxlMiBhOmhvdmVyIGltZywgLnByb21vLXRpbGUyIGE6Zm9jdXMgaW1nIHtcbiAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICAvKiBTYWZhcmkgNi4wIC0gOS4wICovXG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsgfVxuICAgIC5wcm9tby10aWxlMiBhOmhvdmVyIHNwYW4sIC5wcm9tby10aWxlMiBhOmZvY3VzIHNwYW4ge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmN2cy1kZWFsc3RoYXRkZWxpdmVyIHtcbiAgd2lkdGg6IDQ1JTsgfVxuXG4ucHJvbW9fX2JhY2tncm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiBhdXRvO1xuICBtaW4td2lkdGg6IDEwMSU7XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IC0xOyB9XG5cbi5wcm9tb19fYmFja2dyb3VuZDIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiBhdXRvO1xuICBtaW4td2lkdGg6IDEwMSU7XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IC0xOyB9XG5cbi5yZWNyZWF0aW9uYWwtdGlsZSAucHJvbW9fX2JhY2tncm91bmQge1xuICBtaW4td2lkdGg6IDEyMCU7IH1cblxuLmZsZWV0LXRpbGUgLnByb21vX19iYWNrZ3JvdW5kIHtcbiAgbWluLXdpZHRoOiAxMTAlOyB9XG5cbi5wcm9tby1jdGEge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjF2dyAxdncgMC4zdncgMDtcbiAgcmlnaHQ6IDA7XG4gIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtU2VtaWJvbGQnLCBzYW4tc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4ydnc7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgLnByb21vLWN0YSBzcGFuIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBsaW5lLWhlaWdodDogMzlweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAucHJvbW8tY3RhIHNwYW46YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2NpcmNsZS1jYXJldC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRvcDogMC41dnc7XG4gICAgICB3aWR0aDogMnZ3O1xuICAgICAgaGVpZ2h0OiAydnc7XG4gICAgICBtYXJnaW4tbGVmdDogMXZ3O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5naWYtYmFjay5wYXVzZWQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5idXR0b24ucGxheS1wYXVzZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDN2dztcbiAgaGVpZ2h0OiAzdnc7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgdG9wOiAwLjJ2dztcbiAgcmlnaHQ6IDAuMnZ3O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBvcGFjaXR5OiAwLjc7XG4gIHotaW5kZXg6IDIwOyB9XG4gIC5idXR0b24ucGxheS1wYXVzZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvcGF1c2UucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogOCU7XG4gICAgbGVmdDogOCU7XG4gICAgd2lkdGg6IDg0JTtcbiAgICBoZWlnaHQ6IDg0JTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuYnV0dG9uLnBsYXktcGF1c2U6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvcGxheS5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiA4JTtcbiAgICBsZWZ0OiA4JTtcbiAgICB3aWR0aDogODQlO1xuICAgIGhlaWdodDogODQlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvcGFjaXR5OiAwOyB9XG5cbi5idXR0b24ucGxheS1wYXVzZS5wYXVzZWQ6YmVmb3JlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uYnV0dG9uLnBsYXktcGF1c2UucGF1c2VkOmFmdGVyIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uY2VsbC52aWRlby1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jZWxsLnZpZGVvLWNvbnRyb2wgLmJ1dHRvbi5wbGF5LXBhdXNlIHtcbiAgICByaWdodDogMS40dnc7IH1cblxuLmVxdWF0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMnZ3IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5lcXVhdGlvbiAuZXEtZWxlbWVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMS4yNXZ3O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgICAuZXF1YXRpb24gLmVxLWVsZW1lbnQgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogNXZ3O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmVxdWF0aW9uIC5lcS1vcGVyYXRvciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMS41dnc7XG4gICAgY29sb3I6ICMwMDc1YjY7IH1cbiAgICAuZXF1YXRpb24gLmVxLW9wZXJhdG9yIHNwYW4ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IC0xcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5lcXVhdGlvbiAuZXEtb3BlcmF0b3Igc3Bhbjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgICAgIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgY2xpcC1wYXRoOiBub25lO1xuICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB6LWluZGV4OiAxMDAwMDA7XG4gICAgICAgIC8qIEFib3ZlIFdQIHRvb2xiYXIuICovIH1cbiAgICAuZXF1YXRpb24gLmVxLW9wZXJhdG9yOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgIGZvbnQtc2l6ZTogNXZ3O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0b3A6IC0ydnc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZXF1YXRpb24gLmVxLW9wZXJhdG9yLm9yOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdPUic7XG4gICAgICBmb250LXNpemU6IDN2dztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdG9wOiAtMi41dnc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnOyB9XG5cbi5nYXJhZ2UtY3RhIHAge1xuICBmb250LXNpemU6IDEuM3Z3O1xuICBwYWRkaW5nOiAxcmVtIDR2dyAwOyB9XG5cbi5saWdodC1zZWN0aW9uLmluY2VudGl2ZS1tYXRoIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuXG4uYmVzdC1pbi1jbGFzcy1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogIzAwNzViNjsgfVxuICAuYmVzdC1pbi1jbGFzcy1zZWN0aW9uIHAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYmVzdC1pbi1jbGFzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTsgfVxuICAuYmVzdC1pbi1jbGFzcyBsaS5iaWMtZWxlbWVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgICBwYWRkaW5nOiAxcmVtIDR2dztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDEuM3Z3OyB9XG5cbi5zZWNvbmRhcnktY3RhLXNlY3Rpb24ge1xuICBib3JkZXItYm90dG9tOiAxcmVtIHNvbGlkICNmZmZmZmY7IH1cbiAgLnNlY29uZGFyeS1jdGEtc2VjdGlvbiAucHJvbW9fX2JhY2tncm91bmQge1xuICAgIG1pbi13aWR0aDogMTE1JTtcbiAgICBsZWZ0OiA1NyU7IH1cbiAgLnNlY29uZGFyeS1jdGEtc2VjdGlvbiAucHJvbW9fX2JhY2tncm91bmQyIHtcbiAgICBtaW4td2lkdGg6IDExNSU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5zZWNvbmRhcnktY3RhLXNlY3Rpb24gaDMge1xuICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHBhZGRpbmc6IDAuMjV2dyAxMHZ3O1xuICAgIGJhY2tncm91bmQ6ICMwODJhNDc7IH1cbiAgLnNlY29uZGFyeS1jdGEtc2VjdGlvbiAuY2VsbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmNhbGxzLXRvLWFjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogM3JlbSAwOyB9XG4gIC5jYWxscy10by1hY3Rpb24gbGkuY3RhLWVsZW1lbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG4gICAgcGFkZGluZzogMCAxdnc7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnVwZml0LW9wdGlvbnMtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG4gIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLmNvbnRlbnQtYnVja2V0IHtcbiAgICBwYWRkaW5nOiAxLjV2dyAwIDA7IH1cbiAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFicyB7XG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XG4gIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYnMtdGl0bGUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuNSU7XG4gICAgd2lkdGg6IDI0JTsgfVxuICAgIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYnMtdGl0bGUgPiBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ydnc7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDc1YjY7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtIDF2dzsgfVxuICAgICAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzN2E5ZTg7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cbiAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFicy1jb250ZW50IHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLWNvbnRlbnQgLnVwZml0LXNsaWNlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXJlbSBzb2xpZCAjZmZmZmZmOyB9XG4gICAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFicy1jb250ZW50IHAge1xuICAgICAgZm9udC1zaXplOiAxLjI1dnc7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICB0cmFuc2l0aW9uOiBsZWZ0IDUwMG1zIGVhc2U7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxcztcbiAgICAgIGxlZnQ6IDEwMCU7IH1cbiAgICAgIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYnMtY29udGVudCAudGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgbGkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9XG4gIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGhlaWdodDogMjJ2dztcbiAgICBib3JkZXItYm90dG9tOiA4cHggc29saWQgIzAwNzViNjsgfVxuICAgIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8gLmNvbnRlbnQtYnVja2V0IHtcbiAgICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvIHAge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMS43NXZ3O1xuICAgICAgcGFkZGluZzogMXZ3IDR2dztcbiAgICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7IH1cbiAgICAgIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8gcDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9nYWxsZXJ5LWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogNHZ3O1xuICAgICAgICBoZWlnaHQ6IDIuODUydnc7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNC4xdnc7XG4gICAgICAgIHRvcDogMC40dnc7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2U7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvIC5nYWxsZXJ5LWN0YS1ob2xkZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxLjV2dztcbiAgICAgIHBhZGRpbmctbGVmdDogNHZ3O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDR2dyk7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvIC5nYWxsZXJ5LWN0YSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBhZGRpbmc6IDAuMXZ3IDF2dyAwLjN2dyAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVNlbWlib2xkJywgc2FuLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxLjJ2dztcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCk7IH1cbiAgICAgIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8gLmdhbGxlcnktY3RhIHNwYW4ge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM5cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvIC5nYWxsZXJ5LWN0YSBzcGFuOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2NpcmNsZS1jYXJldC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRvcDogMC41dnc7XG4gICAgICAgICAgd2lkdGg6IDJ2dztcbiAgICAgICAgICBoZWlnaHQ6IDJ2dztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMXZ3O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFiLWdhbGxlcnktaGVybyAuZ2FsbGVyeS1jdGE6aG92ZXIgc3BhbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFiLWdhbGxlcnktaGVybyAub2ZmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvIC5iYWNrZ3JvdW5kLWltZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICMwMDc1YjY7IH1cbiAgICAgIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8gLmJhY2tncm91bmQtaW1nIC5wcm9tb19fYmFja2dyb3VuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1pbi13aWR0aDogMTAxJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB6LWluZGV4OiAwOyB9XG4gICAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFiLWdhbGxlcnktaGVyby5tb3Rvci1zZWN0aW9uLWxpbmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDA3NWI2OyB9XG4gICAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvLm1vdG9yLXNlY3Rpb24tbGluZSAuYmFja2dyb3VuZC1pbWcge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwMDc1YjY7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvLmZsZWV0LXNlY3Rpb24tbGluZSB7XG4gICAgICBib3JkZXItY29sb3I6ICMwMDc1YjY7IH1cbiAgICAgIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8uZmxlZXQtc2VjdGlvbi1saW5lIC5iYWNrZ3JvdW5kLWltZyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzAwNzViNjsgfVxuXG4udXBmaXQtZ2FsbGVyeS1zZWN0aW9uIC50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDAgc29saWQgI2Y3ZjdmNztcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnVwZml0LWdhbGxlcnktc2VjdGlvbiAuY29udGVudC1ob2xkZXIge1xuICBwYWRkaW5nOiAycmVtIDA7IH1cblxuLnVwZml0LWdhbGxlcnktc2VjdGlvbiAucGhvdG9ncmlkIC5jZWxsIHtcbiAgcGFkZGluZzogMC41dnc7IH1cbiAgLnVwZml0LWdhbGxlcnktc2VjdGlvbiAucGhvdG9ncmlkIC5jZWxsLm9mZiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGhvdG9ncmlkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbnAuY29tbWVyY2lhbC1jdXAge1xuICBkaXNwbGF5OiBub25lO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAydnc7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzMHZoO1xuICBtYXJnaW4tbGVmdDogMXZ3O1xuICB0ZXh0LXNoYWRvdzogMHB4IDNweCAxMHB4ICMwMDAwMDAsMHB4IDNweCAxMHB4ICMwMDAwMDA7IH1cbiAgcC5jb21tZXJjaWFsLWN1cCBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC04dmg7XG4gICAgbGVmdDogMTh2dztcbiAgICB3aWR0aDogMTF2dztcbiAgICBtYXgtd2lkdGg6IDIwMHB4OyB9XG5cbi5pbnRyby1jdGEgbGFiZWwge1xuICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4ICMwMDAwMDAsMHB4IDBweCAxMHB4ICMwMDAwMDA7IH1cblxuLnByb2dyYW0taW50cm8ge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZDogIzA4MmE0NztcbiAgYm9yZGVyLWJvdHRvbTogMXJlbSBzb2xpZCAjZmZmZmZmOyB9XG4gIC5wcm9ncmFtLWludHJvIHAge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgICAucHJvZ3JhbS1pbnRybyBwIHNwYW4ge1xuICAgICAgY29sb3I6ICMwMDc1YjY7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnLCBzYW4tc2VyaWY7IH1cbiAgLnByb2dyYW0taW50cm8gaDQge1xuICAgIHBhZGRpbmc6IDAgMCAxLjF2dyAwO1xuICAgIG1hcmdpbjogMS4ydncgMCAwIDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjhyZW07IH1cblxuLnByb2dyYW0taW50cm8tcmVjIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlci1ib3R0b206IDFyZW0gc29saWQgI2ZmZmZmZjsgfVxuXG4udmVoaWNsZS10eXBlcy1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJvcmRlci1ib3R0b206IDFyZW0gc29saWQgI2ZmZmZmZjsgfVxuICAudmVoaWNsZS10eXBlcy1zZWN0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMnJlbSAwOyB9XG4gIC52ZWhpY2xlLXR5cGVzLXNlY3Rpb24gaDMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxcmVtIDAgMDsgfVxuICAudmVoaWNsZS10eXBlcy1zZWN0aW9uIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgIC52ZWhpY2xlLXR5cGVzLXNlY3Rpb24gYSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmctdG9wOiAxcmVtOyB9XG4gICAgLnZlaGljbGUtdHlwZXMtc2VjdGlvbiBhIGltZyB7XG4gICAgICB0cmFuc2l0aW9uOiAtd2Via2l0LWZpbHRlciAzMDBtcyBlYXNlLGZpbHRlciAzMDBtcyBlYXNlOyB9XG4gICAgLnZlaGljbGUtdHlwZXMtc2VjdGlvbiBhOmhvdmVyIGltZywgLnZlaGljbGUtdHlwZXMtc2VjdGlvbiBhOmZvY3VzIGltZyB7XG4gICAgICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgLyogU2FmYXJpIDYuMCAtIDkuMCAqL1xuICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7IH1cbiAgICAudmVoaWNsZS10eXBlcy1zZWN0aW9uIGE6aG92ZXIgc3BhbiwgLnZlaGljbGUtdHlwZXMtc2VjdGlvbiBhOmZvY3VzIHNwYW4ge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmJsdWUtYmFjayB7XG4gIGJhY2tncm91bmQ6ICMwMDc1YjY7IH1cbiAgLmJsdWUtYmFjayBoMyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5ibHVlLWJhY2sgYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmFsbC1pbmNlbnRpdmVzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXJlbSBzb2xpZCAjZmZmZmZmOyB9XG4gIC5hbGwtaW5jZW50aXZlcyBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuYWxsLWluY2VudGl2ZXMgYSAuYWxsLWluY2VudGl2ZS12aWRlbyB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2U7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDE2LCA0MywgNzgsIDApOyB9XG4gICAgLmFsbC1pbmNlbnRpdmVzIGEgdmlkZW8ge1xuICAgICAgdHJhbnNpdGlvbjogLXdlYmtpdC1maWx0ZXIgMzAwbXMgZWFzZSxmaWx0ZXIgMzAwbXMgZWFzZTsgfVxuICAgIC5hbGwtaW5jZW50aXZlcyBhOmhvdmVyIC5hbGwtaW5jZW50aXZlLXZpZGVvLCAuYWxsLWluY2VudGl2ZXMgYTpmb2N1cyAuYWxsLWluY2VudGl2ZS12aWRlbyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE2LCA0MywgNzgsIDAuNyk7IH1cbiAgICAuYWxsLWluY2VudGl2ZXMgYTpob3ZlciB2aWRlbywgLmFsbC1pbmNlbnRpdmVzIGE6Zm9jdXMgdmlkZW8sIC5hbGwtaW5jZW50aXZlcyBhOmhvdmVyIGltZywgLmFsbC1pbmNlbnRpdmVzIGE6Zm9jdXMgaW1nIHtcbiAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICAvKiBTYWZhcmkgNi4wIC0gOS4wICovXG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsgfVxuXG4uYWxsLWluY2VudGl2ZS12aWRlbyB7XG4gIGhlaWdodDogMjYuMjV2dztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItYm90dG9tOiA4cHggc29saWQgIzAwNzViNjsgfVxuICAuYWxsLWluY2VudGl2ZS12aWRlbyBoMiB7XG4gICAgZm9udC1zaXplOiAyLjV2dztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMC43NXZ3IDA7XG4gICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTBweCAjMDAwMDAwLDBweCAwcHggMTBweCAjMDAwMDAwO1xuICAgIGJhY2tncm91bmQ6ICMwODJhNDc7IH1cblxuLmFsbC1pbmNlbnRpdmUtbWF0aCBoMyB7XG4gIGZvbnQtc2l6ZTogMS4yNXZ3OyB9XG5cbi5hbGwtZXF1YXRpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxdncgYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmFsbC1lcXVhdGlvbiAuZXEtZWxlbWVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMXZ3O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYWxsLWVxdWF0aW9uIC5lcS1lbGVtZW50IHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDIuNXZ3O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmFsbC1lcXVhdGlvbiAuZXEtb3BlcmF0b3Ige1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDAuNzV2dztcbiAgICBjb2xvcjogIzAwNzViNjsgfVxuICAgIC5hbGwtZXF1YXRpb24gLmVxLW9wZXJhdG9yIHNwYW4ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IC0xcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5hbGwtZXF1YXRpb24gLmVxLW9wZXJhdG9yIHNwYW46Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgICAgICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxMnB4IDdweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDEwMDAwMDtcbiAgICAgICAgLyogQWJvdmUgV1AgdG9vbGJhci4gKi8gfVxuICAgIC5hbGwtZXF1YXRpb24gLmVxLW9wZXJhdG9yOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgIGZvbnQtc2l6ZTogMi41dnc7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHRvcDogLTEuNXZ3O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmFsbC1lcXVhdGlvbiAuZXEtb3BlcmF0b3Iub3I6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ09SJztcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXZ3O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0b3A6IC0xLjc1dnc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnOyB9XG5cbi5pbmNlbnRpdmUtY2xvc2VyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA1dnc7IH1cbiAgLmluY2VudGl2ZS1jbG9zZXIgaW1nIHtcbiAgICBwYWRkaW5nLXRvcDogNHZ3OyB9XG5cbi5yZWZlcmVuY2UtZ3VpZGVzIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLnJlZmVyZW5jZS1ndWlkZXMgLmNlbGwge1xuICAgIHBhZGRpbmc6IDF2dzsgfVxuICAucmVmZXJlbmNlLWd1aWRlcyBoMSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1zaXplOiAyLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnJlZmVyZW5jZS1ndWlkZXMgaDEgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEuM3JlbTsgfVxuICAucmVmZXJlbmNlLWd1aWRlcyBoMiB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucmVmZXJlbmNlLWd1aWRlcyBoMyB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJywgc2FuLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7IH1cbiAgLnJlZmVyZW5jZS1ndWlkZXMgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMXZ3IDF2dyAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7IH1cbiAgICAucmVmZXJlbmNlLWd1aWRlcyBhOmhvdmVyIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMwMDc1YjY7IH1cbiAgICAucmVmZXJlbmNlLWd1aWRlcyBhIGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5rZXktYmVuZWZpdHMge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogMTAwcmVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICAua2V5LWJlbmVmaXRzIC5jZWxsIHtcbiAgICBwYWRkaW5nOiAxdnc7IH1cbiAgLmtleS1iZW5lZml0cyBoMSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1zaXplOiA1Ljh2dztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmtleS1iZW5lZml0cyBoMiB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1zaXplOiAxLjc1dnc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5rZXktYmVuZWZpdHMgaDMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCcsIHNhbi1zZXJpZjtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHRleHQtc2hhZG93OiBub25lOyB9XG4gIC5rZXktYmVuZWZpdHMgYSB7XG4gICAgcGFkZGluZzogMXZ3IDF2dyAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7IH1cbiAgICAua2V5LWJlbmVmaXRzIGE6aG92ZXIge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwNzViNjsgfVxuICAgIC5rZXktYmVuZWZpdHMgYSBpbWcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG4uZ2FyYWdlIHtcbiAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxuICAuZ2FyYWdlLnZlaGljbGUtc2VsZWN0IHtcbiAgICBwYWRkaW5nLXRvcDogMnZ3O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgLmdhcmFnZSAuY2VsbCB7XG4gICAgcGFkZGluZzogMXZ3OyB9XG4gICAgLmdhcmFnZSAuY2VsbC5maWx0ZXItY2FydCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuZ2FyYWdlIC5jZWxsLmZpbHRlci1jYXJ0IC5idXR0b24tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC5nYXJhZ2UgLmNlbGwuZmlsdGVyLWNhcnQgLmJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjMDc3NkI2O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2dnc7IH1cbiAgICAgICAgICAuZ2FyYWdlIC5jZWxsLmZpbHRlci1jYXJ0IC5idXR0b24tZ3JvdXAgLmJ1dHRvbiBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDZ2dztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAydnc7IH1cbiAgLmdhcmFnZSAuZGV0YWlsLWljb24tc2hhcGUge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzdmg7XG4gICAgcmlnaHQ6IDN2aDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2Nsb3NlLWljb24ucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIC5nYXJhZ2UgaDEge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtc2l6ZTogMi44dnc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgLmdhcmFnZS52ZWhpY2xlLXNlbGVjdC5saWdodC1zZWN0aW9uIGgxIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5nYXJhZ2UgaDIge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmdhcmFnZSBoMyB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJywgc2FuLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7IH1cbiAgLmdhcmFnZSBoNCB7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAyLjF2dztcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbjogMi42OHZ3IDAgMCAxLjF2dztcbiAgICBwYWRkaW5nOiAxLjF2dztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAuZ2FyYWdlIGEudmVoaWNsZS1zZWxlY3QtaXRlbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMXZ3IDF2dyAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjY2FjYWNhOyB9XG4gICAgLmdhcmFnZSBhLnZlaGljbGUtc2VsZWN0LWl0ZW06aG92ZXIge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwNzViNjsgfVxuICAgIC5nYXJhZ2UgYS52ZWhpY2xlLXNlbGVjdC1pdGVtLmFjdGl2ZSB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjMDA3NWI2O1xuICAgICAgLyogYmFja2dyb3VuZDokbWVkaXVtLWdyYXk7ICAqLyB9XG4gICAgLmdhcmFnZSBhLnZlaGljbGUtc2VsZWN0LWl0ZW0gaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICB3aWR0aDogNTAlOyB9XG4gIC5nYXJhZ2UgLmZpbHRlci1jb250YWluZXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAuZ2FyYWdlIC5maWx0ZXItY29udGFpbmVyIGgyIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIC5nYXJhZ2UgLmZpbHRlci1jb250YWluZXIgLnJhZGlvLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIuMnZ3O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAgIC5nYXJhZ2UgLmZpbHRlci1jb250YWluZXIgZmllbGRzZXQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07IH1cbiAgICAuZ2FyYWdlIC5maWx0ZXItY29udGFpbmVyIC5jZWxsIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwOyB9XG4gIC5nYXJhZ2UgLmNhcnQtY29udGFpbmVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG4gICAgLmdhcmFnZSAuY2FydC1jb250YWluZXIgaDIge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLmdhcmFnZSAuY2FydC1jb250YWluZXIgLmNhbGxvdXQuY2FydC1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5nYXJhZ2UgLmNhcnQtY29udGFpbmVyIC5jYWxsb3V0LmNhcnQtaXRlbSAuY2VsbCB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5nYXJhZ2UgLmNhcnQtY29udGFpbmVyIC5jYWxsb3V0LmNhcnQtaXRlbSBkbCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMS4zcmVtO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjYWNhY2E7IH1cbiAgICAgIC5nYXJhZ2UgLmNhcnQtY29udGFpbmVyIC5jYWxsb3V0LmNhcnQtaXRlbSBkdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICAgICAgY29sb3I6ICMwMDc1YjY7IH1cbiAgICAgIC5nYXJhZ2UgLmNhcnQtY29udGFpbmVyIC5jYWxsb3V0LmNhcnQtaXRlbSBkZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5nYXJhZ2UgLmNhcnQtY29udGFpbmVyIC5jYWxsb3V0LmNhcnQtaXRlbSBpbWcge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07IH1cbiAgICAuZ2FyYWdlIC5jYXJ0LWNvbnRhaW5lciAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICB0b3A6IDIwJTtcbiAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBjb2xvcjogIzAwNzViNjsgfVxuICAuZ2FyYWdlIC5zYXZlZC1jb25maWdzIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG4gICAgLmdhcmFnZSAuc2F2ZWQtY29uZmlncyBoMiB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAuZ2FyYWdlIC5zYXZlZC1jb25maWdzIC5zYXZlZC1zZXNzaW9ucyBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5nYXJhZ2UgLnNhdmVkLWNvbmZpZ3MgLnNhdmVkLXNlc3Npb25zIGxpIC5jbG9zZS1idXR0b24ge1xuICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgdG9wOiAtMC4zcmVtO1xuICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmdhcmFnZSAuc2F2ZWQtY29uZmlncyAuc2F2ZWQtc2Vzc2lvbnMgYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAuZ2FyYWdlIC5zYXZlZC1jb25maWdzIC5zYXZlZC1zZXNzaW9ucyBhOmhvdmVyLCAuZ2FyYWdlIC5zYXZlZC1jb25maWdzIC5zYXZlZC1zZXNzaW9ucyBhOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCB7XG4gICAgcGFkZGluZzogMnJlbSAxcmVtO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbS1ob2xkZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmdhcmFnZSAuY2VsbC5tYWluLWdhcmFnZS1zaG9wIC5nYXJhZ2Utc2hvcC1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmZmZmY7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2NhY2FjYTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTsgfVxuICAgICAgLmdhcmFnZSAuY2VsbC5tYWluLWdhcmFnZS1zaG9wIC5nYXJhZ2Utc2hvcC1pdGVtLmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMwMDc1YjY7XG4gICAgICAgIGJhY2tncm91bmQ6ICNjYWNhY2E7IH1cbiAgICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbSAuc2hvcC1pdGVtLWltYWdlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7IH1cbiAgICAgICAgLmdhcmFnZSAuY2VsbC5tYWluLWdhcmFnZS1zaG9wIC5nYXJhZ2Utc2hvcC1pdGVtIC5zaG9wLWl0ZW0taW1hZ2UgaW1nIHtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTUwcHg7IH1cbiAgICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbSAuc2hvcC1pdGVtLWRlc2Mge1xuICAgICAgICBwYWRkaW5nOiAxcmVtOyB9XG4gICAgICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbSAuc2hvcC1pdGVtLWRlc2MgaDMge1xuICAgICAgICAgIGNvbG9yOiAjMDA3NWI2O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMCAxcmVtIDAuNXJlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLU1lZGl1bScsIHNhbi1zZXJpZjsgfVxuICAgICAgICAuZ2FyYWdlIC5jZWxsLm1haW4tZ2FyYWdlLXNob3AgLmdhcmFnZS1zaG9wLWl0ZW0gLnNob3AtaXRlbS1kZXNjIGg0IHtcbiAgICAgICAgICBjb2xvcjogIzAwNzViNjtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbSAwLjVyZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTWVkaXVtJywgc2FuLXNlcmlmOyB9XG4gICAgICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbSAuc2hvcC1pdGVtLWRlc2MgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgICAgICAuZ2FyYWdlIC5jZWxsLm1haW4tZ2FyYWdlLXNob3AgLmdhcmFnZS1zaG9wLWl0ZW0gLnNob3AtaXRlbS1kZXNjIC51cGZpdHRlci1sb2dvIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgLmdhcmFnZSAuY2VsbC5tYWluLWdhcmFnZS1zaG9wIC5nYXJhZ2Utc2hvcC1pdGVtIC5zaG9wLWl0ZW0tZGVzYyAuYWNjb3JkaW9uLmRpc2NsYWltZXIgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbSAuc2hvcC1pdGVtLWRlc2Mgb2wgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAgICAgICAuZ2FyYWdlIC5jZWxsLm1haW4tZ2FyYWdlLXNob3AgLmdhcmFnZS1zaG9wLWl0ZW0gLnNob3AtaXRlbS1kZXNjIC5zaG9wLWluZm8ge1xuICAgICAgICAgIHBhZGRpbmc6IDAuODVlbSAyZW07IH1cbiAgICAgICAgICAuZ2FyYWdlIC5jZWxsLm1haW4tZ2FyYWdlLXNob3AgLmdhcmFnZS1zaG9wLWl0ZW0gLnNob3AtaXRlbS1kZXNjIC5zaG9wLWluZm86YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY29yZGlvbi1jYXJldC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEuMjExdnc7XG4gICAgICAgICAgICBoZWlnaHQ6IDAuNXZ3O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbSAuc2hvcC1pdGVtLWRlc2MgLnNob3AtaW5mby5pcy1hY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbSAuc2hvcC1pdGVtLWRlc2MgdGFibGUgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAgICAgLmdhcmFnZSAuY2VsbC5tYWluLWdhcmFnZS1zaG9wIC5nYXJhZ2Utc2hvcC1pdGVtIC5zaG9wLWl0ZW0tZGVzYyB0YWJsZSB0Zm9vdCB7XG4gICAgICAgICAgY29sb3I6ICMwODJhNDc7IH1cbiAgICAgIC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbS5wb3BvdXQge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgbGVmdDogLTEwJTtcbiAgICAgICAgdG9wOiAtMnJlbTtcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDI1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAyNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDI1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgICAgICAgLmdhcmFnZSAuY2VsbC5tYWluLWdhcmFnZS1zaG9wIC5nYXJhZ2Utc2hvcC1pdGVtLnBvcG91dCAuc2hvcC1pdGVtLWltYWdlIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2FjYTsgfVxuICAuZ2FyYWdlIC50b3AtZ2FyYWdlLWRldGFpbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5nYXJhZ2UgLnRvcC1nYXJhZ2UtZGV0YWlsIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4OyB9XG4gIC5nYXJhZ2UgdGFibGU6bm90KC5nYXJhZ2Utc3ViLXRvdGFsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtaW4td2lkdGg6IDY3MHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5nYXJhZ2UgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuZ2FyYWdlIHRoZWFkIHRkIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBwYWRkaW5nOiAxcmVtIDJyZW0gMS4xMjVyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAuZ2FyYWdlIHRoZWFkIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2lkdGg6IDI1JTsgfVxuICAuZ2FyYWdlIHRib2R5IHRkIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBwYWRkaW5nOiAxcmVtIDJyZW0gMS4xMjVyZW07IH1cbiAgICAuZ2FyYWdlIHRib2R5IHRkIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgICAuZ2FyYWdlIHRib2R5IHRkIC5idXR0b24ge1xuICAgICAgbWFyZ2luOiA1cHg7IH1cbiAgICAuZ2FyYWdlIHRib2R5IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZjdmN2Y3OyB9XG4gICAgLmdhcmFnZSB0Ym9keSB0ZC5idXR0b25zIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5nYXJhZ2UgdGJvZHkgdGQgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAuZ2FyYWdlIHRib2R5IHRkIC5yZW1vdmUtaXRlbSB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICBjb2xvcjogIzAwNzViNjsgfVxuICAuZ2FyYWdlIC5nYXJhZ2Utc3ViLXRvdGFsIHtcbiAgICBmb250LXNpemU6IDAuODI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuZ2FyYWdlIC5nYXJhZ2Utc3ViLXRvdGFsIHRib2R5IHtcbiAgICAgIGJvcmRlci13aWR0aDogMDsgfVxuICAgIC5nYXJhZ2UgLmdhcmFnZS1zdWItdG90YWwgdGZvb3Qge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG4gICAgICBib3JkZXItY29sb3I6ICNjYWNhY2E7XG4gICAgICBjb2xvcjogIzAwNzViNjsgfVxuICAgIC5nYXJhZ2UgLmdhcmFnZS1zdWItdG90YWwgdHIge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwOyB9XG4gICAgLmdhcmFnZSAuZ2FyYWdlLXN1Yi10b3RhbCB0ZCB7XG4gICAgICBwYWRkaW5nOiAwLjZyZW0gMXJlbSAwLjYyNXJlbTsgfVxuICAuZ2FyYWdlIC5zZW5kLXRvLWRlYWxlciB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZDogIzEwMmI0ZTtcbiAgICBwYWRkaW5nOiAycmVtIDAgMDsgfVxuICAgIC5nYXJhZ2UgLnNlbmQtdG8tZGVhbGVyIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAyLjV2dztcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmdhcmFnZSAuc2VuZC10by1kZWFsZXIgbGFiZWwsIC5nYXJhZ2UgLnNlbmQtdG8tZGVhbGVyIC5oZWxwLXRleHQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuZ2FyYWdlIC5zZW5kLXRvLWRlYWxlciAuZGVhbGVyLXNlYXJjaC1jYWxsIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5nYXJhZ2UgLnNlbmQtdG8tZGVhbGVyIC5kZWFsZXItc2VhcmNoLWNhbGwgZHQge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGNvbG9yOiAjMDA3NWI2OyB9XG4gICAgICAuZ2FyYWdlIC5zZW5kLXRvLWRlYWxlciAuZGVhbGVyLXNlYXJjaC1jYWxsIGRkIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgICAgLmdhcmFnZSAuc2VuZC10by1kZWFsZXIgLmRlYWxlci1zZWFyY2gtY2FsbCAuY2hlY2stY29udGFpbmVyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gICAgICAuZ2FyYWdlIC5zZW5kLXRvLWRlYWxlciAuZGVhbGVyLXNlYXJjaC1jYWxsIC5jaGVja21hcmsge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAwLjVyZW07XG4gICAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIGhlaWdodDogMS41dnc7XG4gICAgICAgIHdpZHRoOiAxLjV2dztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwNzViNjsgfVxuICAgICAgLmdhcmFnZSAuc2VuZC10by1kZWFsZXIgLmRlYWxlci1zZWFyY2gtY2FsbCAuY2hlY2stY29udGFpbmVyIC5jaGVja21hcms6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAwLjR2dztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMC42dnc7XG4gICAgICAgIGhlaWdodDogMS4ydnc7XG4gICAgICAgIGJvcmRlcjogc29saWQgIzAwNzViNjtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDNweCAzcHggMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuXG4uYWNjLWNhcnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwOyB9XG5cbmJ1dHRvbi50cmlnZ2VyLmJ1dHRvbi5zZWNvbmRhcnkuaG9sbG93LmV4cGFuZGVkIHtcbiAgcGFkZGluZy10b3A6IDJyZW07IH1cblxuLmRlYWxlci1mb3JtLXJlc3BvbnNlIHtcbiAgZm9udC1zaXplOiAydnc7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogM3Z3IDA7IH1cblxuYm9keS5maW5kLWFuLXVwZml0dGVyLmxvY2F0b3Ige1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5maW5kLXVwZml0dGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDUuMjk2ODk5NjMyMTU5NzV2dyk7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmFzaWRlIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA1LjI5Njg5OTYzMjE1OTc1dncpO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmluZC11cGZpdHRlciAuYXNpZGUgaDEge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXNpemU6IDEuNjV2dztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5maW5kLXVwZml0dGVyIC5hY2NvcmRpb24uZmlsdGVyIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS40dnc7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmdyaWQteCA+IC5maWx0ZXJiYXIge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmdyaWQteCA+IC5maWx0ZXJjYXJkcyB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAuZmluZC11cGZpdHRlciAuZ3JpZC14ID4gLmZpbHRlcm1hcCB7XG4gICAgd2lkdGg6IDYwJTsgfVxuICAuZmluZC11cGZpdHRlciAuY2VsbCB7XG4gICAgcGFkZGluZzogMXZ3OyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgLmNlbGwuZmlsdGVyLWNvbHVtbiB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuZmluZC11cGZpdHRlciAuY2VsbC5maWx0ZXItY29sdW1uLmZpbHRlci1hY3RpdmUge1xuICAgICAgICBwYWRkaW5nOiAxdnc7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgI21hcC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5maW5kLXVwZml0dGVyICNtYXAge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDUuMjk2ODk5NjMyMTU5NzV2dyk7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmxvY2F0aW9uLWxpc3Qge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDUuMjk2ODk5NjMyMTU5NzV2dyk7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Y3ZjdmNztcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvcmRBbnRlbm5hLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCAuY2FyZC1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtOyB9XG4gICAgICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxdnc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLmxvY2F0aW9uLWxpc3QgLmNhcmQgc3Ryb25nIHtcbiAgICAgICAgY29sb3I6ICMwMDc1YjY7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvcmRBbnRlbm5hLU1lZGl1bVwiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCAuYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg1dnc7XG4gICAgICAgIHBhZGRpbmc6IDAuNjV2dyAwLjV2dyAwLjV2dyAwLjV2dztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLmxvY2F0aW9uLWxpc3QgLmNhcmQgLm9mZnNpdGUtY3RhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwLjY1dncgMS40dncgMC41dncgMC41dnc7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NXZ3O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgICAgIC5maW5kLXVwZml0dGVyIC5sb2NhdGlvbi1saXN0IC5jYXJkIC5vZmZzaXRlLWN0YTphZnRlciB7XG4gICAgICAgICAgd2lkdGg6IDF2dztcbiAgICAgICAgICBoZWlnaHQ6IDJ2dztcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IDA7IH1cbiAgICAgICAgLmZpbmQtdXBmaXR0ZXIgLmxvY2F0aW9uLWxpc3QgLmNhcmQgLm9mZnNpdGUtY3RhOmhvdmVyLCAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCAub2Zmc2l0ZS1jdGE6Zm9jdXMge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCBlbSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvcmRBbnRlbm5hLUJvbGRcIiwgc2Fucy1zZXJpZjsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLmxvY2F0aW9uLWxpc3QgLmNhcmQuaXMtYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwNzViNjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTsgfVxuICAgICAgICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZC5pcy1hY3RpdmUgc3Ryb25nIHtcbiAgICAgICAgICBjb2xvcjogIzA4MmE0NzsgfVxuICAgICAgICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZC5pcy1hY3RpdmUgLm9mZnNpdGUtY3RhIHtcbiAgICAgICAgICBjb2xvcjogIzA4MmE0NzsgfVxuICAuZmluZC11cGZpdHRlciBoMSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1zaXplOiAyLjh2dztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAuZmluZC11cGZpdHRlciBoMiB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1zaXplOiAxLjc1dnc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5maW5kLXVwZml0dGVyIGgzIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnLCBzYW4tc2VyaWY7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgfVxuICAuZmluZC11cGZpdHRlciBoNCB7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAyLjF2dztcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbjogMi42OHZ3IDAgMCAxLjF2dztcbiAgICBwYWRkaW5nOiAxLjF2dztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAuZmluZC11cGZpdHRlciAuZGV0YWlsLWljb24tc2hhcGUge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzdmg7XG4gICAgcmlnaHQ6IDN2aDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2Nsb3NlLWljb24ucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIC5maW5kLXVwZml0dGVyIC5wcmltYXJ5LWluZm8uZGFyay1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDgyYTQ3O1xuICAgIG1hcmdpbjogLTFyZW0gLTFyZW0gMXJlbTtcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgLnByaW1hcnktaW5mby5kYXJrLXNlY3Rpb24gaDMge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjNyZW07IH1cbiAgICAuZmluZC11cGZpdHRlciAucHJpbWFyeS1pbmZvLmRhcmstc2VjdGlvbiAucHJpbWFyeS1kZWV0cyB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4zcmVtOyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgLnByaW1hcnktaW5mby5kYXJrLXNlY3Rpb24gYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgLnByaW1hcnktaW5mby5kYXJrLXNlY3Rpb24gLnVwZml0dGVyLWxvZ28ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLnByaW1hcnktaW5mby5kYXJrLXNlY3Rpb24gLnVwZml0dGVyLWxvZ28gLmxvZ28taG9sZGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICAuZmluZC11cGZpdHRlciAucHJpbWFyeS1pbmZvLmRhcmstc2VjdGlvbiAudXBmaXR0ZXItbG9nbyAubG9nby1ob2xkZXIgaW1nIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA5NnB4ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmluZC11cGZpdHRlciAucHJpbWFyeS1pbmZvLmRhcmstc2VjdGlvbiAudXBmaXR0ZXItZGVldC10aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLnNlY29uZGFyeS1pbmZvIHtcbiAgICBtYXJnaW46IC0xcmVtIC0xcmVtIDFyZW07XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2FjYTsgfVxuICAgIC5maW5kLXVwZml0dGVyIC5zZWNvbmRhcnktaW5mbyBkZCB7XG4gICAgICBmb250LXNpemU6IDAuODVyZW07IH1cbiAgICAuZmluZC11cGZpdHRlciAuc2Vjb25kYXJ5LWluZm8gbGksIC5maW5kLXVwZml0dGVyIC5zZWNvbmRhcnktaW5mbyBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLnNlY29uZGFyeS1pbmZvIGxpLmNlbGwsIC5maW5kLXVwZml0dGVyIC5zZWNvbmRhcnktaW5mbyBwLmNlbGwge1xuICAgICAgICBwYWRkaW5nOiAwIDF2dztcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gIC5maW5kLXVwZml0dGVyIC5zZWNvbmRhcnktaW5mby5ncmF5LXNlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmNoZWNrLWNvbnRhaW5lciB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMi4ydnc7XG4gICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjg3NXZ3O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLm1hcC1sYWJlbC1saW5rIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5maW5kLXVwZml0dGVyIC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctZCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5maW5kLXVwZml0dGVyIC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctYyB7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAuZmluZC11cGZpdHRlciAuZmlsdGVyLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAxLjV2dzsgfVxuICAgIC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIGgyIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIC5yYWRpby1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjJ2dztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgICAuZmluZC11cGZpdHRlciAuZmlsdGVyLWNvbnRhaW5lciBmaWVsZHNldCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgIC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIC5jZWxsIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwOyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgLmZpbHRlci1jb250YWluZXIgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLmZpbHRlci1jb250YWluZXIgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbWcuc2VhcmNoLWxvY2F0aW9uIHtcbiAgICAgICAgd2lkdGg6IDJ2dzsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLmZpbHRlci1jb250YWluZXIgLmlucHV0LWdyb3VwLWJ1dHRvbiAuYnV0dG9uLmhvbGxvdyB7XG4gICAgICAgIHBhZGRpbmc6IDAuMmVtIDAuNGVtO1xuICAgICAgICBib3JkZXItd2lkdGg6IDFweDsgfVxuICAgICAgICAuZmluZC11cGZpdHRlciAuZmlsdGVyLWNvbnRhaW5lciAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5idXR0b24uaG9sbG93OmhvdmVyLCAuZmluZC11cGZpdHRlciAuZmlsdGVyLWNvbnRhaW5lciAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5idXR0b24uaG9sbG93Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7IH1cbiAgICAuZmluZC11cGZpdHRlciAuZmlsdGVyLWNvbnRhaW5lciAuZmlsdGVyc2VjdGlvbiB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjJ2dztcbiAgICAgIG1hcmdpbjogMC41cmVtIDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXNpemU6IDF2dztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIC5tb3JlLWJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxLjV2dztcbiAgICAgIHdpZHRoOiAxLjV2dztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDMzcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gICAgICAuZmluZC11cGZpdHRlciAuZmlsdGVyLWNvbnRhaW5lciAubW9yZS1idXR0b246YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMXZ3O1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICMwMDc1YjY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgbGVmdDogMC43dnc7XG4gICAgICAgIHRvcDogMC4yNXZ3O1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZTsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLmZpbHRlci1jb250YWluZXIgLm1vcmUtYnV0dG9uLmNsb3NlZDpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG4gICAgICAuZmluZC11cGZpdHRlciAuZmlsdGVyLWNvbnRhaW5lciAubW9yZS1idXR0b246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAxdnc7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzAwNzViNjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIGxlZnQ6IDAuN3Z3O1xuICAgICAgICB0b3A6IDAuMjV2dztcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2U7IH1cbiAgICAgIC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIC5tb3JlLWJ1dHRvbi5jbG9zZWQ6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAuZmluZC11cGZpdHRlciAuY2FyZC1zdW1tYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjMDgyYTQ3OyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgLmNhcmQtc3VtbWFyeSAuY2hlY2stY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS40dnc7XG4gICAgICBtYXJnaW46IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XG4gICAgICBmb250LXNpemU6IDAuNjV2dzsgfVxuICAgICAgLmZpbmQtdXBmaXR0ZXIgLmNhcmQtc3VtbWFyeSAuY2hlY2stY29udGFpbmVyIC5jaGVja21hcmsge1xuICAgICAgICBoZWlnaHQ6IDF2dztcbiAgICAgICAgd2lkdGg6IDF2dzsgfVxuICAgICAgICAuZmluZC11cGZpdHRlciAuY2FyZC1zdW1tYXJ5IC5jaGVjay1jb250YWluZXIgLmNoZWNrbWFyazphZnRlciB7XG4gICAgICAgICAgbGVmdDogMC4ydnc7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHdpZHRoOiAwLjR2dztcbiAgICAgICAgICBoZWlnaHQ6IDAuNzV2dzsgfVxuICAgIC5maW5kLXVwZml0dGVyIC5jYXJkLXN1bW1hcnkgLnBhZ2luYXRpb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgLmNhcmQtc3VtbWFyeSAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgICBwYWRkaW5nOiAwIDAuMTI1cmVtO1xuICAgICAgbWFyZ2luOiAwLjVyZW0gMCAwLjVyZW0gMC41cmVtO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMXZ3OyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgLmNhcmQtc3VtbWFyeSAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgICAgcGFkZGluZzogMC4xODc1cmVtIDAuMjVyZW07IH1cbiAgICAuZmluZC11cGZpdHRlciAuY2FyZC1zdW1tYXJ5IC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxdnc7IH1cbiAgICAuZmluZC11cGZpdHRlciAuY2FyZC1zdW1tYXJ5IC5wYWdpbmF0aW9uIGEsIC5maW5kLXVwZml0dGVyIC5jYXJkLXN1bW1hcnkgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjI1cmVtO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuZmluZC11cGZpdHRlciAuY2FyZC1zdW1tYXJ5IC5wYWdpbmF0aW9uIGE6aG92ZXIsIC5maW5kLXVwZml0dGVyIC5jYXJkLXN1bW1hcnkgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDc1YjY7IH1cbiAgICAuZmluZC11cGZpdHRlciAuY2FyZC1zdW1tYXJ5IC5jZWxsIHtcbiAgICAgIHBhZGRpbmc6IDAuMjV2dyAxdnc7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgdGFibGU6bm90KC5nYXJhZ2Utc3ViLXRvdGFsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtaW4td2lkdGg6IDY3MHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5maW5kLXVwZml0dGVyIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDgyYTQ3O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgdGhlYWQgdGQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbSAxLjEyNXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIC5maW5kLXVwZml0dGVyIHRoZWFkIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2lkdGg6IDI1JTsgfVxuICAuZmluZC11cGZpdHRlciB0Ym9keSB0ZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcGFkZGluZzogMXJlbSAycmVtIDEuMTI1cmVtOyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgdGJvZHkgdGQgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAgIC5maW5kLXVwZml0dGVyIHRib2R5IHRkIC5idXR0b24ge1xuICAgICAgbWFyZ2luOiA1cHg7IH1cbiAgICAuZmluZC11cGZpdHRlciB0Ym9keSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2Y3ZjdmNzsgfVxuICAgIC5maW5kLXVwZml0dGVyIHRib2R5IHRkLmJ1dHRvbnMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmZpbmQtdXBmaXR0ZXIgdGJvZHkgdGQgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAuZmluZC11cGZpdHRlciB0Ym9keSB0ZCAucmVtb3ZlLWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgY29sb3I6ICMwMDc1YjY7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLnVwZml0dGVyLXRodW1iIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGNhbGMoMjMuNXZ3IC0gMnJlbSk7XG4gICAgaGVpZ2h0OiBjYWxjKDIzLjV2dyAtIDJyZW0pO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuZmluZC11cGZpdHRlciAudXBmaXR0ZXItdGh1bWIgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cbiAgICAgIC5maW5kLXVwZml0dGVyIC51cGZpdHRlci10aHVtYiBpbWcubGFuZHNjYXBlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0OyB9XG5cbnAucHJpbWFyeS1kZWV0cyBhIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkOyB9XG5cbi5zcGVjaWFsLWFubm91bmNlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEuNXZ3OyB9XG5cbi5kb250LWJyZWFrLW91dCB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLW1zLXdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgLW1zLWh5cGhlbnM6IGF1dG87XG4gIC1tb3otaHlwaGVuczogYXV0bztcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvOyB9XG5cbi5jYWxsb3V0LnVwZml0dGVyLWRldGFpbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gIHotaW5kZXg6IDYwOyB9XG4gIC5jYWxsb3V0LnVwZml0dGVyLWRldGFpbCAudXBmaXR0ZXItZGlyZWN0b3J5IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmFzaWRlLnByb2dyYW0taW50cm8sIC5hc2lkZS5wcm9ncmFtLWludHJvIHtcbiAgYm9yZGVyLWJvdHRvbTogMCBzb2xpZCAjZmZmZmZmO1xuICB0cmFuc2l0aW9uOiB3aWR0aCA2MDBtcyBsaW5lYXIsIG1heC13aWR0aCA2MDBtcyBsaW5lYXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZmlsdGVyLWNvbHVtbiB7XG4gIHdpZHRoOiA1JTtcbiAgbWF4LXdpZHRoOiA1NXB4OyB9XG4gIC5maWx0ZXItY29sdW1uICNmaWx0ZXItYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDAuNnZ3O1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBtYXgtd2lkdGg6IDU1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgIC5maWx0ZXItY29sdW1uICNmaWx0ZXItYnV0dG9uIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4OyB9XG5cbi5maWx0ZXItY29sdW1uLmZpbHRlci1hY3RpdmUge1xuICB3aWR0aDogMjUlO1xuICBtYXgtd2lkdGg6IDI1JTsgfVxuICAuZmlsdGVyLWNvbHVtbi5maWx0ZXItYWN0aXZlICNmaWx0ZXItYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb250YWN0LWluZm8ge1xuICBiYWNrZ3JvdW5kOiAjMDgyYTQ3O1xuICBib3JkZXItYm90dG9tOiAxcmVtIHNvbGlkICNmZmZmZmY7IH1cbiAgLmNvbnRhY3QtaW5mbyBoMiB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAuY29udGFjdC1pbmZvIC5pbmZvLWhvbGRlciB7XG4gICAgcGFkZGluZy10b3A6IDJ2dztcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogMTAwcmVtO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgLmNvbnRhY3QtaW5mbyAuaW5mby1ob2xkZXIgZHQge1xuICAgICAgY29sb3I6ICNjYWNhY2E7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLWJvbGQnLCBzYW4tc2VyaWY7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgIC5jb250YWN0LWluZm8gLmluZm8taG9sZGVyIGRkIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLmNvbnRhY3QtaW5mbyAuaW5mby1ob2xkZXIgcCB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gIC5jb250YWN0LWluZm86bm90KC5ncmF5KSAuYnV0dG9uLmxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMDA3NWI2O1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICMwMDc1YjY7IH1cbiAgICAuY29udGFjdC1pbmZvOm5vdCguZ3JheSkgLmJ1dHRvbi5sYXJnZTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2J1dHRvbi1jYXJldC1ibHVlLnBuZyk7IH1cbiAgICAuY29udGFjdC1pbmZvOm5vdCguZ3JheSkgLmJ1dHRvbi5sYXJnZTpob3ZlciwgLmNvbnRhY3QtaW5mbzpub3QoLmdyYXkpIC5idXR0b24ubGFyZ2U6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogIzA4MmE0NztcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZmZmZjsgfVxuICAgICAgLmNvbnRhY3QtaW5mbzpub3QoLmdyYXkpIC5idXR0b24ubGFyZ2U6aG92ZXI6YWZ0ZXIsIC5jb250YWN0LWluZm86bm90KC5ncmF5KSAuYnV0dG9uLmxhcmdlOmZvY3VzOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9idXR0b24tY2FyZXQucG5nKTsgfVxuXG4uY29udGFjdC1pbmZvLmdyYXkge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItYm90dG9tOiAxcmVtIHNvbGlkICNmZmZmZmY7IH1cbiAgLmNvbnRhY3QtaW5mby5ncmF5IGgyIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY29udGFjdC1pbmZvLmdyYXkgLmluZm8taG9sZGVyIGR0IHtcbiAgICBjb2xvcjogIzAwNzViNjsgfVxuICAuY29udGFjdC1pbmZvLmdyYXkgLmluZm8taG9sZGVyIGRkIHtcbiAgICBjb2xvcjogIzAwNzViNjsgfVxuICAuY29udGFjdC1pbmZvLmdyYXkgLmluZm8taG9sZGVyIHAge1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jb250YWN0LWluZm8uZ3JheSAuaW5mby1ob2xkZXIgaW1nIHtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSksIGluc2V0IDBweCAwcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG5cbmR0IHtcbiAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1TZW1pYm9sZCcsIHNhbi1zZXJpZjsgfVxuXG4uYnVzaW5lc3MtbGlua3Mge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTsgfVxuXG4uZG93bmxvYWQtY3RhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3R0b206IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4xdncgMXZ3IDAuM3Z3IDA7XG4gIHJpZ2h0OiAwO1xuICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVNlbWlib2xkJywgc2FuLXNlcmlmO1xuICBmb250LXNpemU6IDEuMnZ3OyB9XG4gIC5kb3dubG9hZC1jdGEgc3BhbiB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDM5cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAjMDA3NWI2OyB9XG4gICAgLmRvd25sb2FkLWN0YSBzcGFuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9kb3dubG9hZC1jYXJldC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRvcDogMHZ3O1xuICAgICAgd2lkdGg6IDJ2dztcbiAgICAgIGhlaWdodDogMXZ3O1xuICAgICAgbWFyZ2luLXRvcDogMXZ3O1xuICAgICAgbWFyZ2luLWxlZnQ6IDF2dztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZG93bmxvYWQtY3RhOmhvdmVyIHNwYW4ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8gLmRvd25sb2FkLWN0YSBzcGFuIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFiLWdhbGxlcnktaGVybyAuZG93bmxvYWQtY3RhIHNwYW46YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvZG93bmxvYWQtY2FyZXQtd2hpdGUucG5nKTsgfVxuXG4ub2Zmc2l0ZS1jdGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjF2dyAxdncgMC4zdncgMDtcbiAgcmlnaHQ6IDA7XG4gIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtU2VtaWJvbGQnLCBzYW4tc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4ydnc7IH1cbiAgLm9mZnNpdGUtY3RhIHNwYW4ge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogIzAwNzViNjsgfVxuICAgIC5vZmZzaXRlLWN0YSBzcGFuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9vZmZzaXRlLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdG9wOiAwLjI1dnc7XG4gICAgICB3aWR0aDogMS41dnc7XG4gICAgICBoZWlnaHQ6IDEuNXZ3O1xuICAgICAgbWFyZ2luLWxlZnQ6IDF2dztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaW1wb3J0YW50IHtcbiAgY29sb3I6ICMwMDc1YjY7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuXG4uY2VydGlmeS1zdGVwcyB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cbiAgLmNlcnRpZnktc3RlcHMgaDEge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtc2l6ZTogMnZ3O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5jZXJ0aWZ5LXN0ZXBzIGgyIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2VydGlmeS1zdGVwcyBoMyB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1zaXplOiAydnc7IH1cbiAgLmNlcnRpZnktc3RlcHMgLmluZm8taG9sZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMnZ3O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDByZW07XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLmNlcnRpZnktc3RlcHMgLmNhcmQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNjYWNhY2E7IH1cbiAgLmNlcnRpZnktc3RlcHMgLmNlcnRpZnktYW5ub3VuY2VtZW50LXRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAuY2VydGlmeS1zdGVwcyAuY2VydGlmeS1hbm5vdW5jZW1lbnQtdGFibGUgZHQge1xuICAgICAgYmFja2dyb3VuZDogIzA4MmE0NztcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgcGFkZGluZzogMXJlbSAycmVtOyB9XG4gICAgLmNlcnRpZnktc3RlcHMgLmNlcnRpZnktYW5ub3VuY2VtZW50LXRhYmxlIGRkIHtcbiAgICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgLmNlcnRpZnktc3RlcHMgLmVucm9sbC1hbm5vdW5jZW1lbnQtdGFibGUge1xuICAgIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5jZXJ0aWZ5LXN0ZXBzIC5lbnJvbGwtYW5ub3VuY2VtZW50LXRhYmxlIGR0IHtcbiAgICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTsgfVxuICAgIC5jZXJ0aWZ5LXN0ZXBzIC5lbnJvbGwtYW5ub3VuY2VtZW50LXRhYmxlIGRkIHtcbiAgICAgIHBhZGRpbmc6IDFyZW07IH1cblxuc2VjdGlvbi5jb250YWN0LXVzIHtcbiAgYmFja2dyb3VuZDogIzA4MmE0NztcbiAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICMwMDc1YjY7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzIC5pbnRyby1jdGEgLmJ1dHRvbiB7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZmZmZjsgfVxuICBzZWN0aW9uLmNvbnRhY3QtdXMuY29udGFjdC1jb21tZXJjaWFsIHtcbiAgICBib3JkZXItY29sb3I6ICMwMDc1YjY7IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzLmNvbnRhY3QtYWNjZXNzaWJpbGl0eSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA3NWI2OyB9XG4gIHNlY3Rpb24uY29udGFjdC11cy5jb250YWN0LXJlY3JlYXRpb25hbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA3NWI2OyB9XG4gIHNlY3Rpb24uY29udGFjdC11cy5jb250YWN0LWZsZWV0IHtcbiAgICBib3JkZXItY29sb3I6ICMwMDc1YjY7IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzIGgyIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzIHAge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIHNlY3Rpb24uY29udGFjdC11cyAucmFkaW8tZ3JvdXAge1xuICAgIHBhZGRpbmc6IDJyZW0gMCA0cmVtOyB9XG4gICAgc2VjdGlvbi5jb250YWN0LXVzIC5yYWRpby1ncm91cCBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgIHNlY3Rpb24uY29udGFjdC11cyAucmFkaW8tZ3JvdXAgLnJhZGlvIHtcbiAgICAgIHRvcDogN3B4OyB9XG4gIHNlY3Rpb24uY29udGFjdC11cyAuY29udGFjdC1yZXN1bHRzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogMTAwcmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGhlaWdodDogNjB2aDsgfVxuICAgIHNlY3Rpb24uY29udGFjdC11cyAuY29udGFjdC1yZXN1bHRzIC5pbnRyby1jdGEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiA2dmg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwcmVtIC0gMS4yNXJlbSk7IH1cblxuLnNsaWRlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLWJvdHRvbTogOXB4IHNvbGlkICMwMEFDRjY7IH1cblxuLnNsaWRlIC5zaXplZC1jb250YWluZXIge1xuICBwYWRkaW5nOiA3NXB4IDI1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMDJiNGU7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmctdG9wOiA1NXB4O1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICMwMEFDRjY7XG4gIG1hcmdpbi10b3A6IC0xMHB4OyB9XG5cbi5wYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDEyMHB4OyB9XG5cbi5uYW1lLWluZm8tZm9ybSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtUmVndWxhcic7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMDJiNGU7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbWFyZ2luLXRvcDogMThweDtcbiAgd2lkdGg6IDU4dnc7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5jb250YWN0LXVzIGgxIHtcbiAgZm9udC1zaXplOiAyLjN2dztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHRleHQtc2hhZG93OiBub25lOyB9XG5cbi5kYXJrLXNlY3Rpb24gbGFiZWwge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uZmxlZXQtaW5jZW50aXZlcyB7XG4gIG1hcmdpbi10b3A6IDE0dnc7XG4gIHBhZGRpbmc6IDF2dztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQ6ICMwODJhNDc7IH1cblxuLmFjY2Vzc2liaWxpdHktaW5mbyB7XG4gIGJvcmRlci1ib3R0b206IDFyZW0gc29saWQgI2ZmZmZmZjtcbiAgcGFkZGluZzogMnJlbSAwOyB9XG4gIC5hY2Nlc3NpYmlsaXR5LWluZm8gLmNvbnRlbnQtYnVja2V0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDF2dyAydnc7IH1cbiAgICAuYWNjZXNzaWJpbGl0eS1pbmZvIC5jb250ZW50LWJ1Y2tldCBwLCAuYWNjZXNzaWJpbGl0eS1pbmZvIC5jb250ZW50LWJ1Y2tldCB1bCB7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgLmFjY2Vzc2liaWxpdHktaW5mbyAuY2FsbHMtdG8tYWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzcmVtIDAgMXJlbTsgfVxuICAuYWNjZXNzaWJpbGl0eS1pbmZvIC5vZmYge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmFjY2Vzc2liaWxpdHktaW5mbyAuYmFja2dyb3VuZC1pbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogaW5oZXJpdDsgfVxuICAuYWNjZXNzaWJpbGl0eS1pbmZvIC5iYWNrZ3JvdW5kLWltZzIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICBtaW4taGVpZ2h0OiAyMHZ3O1xuICAgIGJvcmRlci1ib3R0b206IDAuNXJlbSBzb2xpZCAjMDY3OGJjOyB9XG4gIC5hY2Nlc3NpYmlsaXR5LWluZm8gLnRhYnMge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5hY2Nlc3NpYmlsaXR5LWluZm8gLnRhYnMtdGl0bGUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuNSU7XG4gICAgd2lkdGg6IDI0JTsgfVxuICAgIC5hY2Nlc3NpYmlsaXR5LWluZm8gLnRhYnMtdGl0bGUgPiBhIHtcbiAgICAgIGZvbnQtc2l6ZTogLjl2dztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzViNjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjsgfVxuICAgICAgLmFjY2Vzc2liaWxpdHktaW5mbyAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC5hY2Nlc3NpYmlsaXR5LWluZm8gLnRhYnMtdGl0bGUgPiBhOmhvdmVyLCAuYWNjZXNzaWJpbGl0eS1pbmZvIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMzdhOWU4O1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9XG4gIC5hY2Nlc3NpYmlsaXR5LWluZm8gLm9mZnNpdGUtY3RhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmFjY2Vzc2liaWxpdHktaW5mby52aWRlby1zdG9yeSB7XG4gIGRpc3BsYXk6IGlubGluZS10YWJsZTsgfVxuXG4uYWNjZXNzaWJpbGl0eS1pbmZvLnZpZGVvLXN0b3J5IC5jb250ZW50LWJ1Y2tldCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDF2dyA0dnc7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmFjY2Vzc2liaWxpdHktaW5mbyAuYmFja2dyb3VuZC1pbWcudmlkZW8tc3RvcnktdmlkZW8ge1xuICBoZWlnaHQ6IDMzdnc7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5hY2Nlc3NpYmlsaXR5LWluZm8gLmJhY2tncm91bmQtaW1nLnZpZGVvLXN0b3J5LXZpZGVvIC5iYW5uZXJfX3ZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgwKTtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDsgfVxuXG52aWRlbzo6Y3VlIHtcbiAgYmFja2dyb3VuZDogIzA4MmE0NztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHotaW5kZXg6IDI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG52aWRlbzo6Y3VlKGIpIHtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxubGkuY2VsbCBhIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxubGkuZG93bmxvYWQge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktZG93bmxvYWQtaWNvbi5wbmcpIG5vLXJlcGVhdCAwIGNlbnRlcjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAxMHB4IDA7IH1cbiAgbGkuZG93bmxvYWQgYSB7XG4gICAgcGFkZGluZzogMTBweCAwIDEwcHggNTVweDsgfVxuXG5saS5xdWVzdGlvbnMge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktcXVlc3Rpb24taWNvbi5wbmcpIG5vLXJlcGVhdCAwIGNlbnRlcjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAxMHB4IDA7IH1cbiAgbGkucXVlc3Rpb25zIGEge1xuICAgIHBhZGRpbmc6IDEwcHggMCAxMHB4IDU1cHg7IH1cblxubGkubWlsaXRhcnkge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktbWlsaXRhcnktaWNvbi5wbmcpIG5vLXJlcGVhdCAwIGNlbnRlcjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAxMHB4IDA7IH1cbiAgbGkubWlsaXRhcnkgYSB7XG4gICAgcGFkZGluZzogMTBweCAwIDEwcHggNTVweDsgfVxuXG5saS5lbXBsb3llZSB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYWNjZXNzaWJpbGl0eS1lbXBsb3llZS1pY29uLnBuZykgbm8tcmVwZWF0IDAgY2VudGVyO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHggMDsgfVxuICBsaS5lbXBsb3llZSBhIHtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCA1NXB4OyB9XG5cbnAuaW5mb2l0ZW0ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktaW5mb3JtYXRpb24taWNvbi5wbmcpIG5vLXJlcGVhdCAwIGNlbnRlcjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAxMHB4IDAgMTBweCA3MHB4OyB9XG5cbnAuY2xhaW1pdGVtIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9hY2Nlc3NpYmlsaXR5LWNsYWltLWljb24ucG5nKSBuby1yZXBlYXQgMCBjZW50ZXI7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZzogMTBweCAwIDEwcHggNzBweDsgfVxuXG5saS50YXNraXRlbSB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYWNjZXNzaWJpbGl0eS10YXNrLWljb24ucG5nKSBuby1yZXBlYXQgMCBjZW50ZXI7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZzogMTBweCAwOyB9XG4gIGxpLnRhc2tpdGVtIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCA3MHB4OyB9XG5cbi5wcm9ncmFtLXN0ZXBzIHtcbiAgbWFyZ2luOiAycmVtIDA7IH1cbiAgLnByb2dyYW0tc3RlcHMgZHQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICMwMDc1YjY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwIDAuNWVtOyB9XG4gICAgLnByb2dyYW0tc3RlcHMgZHQ6YmVmb3JlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTFyZW07XG4gICAgICB0b3A6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMnJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpOyB9XG4gICAgLnByb2dyYW0tc3RlcHMgZHQ6YWZ0ZXIge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogLTFyZW07XG4gICAgICB0b3A6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMnJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpOyB9XG4gIC5wcm9ncmFtLXN0ZXBzIGRkIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDgyYTQ3O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxcmVtIDAgMXJlbSAycmVtO1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgZm9udC1zaXplOiAxdnc7IH1cbiAgICAucHJvZ3JhbS1zdGVwcyBkZDpiZWZvcmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMC41cmVtO1xuICAgICAgdG9wOiAtMzMlO1xuICAgICAgaGVpZ2h0OiA2NiU7XG4gICAgICB3aWR0aDogMC41cmVtO1xuICAgICAgYmFja2dyb3VuZDogIzAwNzViNjtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgICAgdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7IH1cbiAgICAucHJvZ3JhbS1zdGVwcyBkZDphZnRlciB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICB0b3A6IDMzJTtcbiAgICAgIGhlaWdodDogNjYlO1xuICAgICAgd2lkdGg6IDAuNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDc1YjY7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTIwZGVnKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBza2V3WCgtMjBkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goLTIwZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogc2tld1goLTIwZGVnKTsgfVxuXG4ubGFuZGluZyBsZWdlbmQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuXG4uaW4tcGFnZS1qdW1wIGE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9jaXJjbGUtY2FyZXQucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRvcDogMC41dnc7XG4gIHdpZHRoOiAxLjV2dztcbiAgaGVpZ2h0OiAxLjV2dztcbiAgbWFyZ2luLWxlZnQ6IDF2dztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5pbi1wYWdlLWp1bXAubm9ybWp1bXAgYTphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0b3A6IDAuMjV2dztcbiAgbWFyZ2luLWxlZnQ6IDAuNXZ3OyB9XG5cbi5pbi1wYWdlLWp1bXAubm9ybWp1bXAgbGkuY2VsbCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtOyB9XG5cbi5pbi1wYWdlLWp1bXAubGlnaHQgYTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY2lyY2xlLWNhcmV0LWJsdWUucG5nKTsgfVxuXG4uZ3JheSB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cbiAgLmdyYXkgLmNvbnRlbnQtYnVja2V0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG4gIC5ncmF5IC5wcm9tb19fYmFja2dyb3VuZCB7XG4gICAgei1pbmRleDogMTsgfVxuXG4ucmVpbWJ1cnNlbWVudC1zdGVwcyAucHJvbW9fX2JhY2tncm91bmQge1xuICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMTAxJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHotaW5kZXg6IDE7IH1cblxuLnJlaW1idXJzZW1lbnQtc3RlcHMgaDQge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMCAwIDJyZW0gMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmFjY2Vzc2liaWxpdHktdGFibGUge1xuICBtaW4td2lkdGg6IDQwcmVtOyB9XG5cbi5hY2Nlc3NpYmlsaXR5LXRhYmxlIHRoZWFkIHRoIHtcbiAgYmFja2dyb3VuZDogIzA4MmE0NztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDFyZW0gMC42MjVyZW0gMS4xMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzA4MmE0NzsgfVxuXG4uYWNjZXNzaWJpbGl0eS10YWJsZSB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMwODJhNDc7XG4gIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTWVkaXVtJywgc2FuLXNlcmlmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDgyYTQ3OyB9XG4gIC5hY2Nlc3NpYmlsaXR5LXRhYmxlIHRib2R5IHRkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmFjY2Vzc2liaWxpdHktdGFibGUgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5hY2Nlc3NpYmlsaXR5LXRhYmxlIC55ZXMge1xuICBmb250LXNpemU6IDAuMDFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmFjY2Vzc2liaWxpdHktdGFibGUgLnllczphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGJhY2tncm91bmQ6ICMwODJhNDc7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIHRvcDogLTAuN3JlbTtcbiAgICBsZWZ0OiAtMC41cmVtOyB9XG5cbi5mb3JtLWVycm9yIHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZ2lmdC1yZXNwb25zZS5vZmYge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi51bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAudW5kZXJsaW5lOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmRhcmstc2VjdGlvbiBhLnVuZGVybGluZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogI2NhY2FjYTsgfVxuICAuZGFyay1zZWN0aW9uIGEudW5kZXJsaW5lOmhvdmVyLCAuZGFyay1zZWN0aW9uIGEudW5kZXJsaW5lOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ubm9iciB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmltYWdlLWRpc2NsYWltZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuaW1hZ2UtZGlzY2xhaW1lciBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDgyYTQ3O1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uaW1hZ2UtbG9hZGVyLXN2ZyB7XG4gIHdpZHRoOiAxMzBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpZFhSbUxUZ2lQejRLUENFdExTQkhaVzVsY21GMGIzSTZJRUZrYjJKbElFbHNiSFZ6ZEhKaGRHOXlJREU0TGpBdU1Dd2dVMVpISUVWNGNHOXlkQ0JRYkhWbkxVbHVJQzRnVTFaSElGWmxjbk5wYjI0NklEWXVNREFnUW5WcGJHUWdNQ2tnSUMwdFBnbzhJVVJQUTFSWlVFVWdjM1puSUZCVlFreEpReUFpTFM4dlZ6TkRMeTlFVkVRZ1UxWkhJREV1TVM4dlJVNGlJQ0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTlIY21Gd2FHbGpjeTlUVmtjdk1TNHhMMFJVUkM5emRtY3hNUzVrZEdRaVBnbzhjM1puSUhabGNuTnBiMjQ5SWpFdU1TSWdhV1E5SWt4aGVXVnlYekVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSGc5SWpCd2VDSWdlVDBpTUhCNElnb0pJSFpwWlhkQ2IzZzlJakFnTUNBek1EQWdNVEl3SWlCbGJtRmliR1V0WW1GamEyZHliM1Z1WkQwaWJtVjNJREFnTUNBek1EQWdNVEl3SWlCNGJXdzZjM0JoWTJVOUluQnlaWE5sY25abElqNEtQR2MrQ2drOFp6NEtDUWs4Wno0S0NRa0pQSEJoZEdnZ1ptbHNiRDBpSTBaR1JrWkdSaUlnWkQwaVRUSXpOUzQ0TERRMExqSk1Nak0xTGpnc05EUXVNa015TXpVdU9DdzBOQzR5TERJek5TNDRMRFEwTGpJc01qTTFMamdzTkRRdU1rTXlNelV1T0N3ME5DNHlMREl6TlM0NExEUTBMaklzTWpNMUxqZ3NORFF1TW5vaUx6NEtDUWtKUEhCaGRHZ2dabWxzYkQwaUkwWkdSa1pHUmlJZ1pEMGlUVEU1TWk0NUxESTRMamxqTUN3d0xqRXNNQzR4TERBdU1Td3dMakVzTUM0eVF6RTVNeXd5T1N3eE9USXVPU3d5T0M0NUxERTVNaTQ1TERJNExqbDZJaTgrQ2drSlBDOW5QZ29KUEM5blBnb0pQR1JsWm5NK0Nnb0pDUWs4SVMwdElFUmhJR2R5WVdScFpXNTBJQzB0UGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmthV1Z1ZENJZ2VERTlJakFsSWlCNU1UMGlNQ1VpSUhneVBTSXdKU0lnZVRJOUlqRXdNQ1VpUGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeHpkRzl3SUc5bVpuTmxkRDBpTUNVaUlITjBlV3hsUFNKemRHOXdMV052Ykc5eU9pTXdNREF3TURBZ095SXZQZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUR4emRHOXdJRzltWm5ObGREMGlNalVsSWlCemRIbHNaVDBpYzNSdmNDMWpiMnh2Y2pvalkyTmpZMk5qSURzaUx6NEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqVXdKU0lnYzNSNWJHVTlJbk4wYjNBdFkyOXNiM0k2STBaR1JrWkdSaUE3SWk4K0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJM05TVWlJSE4wZVd4bFBTSnpkRzl3TFdOdmJHOXlPaU5HUmtaR1JrWWdPeUl2UGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeHpkRzl3SUc5bVpuTmxkRDBpTVRBd0pTSWdjM1I1YkdVOUluTjBiM0F0WTI5c2IzSTZJMFpHUmtaR1JpQTdJaTgrQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4TDJ4cGJtVmhja2R5WVdScFpXNTBQZ29LSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHdoTFMwZ1UzUnBkR05vSURJZ1ozSmhaR2xsYm5SeklIUnZaMlYwYUdWeUlHWnZjaUJ6WldGdGJHVnpjeUJoYm1sdFlYUnBiMjRnSUMwdFBnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1BIQmhkSFJsY200Z2FXUTlJbkJoZEhSbGNtNGlJSGc5SWpBaUlIazlJakFpSUhkcFpIUm9QU0l4TUNVaUlHaGxhV2RvZEQwaU16QXdKU0lnY0dGMGRHVnlibFZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJK0Nnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHh5WldOMElIZzlJakFpSUhrOUlqQWlJSGRwWkhSb1BTSXhNREFsSWlCb1pXbG5hSFE5SWpNd01DVWlJR1pwYkd3OUluVnliQ2dqWjNKaFpHbGxiblFwSWo0S0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEdGdWFXMWhkR1VnWVhSMGNtbGlkWFJsVkhsd1pUMGlXRTFNSWdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JoZEhSeWFXSjFkR1ZPWVcxbFBTSjVJZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm1jbTl0UFNJdE1UQXdKU0lnZEc4OUlqRXdNQ1VpQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1IxY2owaU0zTWlDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxjR1ZoZEVOdmRXNTBQU0pwYm1SbFptbHVhWFJsSWk4K0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQQzl5WldOMFBnb0tJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0E4Y21WamRDQjRQU0l3SWlCNVBTSXdJaUIzYVdSMGFEMGlNVEF3SlNJZ2FHVnBaMmgwUFNJek1EQWxJaUJtYVd4c1BTSjFjbXdvSTJkeVlXUnBaVzUwS1NJK0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUR4aGJtbHRZWFJsSUdGMGRISnBZblYwWlZSNWNHVTlJbGhOVENJS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWVhSMGNtbGlkWFJsVG1GdFpUMGllU0lLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdabkp2YlQwaU1UQXdKU0lnZEc4OUlpMHhNREFsSWdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JrZFhJOUlqTnpJZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWEJsWVhSRGIzVnVkRDBpYVc1a1pXWnBibWwwWlNJdlBnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHd2Y21WamRENEtDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQThMM0JoZEhSbGNtNCtDZ2tKUEM5a1pXWnpQZ29KUEhCaGRHZ2dabWxzYkQwaWRYSnNLQ053WVhSMFpYSnVLU0lnWkQwaVRURTFNUzR4TERFd055NHpRemMyTERFd055NHpMREUxTGpFc09EWXVNaXd4TlM0eExEWXdZekF0TWpZdU1TdzJNQzQ1TFRRM0xqTXNNVE0xTGprdE5EY3VNME15TWpZdU1pd3hNaTQzTERJNE55d3pNeTQ1TERJNE55dzJNQW9KQ1VNeU9EY3NPRFl1TWl3eU1qWXVNaXd4TURjdU15d3hOVEV1TVN3eE1EY3VNM29nVFRFMU1TNHhMREUyTGpoRE56Z3VOaXd4Tmk0NExERTVMamtzTXpZdU1pd3hPUzQ1TERZd1l6QXNNak11T1N3MU9DNDNMRFF6TGpJc01UTXhMaklzTkRNdU1nb0pDV00zTWk0MExEQXNNVE14TGpJdE1Ua3VNeXd4TXpFdU1pMDBNeTR5UXpJNE1pNHpMRE0yTGpJc01qSXpMalVzTVRZdU9Dd3hOVEV1TVN3eE5pNDRlaUl2UGdvSlBIQmhkR2dnWm1sc2JEMGlkWEpzS0NOd1lYUjBaWEp1S1NJZ1pEMGlUVEl6TlM0M0xEUTBMalZqTUM0eUxUQXVNeXd3TFRBdU5pMHdMalF0TUM0Mll5MHlMaklzTUMwMUxEQXROeTR6TERCakxUQXVOU3d3TFRBdU9Dd3dMakV0TVM0eExEQXVObU10TUM0NExERXVOaTB4TVN3eE5pNDRMVEV5TGprc01Ua3VPQW9KQ1dNdE1DNHpMREF1TlMwd0xqY3NNQzQwTFRBdU9DMHdMakZqTFRBdU1pMHhMamd0TVM0M0xUTXVPQzAwTGpFdE5DNDNZeTB4TGpndE1DNDNMVE11Tmkwd0xqa3ROUzQxTFRBdU5tTXRNeTR6TERBdU5DMDJMak1zTWk0eUxUZ3VPU3cwTGpKakxUUXNNeTAzTGpRc05pNDVMVEV4TGpnc09TNDRDZ2tKWXkweUxqUXNNUzQyTFRVdU55d3lMamt0Tnk0NUxEQXVPV010TWkweExqZ3RNUzQ0TFRVdU9Td3hMak10T1M0eFl6QXVNeTB3TGpNc01DNDNMVEF1TVN3d0xqWXNNQzR5WXkwd0xqTXNNUzQwTERBdU1Td3lMamtzTVM0eUxETXVPV014TGpNc01TNHlMRE11TWl3eExqTXNOQzQ1TERBdU5Rb0pDV014TGprdE1Td3pMakV0TWk0NExETXVOQzAwTGpsak1DNDFMVE11TWkweUxUWXVNUzAxTGpFdE5pNHpZeTB5TGpVdE1DNHlMVFVzTUM0M0xUY3VNeXd5TGpkakxURXVNaXd4TFRFdU9Td3hMamN0TWk0NUxETXVNbU10TUM0eUxEQXVOQzB3TGpZc01DNDBMVEF1Tmkwd0xqRUtDUWxqTUM0eExUUXVNUzB4TGpZdE5pNDFMVFV0Tmk0Mll5MHlMamN0TUM0eExUVXVOU3d4TGpRdE55NDNMRE11TVdNdE1pNDBMREl0TkM0MkxEUXVOUzAyTGpnc04yTXRNQzR6TERBdU15MHdMalVzTUM0ekxUQXVOaTB3TGpOakxUQXVNUzB5TGpjdE1DNDRMVFV1TkMweUxUY3VNd29KQ1dNdE1DNDFMVEF1TnkweExqUXRNUzB5TGpJdE1DNDFZeTB3TGpRc01DNHlMVEV1Tml3d0xqZ3RNaTQyTERFdU5XTXRNQzQxTERBdU5DMHdMallzTUM0NUxUQXVOQ3d4TGpaak1TNHlMRFF1TVN3eExEZ3VPQzB3TGpjc01USXVOMk10TVM0MUxETXVOaTAwTGpVc05pNDVMVGdzT0FvSkNXTXRNaTR6TERBdU55MDBMamNzTUM0MExUWXVNaTB4TGpkakxUSXRNaTQ0TFRFdU1pMDNMamNzTVM0NExURXhMamhqTWk0M0xUTXVOaXcyTGpVdE5TNDVMREV3TGpRdE55NHpZekF1TlMwd0xqSXNNQzQxTFRBdU5Td3dMalF0TUM0NVl5MHdMakl0TUM0MkxUQXVOUzB4TGpVdE1DNDNMVEV1T1FvSkNXTXRNQzQwTFRBdU9TMHhMak10TVM0eExUSXVOaTB4WXkweUxqZ3NNQzR6TFRVdU15d3hMak10Tnk0NExESXVObU10Tmk0MUxETXVOUzA1TGpnc01UQXVNeTB4TVM0ekxERXpMamxqTFRBdU55d3hMamN0TVM0ekxESXVPQzB5TERNdU9HTXRNU3d4TGpNdE1pNHpMREl1TlMwMExqY3NOQzQyQ2drSll5MHdMaklzTUM0eUxUQXVOQ3d3TGpZdE1DNHlMREZqTUM0eUxEQXVOU3d4TGpVc01pNHlMREV1T0N3eUxqUmpNQzQwTERBdU1pd3dMamd0TUM0eExERXRNQzR5WXpFdU55MHhMakVzTXk0MkxUSXVPU3cwTGpZdE5DNHhZekF1TXkwd0xqUXNNQzQzTFRBdU1pd3dMamtzTUM0MENna0pZekF1T1N3ekxqSXNNeTR6TERVdU9TdzJMalVzTjJNMkxESXNNVEl1TWkwd0xqa3NNVFl1T1MwMll6TXRNeTR5TERRdU1TMDFMak1zTlM0eUxUWXVOMk14TGprdE1pNDBMRFV1T0MwM0xqZ3NNVEF1TXkweE1TNHlZekV1TnkweExqTXNNeTQyTFRJdU1pdzBMall0TVM0MkNna0pZekF1T0N3d0xqVXNNUzR4TERFdU55MHdMaklzTkdNdE5DNDJMRGd1TlMweE1TNDFMREU0TGpRdE1USXVOeXd5TUM0NVl5MHdMaklzTUM0MExEQXNNQzQzTERBdU5Dd3dMamRqTWk0MExEQXNOQzQ0TERBc055d3dZekF1TkN3d0xEQXVOUzB3TGpJc01DNDNMVEF1TkFvSkNXTXpMall0TlM0MkxEWXVPUzB4TUM0NUxERXdMalV0TVRZdU5HTXdMakl0TUM0ekxEQXVOQzB3TGpFc01DNDBMREF1TVdNd0xqRXNNUzR6TERBdU5Dd3pMREV1TVN3MExqSmpNUzQwTERJdU1Td3pMak1zTXl3MUxqUXNNMk14TGpjc01Dd3lMall0TUM0eUxEUXVOQzB3TGprS0NRbGpNUzQxTFRBdU5pd3lMamN0TVM0ekxETXVOaTB4TGpsak1DNDFMVEF1TkN3d0xqWXNNQzR6TERBdU5pd3dMak5qTFRBdU9DdzBMalFzTUM0eUxEa3VOeXcwTGpZc01URXVPR00xTGpNc01pNDJMREV4TGpFdE1TNHhMREUwTGpRdE5DNHpZekF1TXkwd0xqTXNNQzQzTFRBdU15d3dMamNzTUM0MENna0pZekF1TVN3eExqTXNNQzQyTERJdU9Dd3hMamNzTXk0NFl6SXVPQ3d5TGpnc09DNDBMREV1Tnl3eE5DNHhMVEl1TjJNekxqWXRNaTQ0TERjdU5DMDJMamdzTVRBdU9DMHhNQzQ1WXpBdU1TMHdMaklzTUM0eUxUQXVOQ3d3TFRBdU4yTXRNQzQxTFRBdU5TMHhMak10TVM0eUxURXVPQzB4TGpjS0NRbGpMVEF1TWkwd0xqSXRNQzQyTFRBdU1TMHdMamdzTUdNdE15NDFMRE11TXkwMkxqY3NOeTR5TFRFeExqSXNNVEF1TTJNdE1TNDFMREV1TVMwMExERXVPUzAxTGpFc01DNDFZeTB3TGpRdE1DNDJMVEF1TkMweExqUXNNQzB5TGpRS0NRbERNakV6TGpVc056Z3VOaXd5TXpRdU5pdzBOaTQwTERJek5TNDNMRFEwTGpWNklFMHlNRGN1T0N3M01TNDFZekFzTUM0eUxEQXVOQ3d3TGpVc01DNDNMREF1Tm1Nd0xqRXNNQ3d3TGpJc01DNHhMREFzTUM0MFl5MHdMamtzTVM0NUxURXVOeXd6TFRJdU9DdzBMamNLQ1FsakxURXNNUzQxTFRJdU1pd3lMamN0TXk0MkxETXVPV010TWk0eExERXVPQzAxTGpFc015NDNMVGN1TlN3eUxqUmpMVEV1TVMwd0xqWXRNUzQyTFRJdU1TMHhMalV0TXk0ell6QXVNUzB6TGpVc01TNDJMVGNzTkM0MExURXdMalZqTXk0MUxUUXVNeXczTGpNdE5pNDFMRGt1T0MwMUxqTUtDUWxqTWk0MkxERXVNaXd4TGpnc05DNHlMREF1Tml3MkxqWkRNakEzTGpnc056RXVNaXd5TURjdU9DdzNNUzR6TERJd055NDRMRGN4TGpWNklpOCtDZ2s4Y0dGMGFDQm1hV3hzUFNKMWNtd29JM0JoZEhSbGNtNHBJaUJrUFNKTk9ESXVOeXc0T1M0NFl5MDNMamtzTUM0eExURTBMamd0TkM0NExURTFMall0TVRNdU1tTXRNQzQwTFRRdU55d3dMamt0T0M0NExETXVOUzB4TWk0eVl6SXVNeTB6TGpFc05pNHpMVFV1Tml3NUxqY3ROaTR5Q2drSll6RXVNUzB3TGpJc01pNDJMVEF1TVN3ekxqSXNNQzQzWXpFc01TNHhMREF1Tnl3eUxqTXRNQzR6TERJdU9HTXRNaTQyTERFdU15MDFMallzTXk0MUxUY3VNaXcyTGpaakxURXVNaXd5TGpVdE1TNDFMRFV1TlN3d0xqUXNPQzQwWXpNdU1pdzBMamdzTVRJc05DNDVMREl3TGpJdE1pNDNDZ2tKWXpJdE1TNDVMRE11T0MwekxqY3NOUzQzTFRVdU9HTXpMall0TkM0eExEUXVPQzAxTGpZc09TNDJMVEV5TGpOak1DNHhMVEF1TVN3d0xqRXRNQzR5TERBdE1DNHlZekF0TUM0eExUQXVNUzB3TGpFdE1DNHlMVEF1TVdNdE15NHlMREF1TVMwMkxERXRPQzQzTERNdU1Rb0pDV010TUM0NExEQXVOaTB4TGprc01DNDFMVEl1TkMwd0xqTmpMVEF1TlMwd0xqZ3RNQzR5TFRJc01DNDNMVEl1Tm1NMExqUXRNeXc1TGpFdE15NDJMREUwTFRRdU5HTXdMREFzTUM0ekxEQXNNQzQyTFRBdU5HTXlMVEl1Tml3ekxqVXROQzQ1TERVdU5pMDNMalVLQ1Fsak1pNHhMVEl1Tml3MExqa3ROU3czTFRZdU9XTXpMVEl1TlN3MExqa3RNeTQwTERZdU9DMDBMalJqTUM0MUxUQXVNeTB3TGpFdE1DNDJMVEF1TWkwd0xqWmpMVEV3TGpndE1pMHlNUzQ1TFRRdU5pMHpNaTQyTFRBdU4yTXROeTQwTERJdU9DMHhNQzQyTERndU5pMDVMakVzTVRJdU5nb0pDV014TGpFc01pNDRMRFF1T0N3ekxqSXNPQzR5TERFdU5tTXlMamd0TVM0MExEVXVOUzB6TGpZc055NHpMVFl1TldNeExURXVOaXd6TGpJdE1DNDBMREl1TVN3eUxqTmpMVE11TVN3M0xqTXRPUzR4TERFekxqSXRNVFl1TkN3eE15NDBZeTAyTGpJc01DNHlMVEV3TGpJdE5DNDBMVEV3TGpJdE1UQUtDUWxqTUMweE1TNHhMREV5TGpRdE1UZ3VOQ3d5TlM0ekxURTVMalZqTVRVdU5pMHhMak1zTXpBdU5Dd3lMamtzTkRVdU9TdzBMamhqTVRFdU9Td3hMalFzTWpNdU15d3hMalVzTXpVdU1pMHhMak5qTVM0MExUQXVNeXd5TGpRc01DNDJMREl1TXl3eVl5MHdMakVzTWk0eExURXVOeXcwTFRVdU5pdzJMaklLQ1FsakxUUXVOU3d5TGpVdE9TNHlMRE11TWkweE5Dd3pMakpqTFRFeExqZ3NNQzR4TFRJeUxqZ3ROQzQxTFRNMExqSXROMk13TERBdU5Td3dMakVzTVM0eExUQXVNeXd4TGpSakxUWXVNeXcwTGpjdE1USXNPUzQwTFRFMUxqZ3NNVFpqTFRBdU1Td3dMakl0TUM0eExEQXVNeXd3TGpJc01DNHpDZ2tKWXpNdU15MHdMaklzTmk0ekxUQXVNeXc1TGpRdE1DNDFZekF1TlN3d0xEQXVOaTB3TGpJc01DNDFMVEF1Tm1NdE1DNHpMVEl1TXl3d0xqUXROQzQ1TERJdU5DMDJMamRqTWk0eExURXVPQ3cwTGpZdE1pNHhMRFl1TXkwd0xqZGpNUzQ1TERFdU5Td3hMamdzTkM0eUxEQXVOeXcyTGpNS0NRbGpMVEV1TVN3eUxqRXRNaTQ1TERNdU1pMDBMallzTXk0M1l6QXNNQzB3TGpRc01DNHhMVEF1TXl3d0xqUmpNQzR4TERBdU5Td3lMalFzTVM0NExESXVOaXd5TGpKak1DNHlMREF1TXl3d0xqRXNNQzQ0TFRBdU15d3hMakpqTFRBdU1pd3dMak10TUM0MkxEQXVOUzB4TGpFc01DNDFDZ2tKWXkwd0xqUXNNQzB3TGpZdE1DNHhMVEV1TWkwd0xqUmpMVEV0TUM0MkxUSXVOQzB4TGpVdE15NHlMVEl1Tm1NdE1DNHpMVEF1TkMwd0xqVXRNQzQwTFRFdU1pMHdMak5qTFRNdU15d3dMakl0T0M0MkxEQXVOeTB4TWk0eExERXVNV010TUM0NUxEQXVNUzB4TERBdU15MHhMaklzTUM0MkNna0pZeTAxTGpZc09TNHpMVEV4TGpjc01Ua3VNeTB4T0M0ekxESTJMakZET1RRdU9DdzROeTQ0TERnNExqa3NPRGt1Tnl3NE1pNDNMRGc1TGpoNklFMHhNell1TlN3ME9DNDBZekF1TVN3d0xqVXNNQzR6TERBdU5pd3dMalVzTUM0MVl6RXVNUzB3TGpJc01pNHpMVEV1TVN3eUxqa3RNaTR4Q2drSll6QXVOaTB3TGprc01DNDVMVEl1TXl3d0xqTXRNaTQ0WXkwd0xqWXRNQzQxTFRFdU5TMHdMak10TWk0eUxEQXVNME14TXpZdU55dzBOUzQxTERFek5pNHpMRFEzTGpJc01UTTJMalVzTkRndU5Fd3hNell1TlN3ME9DNDBJaTgrQ2p3dlp6NEtQQzl6ZG1jK0NnPT0pO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTsgfVxuXG4uYWNjZXNzaWJpbGl0eS1pbmZvIC5jb250ZW50LWJ1Y2tldCBwLnRheC10YWxrIHtcbiAgZm9udC1zaXplOiAxLjVyZW07IH1cblxuLm1haW4tZ2FyYWdlLXNob3AgbGkuY2VsbCBhIHtcbiAgZm9udC1zaXplOiAxLjJ2dztcbiAgcGFkZGluZzogMS4yNXZ3IDIuNXZ3OyB9XG5cbi5idXR0b24uc21hbGwuYWNjLWNhcnQgaW1nIHtcbiAgd2lkdGg6IDV2dzsgfVxuXG4udGFibGUtb24tZGFyayB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDFyZW07IH1cblxuLnRhYmxlLW9uLWRhcmsgbGFiZWwge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi50YWJsZS1vbi1kYXJrIHRoZWFkIHRoLCAudGFibGUtb24tZGFyayB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMXJlbSAwLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMzMzMzMzOyB9XG5cbi50YWJsZS1vbi1kYXJrIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7IH1cblxuLnRhYmxlLW9uLWRhcmsgdGhlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDgyYTQ3OyB9XG5cbi50YWJsZS1vbi1kYXJrIHRoZWFkIHRoIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnRhYmxlLW9uLWRhcmsgdGhlYWQgdGggbGFiZWwge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4udGFibGUtb24tZGFyayAuY2hlY2stY29udGFpbmVyIHtcbiAgbWFyZ2luOiAxcmVtIDAuNXJlbSAxcmVtOyB9XG5cbi50YWJsZS1vbi1kYXJrIGNhcHRpb24ge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4uYmlnZ2VyLXRleHQgcCB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbmEuYnV0dG9uLnNwZWNpYWxsaW5rLmxhcmdlIHtcbiAgcGFkZGluZzogMS4xdncgMnZ3IDEuMXZ3O1xuICBmb250LXNpemU6IDEuMnZ3O1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIGEuYnV0dG9uLnNwZWNpYWxsaW5rLmxhcmdlOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDEuMjV2dzsgfVxuXG4vKiBNZWRpYSBxdWVyaWVzICovXG4vKiBNZWRpdW0gb25seSAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5pbnRyby12aWRlbyB7XG4gICAgaGVpZ2h0OiA4MHZoOyB9XG4gICAgLmludHJvLXZpZGVvIGgxIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTB2aDsgfVxuICAgIC5pbnRyby12aWRlby5jb21tZXJjaWFsLWJhbm5lciB7XG4gICAgICBoZWlnaHQ6IDU1dnc7IH1cbiAgICAgIC5pbnRyby12aWRlby5jb21tZXJjaWFsLWJhbm5lciBoMSB7XG4gICAgICAgIHRvcDogNnZoOyB9XG4gICAgLmludHJvLXZpZGVvLnJlY3JlYXRpb25hbC1iYW5uZXIge1xuICAgICAgaGVpZ2h0OiA1NXZ3OyB9XG4gICAgLmludHJvLXZpZGVvLmFjY2Vzc2liaWxpdHktYmFubmVyIHtcbiAgICAgIGhlaWdodDogNTV2dzsgfVxuICAgICAgLmludHJvLXZpZGVvLmFjY2Vzc2liaWxpdHktYmFubmVyLmRldGFpbC1wYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAzNXZ3OyB9XG4gICAgICAgIC5pbnRyby12aWRlby5hY2Nlc3NpYmlsaXR5LWJhbm5lci5kZXRhaWwtcGFnZSBoMSB7XG4gICAgICAgICAgdG9wOiA2dmg7IH1cbiAgICAuaW50cm8tdmlkZW8uZmxlZXQtYmFubmVyIHtcbiAgICAgIGhlaWdodDogNTV2dzsgfVxuICAgIC5pbnRyby12aWRlby5zdGFydC13aXRoLWJhbm5lciBoMSB7XG4gICAgICB0b3A6IDN2aDsgfVxuICAuaW50ZXJpb3ItcGFnZS5pbnRyby12aWRlbyBoMSB7XG4gICAgdG9wOiA1dmg7IH1cbiAgLmludGVyaW9yLXBhZ2UuaW50cm8tdmlkZW8gLmludHJvLWN0YSB7XG4gICAgYm90dG9tOiAwdmg7IH1cbiAgLmZsZWV0LWJhbm5lciAuYmFubmVyX192aWRlbywgLmNvbW1lcmNpYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvLCAuYWNjZXNzaWJpbGl0eS1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5yZWNyZWF0aW9uYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvIHtcbiAgICB3aWR0aDogMTIwJTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmludHJvLWN0YSB7XG4gICAgYm90dG9tOiA2dmg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICAuaW50cm8tY3RhIC5idXR0b24ge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIGZvbnQtc2l6ZTogMi4wNTN2dztcbiAgICAgIHBhZGRpbmc6IDF2dyAwLjU0MnZ3IDAuNTI1dnc7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgICAuaW50cm8tY3RhIC5idXR0b246YWZ0ZXIge1xuICAgICAgICB3aWR0aDogMTAzJTtcbiAgICAgICAgaGVpZ2h0OiAwLjR2dztcbiAgICAgICAgYm90dG9tOiAtMS41dnc7XG4gICAgICAgIGxlZnQ6IC0wLjZ2dzsgfVxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuODIzdnc7IH1cbiAgICAuYWNjb3JkaW9uLXRpdGxlOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAzLjIxMXZ3O1xuICAgICAgaGVpZ2h0OiAyLjR2dztcbiAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgdG9wOiAwOyB9XG4gIC5wcm9tb3Rpb25hbC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAxcmVtIDAgMDsgfVxuICAucHJvbW8tcm93IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAucHJvbW9fX2JhY2tncm91bmQge1xuICAgIG1pbi13aWR0aDogMTA1JTsgfVxuICAubWVnYS1mb290ZXIge1xuICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgLmtlZXAtdXBkYXRlZCAuYmFja2dyb3VuZC1pbWcgLnByb21vX19iYWNrZ3JvdW5kIHtcbiAgICBtaW4td2lkdGg6IDEzMCU7IH1cbiAgLnNlY29uZGFyeS1jdGEtc2VjdGlvbiAucHJvbW9fX2JhY2tncm91bmQge1xuICAgIG1pbi13aWR0aDogMjAwJTtcbiAgICBsZWZ0OiA5MCU7IH1cbiAgLnNlY29uZGFyeS1jdGEtc2VjdGlvbiAucHJvbW9fX2JhY2tncm91bmQyIHtcbiAgICBtaW4td2lkdGg6IDIwMCU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYnMtdGl0bGUge1xuICAgIHdpZHRoOiAzMyU7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLXRpdGxlID4gYSB7XG4gICAgICBmb250LXNpemU6IDJ2dztcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMC41dnc7IH1cbiAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiBoNCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEuNXZ3IDA7XG4gICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFicy1jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMS43NXZ3OyB9XG4gIC5yZWZlcmVuY2UtZ3VpZGVzIGgxIHtcbiAgICBmb250LXNpemU6IDJyZW07IH1cbiAgICAucmVmZXJlbmNlLWd1aWRlcyBoMSBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAucmVmZXJlbmNlLWd1aWRlcyBoMiB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgLnJlZmVyZW5jZS1ndWlkZXMgaDMge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAuZG93bmxvYWQtY3RhIHtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLmNvbnRhY3QtaW5mbyAuaW5mby1ob2xkZXIgZHQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAuY29udGFjdC1pbmZvIC5pbmZvLWhvbGRlciBkZCB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5jb250YWN0LWluZm8gLmluZm8taG9sZGVyIHAge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICBzZWN0aW9uLmNvbnRhY3QtdXMgLmNoZWNrbWFyayB7XG4gICAgdG9wOiA2cHg7IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzIC5yYWRpby1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogNS4ydnc7IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzIC5yYWRpbyB7XG4gICAgaGVpZ2h0OiAzLjV2dztcbiAgICB3aWR0aDogMy41dnc7IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzIC5yYWRpby1jb250YWluZXIgLnJhZGlvOmFmdGVyIHtcbiAgICB3aWR0aDogMy40dnc7XG4gICAgaGVpZ2h0OiAzLjR2dzsgfVxuICBzZWN0aW9uLmNvbnRhY3QtdXMgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICBzZWN0aW9uLmNvbnRhY3QtdXMgLnJhZGlvLWdyb3VwIHtcbiAgICBwYWRkaW5nOiAycmVtIDAgNHJlbTsgfVxuICAgIHNlY3Rpb24uY29udGFjdC11cyAucmFkaW8tZ3JvdXAgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICBzZWN0aW9uLmNvbnRhY3QtdXMgLnJhZGlvLWdyb3VwIC5yYWRpbyB7XG4gICAgICB0b3A6IDdweDtcbiAgICAgIGhlaWdodDogM3Z3O1xuICAgICAgd2lkdGg6IDN2dzsgfVxuICAucHJvZ3JhbS1zdGVwcyB7XG4gICAgbWFyZ2luOiAycmVtIDA7IH1cbiAgICAucHJvZ3JhbS1zdGVwcyBkdCB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMCAwLjVlbTsgfVxuICAgICAgLnByb2dyYW0tc3RlcHMgZHQ6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogLTFyZW07XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMnJlbTsgfVxuICAgICAgLnByb2dyYW0tc3RlcHMgZHQ6YWZ0ZXIge1xuICAgICAgICByaWdodDogLTFyZW07XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMnJlbTsgfVxuICAgIC5wcm9ncmFtLXN0ZXBzIGRkIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMCAxcmVtIDJyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgZm9udC1zaXplOiAydnc7IH1cbiAgICAgIC5wcm9ncmFtLXN0ZXBzIGRkOmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICAgIHRvcDogLTMzJTtcbiAgICAgICAgaGVpZ2h0OiA2NiU7XG4gICAgICAgIHdpZHRoOiAwLjVyZW07IH1cbiAgICAgIC5wcm9ncmFtLXN0ZXBzIGRkOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgdG9wOiAzMyU7XG4gICAgICAgIGhlaWdodDogNjYlO1xuICAgICAgICB3aWR0aDogMC41cmVtOyB9XG4gIC5pbi1wYWdlLWp1bXAgYTphZnRlciB7XG4gICAgdG9wOiAwLjV2dztcbiAgICB3aWR0aDogMi41dnc7XG4gICAgaGVpZ2h0OiAyLjV2dztcbiAgICBtYXJnaW4tbGVmdDogMXZ3OyB9XG4gIC5maWx0ZXItY29sdW1uICNmaWx0ZXItYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDAuOHZ3OyB9XG4gIC5hbm5vdW5jZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgLmVucm9sbC1yZWFzb25zIGgzIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTsgfVxuICAuYW5ub3VuY2UtbXVnIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAubGFuZGluZyBsZWdlbmQge1xuICAgIGZvbnQtc2l6ZTogMi4ydnc7IH0gfVxuXG4vKiBTbWFsbCBvbmx5ICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLm1vdG9yaG9tZS1oZWFkLWluZm8ge1xuICAgIGNvbG9yOiAjMGMxMjE4O1xuICAgIGZvbnQtc2l6ZTogMy44dncgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA0LjV2dztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBsaW5lYXI7IH1cbiAgLm1vYmlsZS1oZWFkZXItbG9nbyB7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggNTAwbXMgbGluZWFyO1xuICAgIHdpZHRoOiA2NXZ3O1xuICAgIG1heC13aWR0aDogMzQ3cHg7IH1cbiAgLmlzLXN0dWNrIC5tb2JpbGUtaGVhZGVyLWxvZ28ge1xuICAgIHdpZHRoOiA0MHZ3OyB9XG4gIC5uYXYtZGlzZ3Vpc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgbGkuYWRtaW4tbG9naW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7IH1cbiAgaW1nLmFkbWluLWljb24ge1xuICAgIHdpZHRoOiA3dnc7XG4gICAgbWFyZ2luLXRvcDogLTAuNXZ3OyB9XG4gIC5pbnRyby12aWRlby5iYW5uZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KSB1cmwoLi4vaW1nL3ZpZGVvLWJhY2tncm91bmQuanBnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gIC5sYW5kaW5nIGxlZ2VuZCB7XG4gICAgZm9udC1zaXplOiAzLjJ2dzsgfVxuICAuY2hvc2VuLXZlaGljbGUge1xuICAgIHBhZGRpbmc6IDZ2dzsgfVxuICAuaW50cm8tdmlkZW8ge1xuICAgIGhlaWdodDogODB2aDsgfVxuICAgIC5pbnRyby12aWRlbyBoMSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwdmg7IH1cbiAgICAuaW50cm8tdmlkZW8uY29tbWVyY2lhbC1iYW5uZXIge1xuICAgICAgaGVpZ2h0OiA1M3Z3OyB9XG4gICAgICAuaW50cm8tdmlkZW8uY29tbWVyY2lhbC1iYW5uZXIgaDEge1xuICAgICAgICB0b3A6IDZ2aDsgfVxuICAgIC5pbnRyby12aWRlby5yZWNyZWF0aW9uYWwtYmFubmVyIHtcbiAgICAgIGhlaWdodDogOTB2dzsgfVxuICAgIC5pbnRyby12aWRlby5hY2Nlc3NpYmlsaXR5LWJhbm5lciB7XG4gICAgICBoZWlnaHQ6IDkwdnc7IH1cbiAgICAgIC5pbnRyby12aWRlby5hY2Nlc3NpYmlsaXR5LWJhbm5lci5kZXRhaWwtcGFnZSB7XG4gICAgICAgIGhlaWdodDogNDl2dzsgfVxuICAgICAgICAuaW50cm8tdmlkZW8uYWNjZXNzaWJpbGl0eS1iYW5uZXIuZGV0YWlsLXBhZ2UgaDEge1xuICAgICAgICAgIHRvcDogNnZoOyB9XG4gICAgLmludHJvLXZpZGVvLmZsZWV0LWJhbm5lciB7XG4gICAgICBoZWlnaHQ6IDkwdnc7IH1cbiAgICAuaW50cm8tdmlkZW8uc3RhcnQtd2l0aC1iYW5uZXIgaDEge1xuICAgICAgdG9wOiAwdmg7IH1cbiAgLmZsZWV0LWJhbm5lciAuYmFubmVyX192aWRlbywgLmNvbW1lcmNpYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvLCAuYWNjZXNzaWJpbGl0eS1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5yZWNyZWF0aW9uYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvIHtcbiAgICB3aWR0aDogMTY4JTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmZsZWV0LWJhbm5lciAuYmFubmVyX192aWRlbyB7XG4gICAgd2lkdGg6IDIwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMjAwJTsgfVxuICAuYWxsLWluY2VudGl2ZS12aWRlbyB7XG4gICAgaGVpZ2h0OiA1Mi41dnc7IH1cbiAgLnRvcC1iYXIgLm1lbnUgbGkge1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZmZmZmZmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwIDF2dztcbiAgICBmb250LXNpemU6IDYuMjZ2dzsgfVxuICBuYXYgLm1lbnUgYSwgbmF2IC5tZW51IC5idXR0b24ge1xuICAgIHBhZGRpbmc6IDEuN3Z3IDF2dzsgfVxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgfVxuICAuZm9vdGVyLWxvZ28gaW1nIHtcbiAgICB3aWR0aDogNDB2dzsgfVxuICBoMSB7XG4gICAgZm9udC1zaXplOiA4LjIxMDV2dztcbiAgICBsaW5lLWhlaWdodDogMC43O1xuICAgIHBhZGRpbmc6IDR2dyA0dnc7IH1cbiAgICBoMSBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogNC41Nzg5dnc7IH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogNC4ydnc7IH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogNi41dnc7IH1cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogNi4xdnc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW46IDYuNjh2dyAwIDAgMy4xdnc7XG4gICAgcGFkZGluZzogMS4xdnc7IH1cbiAgLnJlY3JlYXRpb25hbC10aWxlIGg0OmJlZm9yZSB7XG4gICAgdG9wOiAtNS43NXZ3O1xuICAgIHdpZHRoOiAyM3Z3O1xuICAgIGhlaWdodDogNnZ3OyB9XG4gIC5pbnRyby1jdGEgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBmb250LXNpemU6IDQuMDUzdnc7XG4gICAgcGFkZGluZzogMnZ3IDAuNTQydncgMS41MjV2dzsgfVxuICAgIC5pbnRyby1jdGEgLmJ1dHRvbjphZnRlciB7XG4gICAgICB3aWR0aDogMTAxLjQlO1xuICAgICAgaGVpZ2h0OiAwLjh2dztcbiAgICAgIGJvdHRvbTogLTMuNXZ3O1xuICAgICAgbGVmdDogLTAuNnZ3OyB9XG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy44MjN2dzsgfVxuICAgIC5hY2NvcmRpb24tdGl0bGU6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDMuNXZ3ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDMuNHZ3ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgIHRvcDogMDsgfVxuICAudGFicy10aXRsZSB7XG4gICAgcGFkZGluZzogMC41cmVtOyB9XG4gIC50YWJzLXRpdGxlID4gYSB7XG4gICAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAua2VlcC11cGRhdGVkIGxhYmVsLCAuaW50cm8tY3RhIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDIuNHZ3OyB9XG4gIC5rZWVwLXVwZGF0ZWQgbGVnZW5kIHtcbiAgICBmb250LXNpemU6IDMuNXZ3OyB9XG4gIC5jaGVja21hcmsge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMy41dnc7XG4gICAgd2lkdGg6IDMuNXZ3OyB9XG4gIC5jaGVjay1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogNS4ydnc7IH1cbiAgLmNoZWNrLWNvbnRhaW5lciAuY2hlY2ttYXJrOmFmdGVyIHtcbiAgICBsZWZ0OiAxdnc7XG4gICAgd2lkdGg6IDEuMnZ3O1xuICAgIGhlaWdodDogMi42dnc7IH1cbiAgc2VjdGlvbjpub3QoLmJhbm5lcikgLmJ1dHRvbi5sYXJnZSwgc2VjdGlvbi5iYW5uZXIgLnNwZWNpYWwtaG9tZS1hbm5vdW5jZSAuYnV0dG9uLmxhcmdlIHtcbiAgICBwYWRkaW5nOiAyLjN2dyA0dncgMi41dnc7XG4gICAgZm9udC1zaXplOiAzLjh2dzsgfVxuICAgIHNlY3Rpb246bm90KC5iYW5uZXIpIC5idXR0b24ubGFyZ2U6YWZ0ZXIsIHNlY3Rpb24uYmFubmVyIC5zcGVjaWFsLWhvbWUtYW5ub3VuY2UgLmJ1dHRvbi5sYXJnZTphZnRlciB7XG4gICAgICB3aWR0aDogMnZ3O1xuICAgICAgaGVpZ2h0OiA0dnc7XG4gICAgICBsZWZ0OiAydnc7XG4gICAgICB0b3A6IDAuNnZ3OyB9XG4gICAgc2VjdGlvbjpub3QoLmJhbm5lcikgLmJ1dHRvbi5sYXJnZS5kb3dubG9hZDphZnRlciwgc2VjdGlvbi5iYW5uZXIgLnNwZWNpYWwtaG9tZS1hbm5vdW5jZSAuYnV0dG9uLmxhcmdlLmRvd25sb2FkOmFmdGVyIHtcbiAgICAgIHdpZHRoOiA0dnc7IH1cbiAgc2VjdGlvbjpub3QoLmJhbm5lcikgaW5wdXQuYnV0dG9uLmxhcmdlLCBpbnB1dC5idXR0b24ubGFyZ2Uge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMnZ3IDR2dztcbiAgICBwYWRkaW5nOiAyLjV2dyA3dncgMi41dncgNHZ3OyB9XG4gIC5sb2NhdGUtdXBmaXR0ZXIgcCB7XG4gICAgZm9udC1zaXplOiAzLjV2dzsgfVxuICAuc2VhcmNoLXVwZml0cyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIGhlaWdodDogMjV2aDsgfVxuICAucHJvbW8tcm93IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAucHJvbW8tdGlsZSB7XG4gICAgaGVpZ2h0OiA1NHZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLm1lZGl1bS0zLnByb21vLXRpbGUge1xuICAgIGhlaWdodDogMTA4dnc7IH1cbiAgLnByb21vLXRpbGUyIHtcbiAgICBoZWlnaHQ6IDQ1dnc7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gIC5wcm9tby1jdGEge1xuICAgIHBhZGRpbmc6IDAuMXZ3IDJ2dyAwLjN2dyAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGZvbnQtc2l6ZTogMy4ydnc7IH1cbiAgICAucHJvbW8tY3RhIHNwYW46YWZ0ZXIge1xuICAgICAgdG9wOiAxLjV2dztcbiAgICAgIHdpZHRoOiA1dnc7XG4gICAgICBoZWlnaHQ6IDV2dztcbiAgICAgIG1hcmdpbi1sZWZ0OiAzdnc7IH1cbiAgLm1lZ2EtZm9vdGVyIHVsLnZlcnRpY2FsLm1lbnUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07IH1cbiAgLmNvcHlyaWdodCAubWVudSBsaSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmJ1dHRvbi5wbGF5LXBhdXNlIHtcbiAgICB3aWR0aDogOXZ3O1xuICAgIGhlaWdodDogOXZ3O1xuICAgIHRvcDogMC40dnc7XG4gICAgcmlnaHQ6IDAuNHZ3OyB9XG4gIC5pbnRlcmlvci1wYWdlLmludHJvLXZpZGVvIGgxIHtcbiAgICB0b3A6IDN2aDsgfVxuICAuaW50cm8tdmlkZW8gLmludHJvLWN0YSB7XG4gICAgYm90dG9tOiAwdmg7IH1cbiAgLmludGVyaW9yLXBhZ2UgaDEge1xuICAgIGZvbnQtc2l6ZTogNC4yMTA1dnc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW4tbGVmdDogMXZ3OyB9XG4gIC5iYW5uZXItdGFnIGgyIHtcbiAgICBmb250LXNpemU6IDQuNXZ3OyB9XG4gIC5pbnRyby12aWRlby5jb21tZXJjaWFsLWJhbm5lciA+IC5jZWxsIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEuNXZ3IDg1JTsgfVxuICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLXRpdGxlIHtcbiAgICB3aWR0aDogNDglICFpbXBvcnRhbnQ7IH1cbiAgICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLXRpdGxlID4gYSB7XG4gICAgICBmb250LXNpemU6IDIuNXZ3OyB9XG4gIC5iZXN0LWluLWNsYXNzIGxpLmJpYy1lbGVtZW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgIHBhZGRpbmc6IDFyZW0gMnZ3O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogNHZ3O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5lcXVhdGlvbiAuZXEtZWxlbWVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMnZ3O1xuICAgIGxpbmUtaGVpZ2h0OiAyOyB9XG4gICAgLmVxdWF0aW9uIC5lcS1lbGVtZW50IHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDZ2dztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5nYXJhZ2UtY3RhIHAge1xuICAgIGZvbnQtc2l6ZTogNC4zdnc7XG4gICAgcGFkZGluZzogMXJlbSA0dncgMDsgfVxuICAuZGVhbGVyLWZvcm0tcmVzcG9uc2Uge1xuICAgIGZvbnQtc2l6ZTogNXZ3O1xuICAgIHBhZGRpbmc6IDZ2dyAwOyB9XG4gIC5nYXJhZ2UgLnNlbmQtdG8tZGVhbGVyIC5kZWFsZXItc2VhcmNoLWNhbGwgLmNoZWNrbWFyayB7XG4gICAgaGVpZ2h0OiA1LjV2dztcbiAgICB3aWR0aDogNS41dnc7IH1cbiAgLmdhcmFnZSAuc2VuZC10by1kZWFsZXIgLmRlYWxlci1zZWFyY2gtY2FsbCAuY2hlY2stY29udGFpbmVyIC5jaGVja21hcms6YWZ0ZXIge1xuICAgIGxlZnQ6IDEuNHZ3O1xuICAgIHdpZHRoOiAyLjZ2dztcbiAgICBoZWlnaHQ6IDQuMnZ3OyB9XG4gIC5jYWxscy10by1hY3Rpb24ge1xuICAgIHBhZGRpbmc6IDFyZW0gMDsgfVxuICAuc2Vjb25kYXJ5LWN0YS1zZWN0aW9uIC5wcm9tb19fYmFja2dyb3VuZCB7XG4gICAgbWluLXdpZHRoOiAzNTAlO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLnNlY29uZGFyeS1jdGEtc2VjdGlvbiAucHJvbW9fX2JhY2tncm91bmQyIHtcbiAgICBtaW4td2lkdGg6IDM1MCU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYnMtY29udGVudCAudXBmaXQtc2xpY2Uge1xuICAgIGJvcmRlci13aWR0aDogMDsgfVxuICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiA0NXZ3O1xuICAgIG1hcmdpbjogMCAtMXJlbTtcbiAgICBib3JkZXItYm90dG9tOiA4cHggc29saWQgI2ZhYjQxODsgfVxuICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC5jb250ZW50LWJ1Y2tldCB7XG4gICAgcGFkZGluZzogMXJlbSAwIDA7IH1cbiAgLnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFiLWdhbGxlcnktaGVybyBwIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBwYWRkaW5nOiAxdncgNXZ3OyB9XG4gIC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYi1nYWxsZXJ5LWhlcm8gcDpiZWZvcmUge1xuICAgIHdpZHRoOiA0dnc7XG4gICAgaGVpZ2h0OiA0Ljg1MnZ3O1xuICAgIG1hcmdpbi1sZWZ0OiAtNC4xdnc7XG4gICAgdG9wOiAwLjR2dzsgfVxuICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvIC5nYWxsZXJ5LWN0YSB7XG4gICAgcGFkZGluZzogMC4xdncgMXZ3IDAuM3Z3IDA7XG4gICAgZm9udC1zaXplOiAyLjJ2dzsgfVxuICAudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIHAuY29tbWVyY2lhbC1jdXAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZm9udC1zaXplOiA0dnc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICB0b3A6IDMwdmg7XG4gICAgbWFyZ2luLWxlZnQ6IDR2dzsgfVxuICAgIHAuY29tbWVyY2lhbC1jdXAgaW1nIHtcbiAgICAgIHRvcDogLTE1dmg7XG4gICAgICBsZWZ0OiAxMXZ3O1xuICAgICAgd2lkdGg6IDE0dnc7IH1cbiAgLnJlZmVyZW5jZS1ndWlkZXMgaDEge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICAgIC5yZWZlcmVuY2UtZ3VpZGVzIGgxIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07IH1cbiAgLnJlZmVyZW5jZS1ndWlkZXMgaDIge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gIC5yZWZlcmVuY2UtZ3VpZGVzIGgzIHtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLmRvd25sb2FkLWN0YSB7XG4gICAgZm9udC1zaXplOiAzLjJ2dzsgfVxuICAgIC5kb3dubG9hZC1jdGEgc3BhbiB7XG4gICAgICBsaW5lLWhlaWdodDogMThweDsgfVxuICAgICAgLmRvd25sb2FkLWN0YSBzcGFuOmFmdGVyIHtcbiAgICAgICAgdG9wOiAwdnc7XG4gICAgICAgIHdpZHRoOiA0dnc7XG4gICAgICAgIGhlaWdodDogMnZ3O1xuICAgICAgICBtYXJnaW4tbGVmdDogMnZ3OyB9XG4gIC5vZmZzaXRlLWN0YSB7XG4gICAgZm9udC1zaXplOiAzLjJ2dzsgfVxuICAgIC5vZmZzaXRlLWN0YSBzcGFuIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4OyB9XG4gICAgICAub2Zmc2l0ZS1jdGEgc3BhbjphZnRlciB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDN2dztcbiAgICAgICAgaGVpZ2h0OiAzdnc7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAydnc7IH1cbiAgLmFsbC1lcXVhdGlvbiAuZXEtZWxlbWVudCB7XG4gICAgZm9udC1zaXplOiAydnc7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICAuYWxsLWVxdWF0aW9uIC5lcS1lbGVtZW50IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogNC41dnc7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmFsbC1lcXVhdGlvbiAuZXEtb3BlcmF0b3I6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogMy41dnc7XG4gICAgdG9wOiAtMy41dnc7IH1cbiAgLmFsbC1lcXVhdGlvbiAuZXEtb3BlcmF0b3Iub3I6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogMi4yNXZ3O1xuICAgIHRvcDogLTMuNzV2dzsgfVxuICAuYWxsLWluY2VudGl2ZS1tYXRoIGgzIHtcbiAgICBmb250LXNpemU6IDMuMjV2dzsgfVxuICBzZWN0aW9uLmNvbnRhY3QtdXMgLmNoZWNrbWFyayB7XG4gICAgdG9wOiA2cHg7IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzIC5yYWRpby1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMTAuMnZ3OyB9XG4gIHNlY3Rpb24uY29udGFjdC11cyAucmFkaW8ge1xuICAgIGhlaWdodDogNi41dnc7XG4gICAgd2lkdGg6IDYuNXZ3OyB9XG4gIHNlY3Rpb24uY29udGFjdC11cyAucmFkaW8tY29udGFpbmVyIC5yYWRpbzphZnRlciB7XG4gICAgd2lkdGg6IDYuNHZ3O1xuICAgIGhlaWdodDogNi40dnc7IH1cbiAgc2VjdGlvbi5jb250YWN0LXVzIGgxIHtcbiAgICBmb250LXNpemU6IDYuMjEwNXZ3OyB9XG4gIHNlY3Rpb24uY29udGFjdC11cyBoMiB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIHNlY3Rpb24uY29udGFjdC11cyAucmFkaW8tZ3JvdXAge1xuICAgIHBhZGRpbmc6IDJyZW0gMCA0cmVtOyB9XG4gICAgc2VjdGlvbi5jb250YWN0LXVzIC5yYWRpby1ncm91cCBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgIHNlY3Rpb24uY29udGFjdC11cyAucmFkaW8tZ3JvdXAgLnJhZGlvIHtcbiAgICAgIHRvcDogMTRweDtcbiAgICAgIGhlaWdodDogNnZ3O1xuICAgICAgd2lkdGg6IDZ2dzsgfVxuICAuYWNjZXNzaWJpbGl0eS1pbmZvIC50YWJzLXRpdGxlIHtcbiAgICB3aWR0aDogNDglOyB9XG4gICAgLmFjY2Vzc2liaWxpdHktaW5mbyAudGFicy10aXRsZSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogNHZ3OyB9XG4gIHNlY3Rpb24uY29udGFjdC11cyAuY29udGFjdC1yZXN1bHRzIC5pbnRyby1jdGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHJlbSAtIDEuMjVyZW0pOyB9XG4gIHNlY3Rpb24uY29udGFjdC11cyAuY29udGFjdC1yZXN1bHRzIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLnJlaW1idXJzZW1lbnQtc3RlcHMgLnByb21vX19iYWNrZ3JvdW5kIHtcbiAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiAxMDElO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgei1pbmRleDogMTsgfVxuICAucHJvZ3JhbS1zdGVwcyBkZCB7XG4gICAgcGFkZGluZzogMXJlbSAwIDFyZW0gMnJlbTtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgIGZvbnQtc2l6ZTogNC41dnc7IH1cbiAgLmluLXBhZ2UtanVtcCBhOmFmdGVyIHtcbiAgICB0b3A6IDAuNXZ3O1xuICAgIHdpZHRoOiAzLjV2dztcbiAgICBoZWlnaHQ6IDMuNXZ3O1xuICAgIG1hcmdpbi1sZWZ0OiAxdnc7IH1cbiAgLmNvbnRhY3QtaW5mbyBoMiB7XG4gICAgZm9udC1zaXplOiA0LjJ2dzsgfVxuICAuY2VydGlmeS1zdGVwcyBoMyB7XG4gICAgZm9udC1zaXplOiA0dnc7IH1cbiAgLmdhcmFnZSBoMSB7XG4gICAgZm9udC1zaXplOiA0Ljh2dzsgfVxuICAuZ2FyYWdlIGgyIHtcbiAgICBmb250LXNpemU6IDQuNzV2dzsgfVxuICAuZ2FyYWdlIC5zZW5kLXRvLWRlYWxlciBoMyB7XG4gICAgZm9udC1zaXplOiA0LjV2dzsgfVxuICAuZ2FyYWdlIC5zZW5kLXRvLWRlYWxlciB7XG4gICAgcGFkZGluZzogMnJlbTsgfVxuICAuaW50cm8tdmlkZW8uZ2FyYWdlLWJhbm5lciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZ2FyYWdlIC5maWx0ZXItY29udGFpbmVyIC5yYWRpby1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogNi4ydnc7IH1cbiAgLmdhcmFnZSAuY2VsbC5tYWluLWdhcmFnZS1zaG9wIC5nYXJhZ2Utc2hvcC1pdGVtLnBvcG91dCB7XG4gICAgd2lkdGg6IDExMCU7XG4gICAgbGVmdDogLTUlOyB9XG4gIC5yYWRpbyB7XG4gICAgaGVpZ2h0OiA0LjV2dztcbiAgICB3aWR0aDogNC41dnc7IH1cbiAgLnJhZGlvLWNvbnRhaW5lciAucmFkaW86YWZ0ZXIge1xuICAgIHdpZHRoOiA0dnc7XG4gICAgaGVpZ2h0OiA0dnc7IH1cbiAgYXNpZGUuY2VsbC5tZWRpdW0tNC5sYXJnZS0zLnByb2dyYW0taW50cm8sIC5hc2lkZS5jZWxsLm1lZGl1bS00LmxhcmdlLTMucHJvZ3JhbS1pbnRybyB7XG4gICAgcGFkZGluZzogMnJlbTsgfVxuICAuZmlsdGVyLWNvbHVtbiB7XG4gICAgd2lkdGg6IDA7XG4gICAgbGVmdDogLTJyZW07IH1cbiAgLmZpbHRlci1jb2x1bW4uZmlsdGVyLWFjdGl2ZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7IH1cbiAgLm1vYmlsZS1sb2NhdG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgIHBhZGRpbmctdG9wOiAxcmVtOyB9XG4gIC5tb2JpbGUtbG9jYXRvciAuc2VhcmNoLWxvY2F0aW9uIHtcbiAgICB3aWR0aDogN3Z3OyB9XG4gIGJ1dHRvbi5idXR0b24uY2xlYXIge1xuICAgIHBhZGRpbmctdG9wOiAuM2VtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTsgfVxuICAuZmluZC11cGZpdHRlciAuYWNjb3JkaW9uLmZpbHRlciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDUuNXZ3OyB9XG4gIC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIC5maWx0ZXJzZWN0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDkuMnZ3O1xuICAgIG1hcmdpbjogMC41cmVtIDA7XG4gICAgZm9udC1zaXplOiA0dnc7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmZpbHRlci1jb250YWluZXIgLm1vcmUtYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDUuNXZ3O1xuICAgIHdpZHRoOiA1LjV2dzsgfVxuICAuZmluZC11cGZpdHRlciAuZmlsdGVyLWNvbnRhaW5lciAubW9yZS1idXR0b246YmVmb3JlIHtcbiAgICBoZWlnaHQ6IDR2dztcbiAgICBsZWZ0OiAyLjR2dztcbiAgICB0b3A6IDAuN3Z3OyB9XG4gIC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIC5tb3JlLWJ1dHRvbjphZnRlciB7XG4gICAgaGVpZ2h0OiA0dnc7XG4gICAgbGVmdDogMi40dnc7XG4gICAgdG9wOiAwLjd2dzsgfVxuICAuZmluZC11cGZpdHRlciAuY2hlY2stY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYuMnZ3O1xuICAgIG1hcmdpbjogMC41cmVtIDA7XG4gICAgZm9udC1zaXplOiAzLjV2dztcbiAgICBsaW5lLWhlaWdodDogMS4xOyB9XG4gIC5maW5kLXVwZml0dGVyIC5hc2lkZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzd2dyk7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNTA7IH1cbiAgLmFjY29yZGlvbi5maWx0ZXIgLmFjY29yZGlvbi10aXRsZTphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCBwIHtcbiAgICBmb250LXNpemU6IDR2dztcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDMuODV2dztcbiAgICBwYWRkaW5nOiAxLjY1dncgMi41dncgMS41dncgMi41dnc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCAub2Zmc2l0ZS1jdGEge1xuICAgIGJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAxLjY1dncgNi40dncgMS41dncgMS41dnc7XG4gICAgZm9udC1zaXplOiAzLjg1dnc7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmxvY2F0aW9uLWxpc3QgLmNhcmQgLm9mZnNpdGUtY3RhOmFmdGVyIHtcbiAgICB3aWR0aDogNHZ3O1xuICAgIGhlaWdodDogN3Z3O1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDsgfVxuICAuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA0ODtcbiAgICBib3R0b206IDA7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmNhcmQtc3VtbWFyeSAucGFnaW5hdGlvbiBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjA2MjVyZW07XG4gICAgZm9udC1zaXplOiA1dnc7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgLmNhcmQtc3VtbWFyeSAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgcGFkZGluZzogMCAwLjEyNXJlbTtcbiAgICBtYXJnaW46IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBmb250LXNpemU6IDV2dzsgfVxuICAjYm94IHtcbiAgICBoZWlnaHQ6IDQ1dnc7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC1oZWlnaHQ6IDgwdmg7XG4gICAgbWluLWhlaWdodDogMi4zcmVtOyB9XG4gICNoYW5kbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDc1YjY7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyLjNyZW07XG4gICAgYm9yZGVyOiB3aGl0ZSBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFyZW0gNDB2dztcbiAgICBjdXJzb3I6IHNlLXJlc2l6ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7IH1cbiAgI2dob3N0YmFyIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGN1cnNvcjogcm93LXJlc2l6ZTtcbiAgICB6LWluZGV4OiA5OTk7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgI21hcC1jb250YWluZXIge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDUuMjk2ODk5NjMyMTU5NzV2dyk7IH1cbiAgLmZpbmQtdXBmaXR0ZXIgI21hcCB7XG4gICAgaGVpZ2h0OiA2MXZoO1xuICAgIG1heC1oZWlnaHQ6IDgwdmg7XG4gICAgbWluLWhlaWdodDogMi4zcmVtOyB9XG4gIC5maW5kLXVwZml0dGVyIC5wcmltYXJ5LWluZm8uZGFyay1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzcmVtIDJyZW07IH1cbiAgLmNhbGxvdXQudXBmaXR0ZXItZGV0YWlsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAzMS4yOTY5dncpOyB9XG4gIC5maW5kLXVwZml0dGVyIC51cGZpdHRlci10aHVtYiB7XG4gICAgd2lkdGg6IGNhbGMoNTIuNXZ3IC0gMnJlbSk7XG4gICAgaGVpZ2h0OiBjYWxjKDUyLjV2dyAtIDJyZW0pOyB9XG4gIC5zcGVjaWFsLWFubm91bmNlIHtcbiAgICBmb250LXNpemU6IDR2dzsgfVxuICAuYWNjLWNhcnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bzsgfVxuICAubWFpbi1nYXJhZ2Utc2hvcCBsaS5jZWxsIGEge1xuICAgIGZvbnQtc2l6ZTogMi40dnc7XG4gICAgcGFkZGluZzogMi4yNXZ3IDMuNXZ3OyB9XG4gIC5idXR0b24uc21hbGwuYWNjLWNhcnQgaW1nIHtcbiAgICB3aWR0aDogMTB2dzsgfVxuICAuYWNjZXNzaWJpbGl0eS1pbmZvLnZpZGVvLXN0b3J5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDFyZW0gMDsgfVxuICAuYWNjZXNzaWJpbGl0eS1pbmZvIC5iYWNrZ3JvdW5kLWltZy52aWRlby1zdG9yeS12aWRlbyB7XG4gICAgaGVpZ2h0OiA2NnZ3OyB9XG4gIC5hY2Nlc3NpYmlsaXR5LWluZm8gLmNvbnRlbnQtYnVja2V0IHAsIC5hY2Nlc3NpYmlsaXR5LWluZm8gLmNvbnRlbnQtYnVja2V0IHVsIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAudGVsZW1hdGljcyAucHJvZ3JhbS1pbnRybyBwLCAudGVsZW1hdGljcyAuYmlnZ2VyLXRleHQgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5zcGxpdGhlcm8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zcGxpdGhlcm8xIHtcbiAgICBoZWlnaHQ6IDU4dnc7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIC5zcGxpdGhlcm8xIC5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDU4Ljc1JTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0b3A6IDA7IH1cbiAgLmJvdHRvbS1idXR0b24ge1xuICAgIHRvcDogNzklOyB9XG4gIC5ib3R0b20tYnV0dG9uMiB7XG4gICAgdG9wOiA4NSU7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDh2dyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuY3ZzLWhvbWUtbG9nbyB7XG4gICAgd2lkdGg6IDQydnc7XG4gICAgbWFyZ2luLXRvcDogMnZ3OyB9XG4gIC5zcGxpdGhlcm8xIGgyIHtcbiAgICBsZWZ0OiAyOC43NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbC5kYXJraW1hZ2ViYWNrIHtcbiAgICBwYWRkaW5nOiAzdncgNHZ3IDA7IH1cbiAgLmZvcmRmbGVldGxpdmUgaDMge1xuICAgIGZvbnQtc2l6ZTogNXZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDIuNzV2dzsgfVxuICAuZm9yZGZsZWV0bGl2ZSBwIHtcbiAgICBmb250LXNpemU6IDIuOHZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDIuNzV2dzsgfVxuICAuZmZsLWluZm9ncmFwaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA5MCU7IH0gfVxuXG4vKiBOZXcgU3R5bGVzIC0gTm92ZW1iZXIgMTUgUmVjcmVhdGlvbmFsICovXG4uaGVhZGxpbmUtcmVjIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjMGMxMjE4OyB9XG5cbi5oZWFkbGluZS1hY2Nlc3Mge1xuICBjb2xvcjogIzBjMTIxODtcbiAgZm9udC1zaXplOiAyOHB4OyB9XG5cbi5zaGVycm9kLXNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwNjc4YmM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAydnc7IH1cblxuLndvbmRlci1zZWxlY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMi41dnc7IH1cblxuLnZlaGljbGUtbW90b3Job21lLXRpdGxlIHtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLm1vdG9yaG9tZS1oZWFkLWluZm8ge1xuICBjb2xvcjogIzBjMTIxODtcbiAgZm9udC1zaXplOiAxLjd2dztcbiAgcGFkZGluZzogMS42dnc7IH1cblxuLm1vdG9yLXNlY3Rpb24tbGluZSB7XG4gIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjMDU1MzYwICFpbXBvcnRhbnQ7IH1cblxuLmFjY2Vzcy1zZWN0aW9uLWxpbmUge1xuICBib3JkZXItYm90dG9tOiA4cHggc29saWQgIzA2NzhiYyAhaW1wb3J0YW50OyB9XG5cbi5zZWxlY3Rpb24tZG93biB7XG4gIG1hcmdpbi1ib3R0b206IDBweDsgfVxuXG4uc2VsZWN0aW9uLW1vdG9yLXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA2NzhiYztcbiAgcGFkZGluZy10b3A6IDUwcHg7IH1cblxuLnZlaC1tb3Rvci10aXRsZSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDEuOHZ3O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnZlaC1tb3Rvci10aXRsZS1maXJzdCB7XG4gIGNvbG9yOiAjMDY3OGJjO1xuICBmb250LXNpemU6IDEuOHZ3O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnN3di1wYWQge1xuICBib3JkZXItYm90dG9tOiAxcmVtIHNvbGlkICNmZmZmZmY7IH1cblxuLnNlbGVjdC12ZWhpY2xlLWNvbnRlbnQge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyLWJvdHRvbTogMXJlbSBzb2xpZCAjZmZmZmZmO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRncmV5OyB9XG4gIC5zZWxlY3QtdmVoaWNsZS1jb250ZW50Lm9mZiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4udmVoaWNsZS1pbmZvLXdyYXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBoZWlnaHQ6IDYxNXB4O1xuICB3aWR0aDogMzQwcHg7XG4gIGJveC1zaGFkb3c6IDAuNnB4IDAuNnB4IDAuNnB4IDAuNnB4IGxpZ2h0Z3JleTtcbiAgYm9yZGVyLXJhZGl1czogNHB4IDRweDsgfVxuXG4uc2VsZWN0LWhlcm8tdG9wLWNvbSB7XG4gIGJvcmRlci1ib3R0b206IDlweCBzb2xpZCAjMDA3NWI2OyB9XG5cbi5zZWxlY3QtaGVyby10b3AtZmxlZXQge1xuICBib3JkZXItYm90dG9tOiA5cHggc29saWQgIzAwNzViNjsgfVxuXG4uc2VsZWN0LWhlcm8tdG9wLXJlYyB7XG4gIGJvcmRlci1ib3R0b206IDlweCBzb2xpZCAjMDA3NWI2OyB9XG5cbi5zZWxlY3QtaGVyby10b3AtYWNjZXNzIHtcbiAgYm9yZGVyLWJvdHRvbTogOXB4IHNvbGlkICMwMDc1YjY7IH1cblxuLnNlbGVjdC10ZXh0LXdyYXAge1xuICBjb2xvcjogIzA2NzhiYztcbiAgZm9udC1zaXplOiAyMnB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi5zZWxlY3QtdGV4dC13cmFwLWNvbiB7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyOHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuICBsaW5lLWhlaWdodDogMjhweDsgfVxuXG4ucHJvZ3JhbS1jdGEtYnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA2NzhiYztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgd2lkdGg6IDI0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDEuNXZoO1xuICBtYXJnaW4tbGVmdDogNTBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYnV0dG9uLWNhcmV0LXNtYWxsLnBuZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDk0JTtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzA2NzhCQzsgfVxuXG4ucHJvZ3JhbS1jdGEtYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzA2NzhCQztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzA2NzhCQztcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB3aWR0aDogMjQwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMS41dmg7XG4gIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICBmbG9hdDogbGVmdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9idXR0b24tY2FyZXQtYmx1ZS1zbWFsbC5wbmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NCU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLmFjY2Vzcy10b3Age1xuICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRncmV5O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogNDJweDtcbiAgcGFkZGluZy1ib3R0b206IDQycHg7IH1cblxuLnZlaGljbGVzLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDgwcHg7IH1cblxuLyogTmV3IFN0eWxlcyAtIFdlZG5lc2RheSBOb3YgMjFzdCAqL1xuLmVtYWlsLXRhZyB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uYWNjZXNzLWluZm9ybWVkIHtcbiAgY29sb3I6ICMwNjc4YmM7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgcGFkZGluZy10b3A6IDMwcHg7IH1cblxuLmZhcXMtYmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLmhlYWRsaW5lLWZhcXMge1xuICBjb2xvcjogYmxhY2s7IH1cblxuLmZhcXMtYm9yZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuICAuZmFxcy1ib3JkZXI6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgY29udGVudDogJysnO1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgcGFkZGluZzogMC4xNXJlbSAwIDAgMC4zNXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjMDA3NWI2O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7IH1cbiAgLmZhcXMtYm9yZGVyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb250ZW50LWJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMwNjc4QkMgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG5cbi5oZWFkLWFjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwNjc4QkM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXdlaWdodDogYm9sZGVyO1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4ubGlnaHQtYmFja2dyb3VuZCBoMyB7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5ibHVlLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDgyYTQ3OyB9XG5cbi5kYXJrZ3JheS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMzsgfVxuICAuZGFya2dyYXktYmFja2dyb3VuZCBwIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ud2hpdGUge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAud2hpdGU6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5wYWRkZWQtYnVja2V0IHtcbiAgcGFkZGluZzogMnJlbTsgfVxuXG4ucGFkLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLmRhcmtncmF5LWJhY2tncm91bmQgbGkuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQsIC5kYXJrZ3JheS1iYWNrZ3JvdW5kIGxpLmFjY29yZGlvbi1pdGVtID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3Atd2lkdGg6IDBweDtcbiAgYmFja2dyb3VuZDogIzMzMzMzMzsgfVxuXG4uZGFya2dyYXktYmFja2dyb3VuZCBsYWJlbCB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi53c2wtYnVja2V0IHtcbiAgbWFyZ2luLXRvcDogMTAlOyB9XG5cbi5nYXJhZ2UgLnNlbmQtdG8tZGVhbGVyIC5kZWFsZXItc2VhcmNoLWNhbGwgZGl2LmNoZWNrLWNvbnRhaW5lciB7XG4gIGN1cnNvcjogYXV0bzsgfVxuXG4vKiBFeHRyYSBTbWFsbCBvbmx5ICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyMy43NWVtKSB7XG4gIC5rZWVwLXVwZGF0ZWQgLmNoZWNrLWNvbnRhaW5lciB7XG4gICAgZm9udC1zaXplOiAzLjV2dyAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogNi4ydnc7XG4gICAgbWFyZ2luOiAxcmVtIDAuNXJlbSAxcmVtOyB9XG4gIC5rZWVwLXVwZGF0ZWQgZmllbGRzZXQuY2hlY2tib3gtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmtlZXAtdXBkYXRlZCAuY2hlY2ttYXJrIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogLTRweDtcbiAgICBoZWlnaHQ6IDQuNXZ3O1xuICAgIHdpZHRoOiA0LjV2dzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDJyZW0pOyB9IH1cblxuLm1haW4tbWVudS1kcm9wcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDAwMDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGhlaWdodCAxcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMXMgZWFzZTsgfVxuICAubWFpbi1tZW51LWRyb3BwZXIgZHQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgIGZvbnQtc2l6ZTogMXZ3OyB9XG4gIC5tYWluLW1lbnUtZHJvcHBlciBkZCB7XG4gICAgZm9udC1zaXplOiAwLjc1dnc7XG4gICAgcGFkZGluZzogMC41dncgMDsgfVxuXG4ubWFpbi1tZW51LXZlaGljbGVzIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgLW1zLWZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgLm1haW4tbWVudS12ZWhpY2xlcyBkdCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1haW4tbWVudS12ZWhpY2xlcyBkZCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIGF1dG87XG4gICAgLW1zLWZsZXg6IDAgMCBhdXRvO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gIHotaW5kZXg6IDI1OyB9XG5cbi8qIE9wZW4gbmF2aWdpYXRpb24gKi9cbi5tYWluLW1lbnUtZHJvcHBlci5pcy1hY3RpdmUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4ubWFpbi1uYXYtY29udGVudHMge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAydnc7IH1cblxuLyogTWVkaXVtIG9ubHkgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAubWFpbi1tZW51LWRyb3BwZXIgZHQge1xuICAgIGZvbnQtc2l6ZTogMS4zdnc7IH1cbiAgLm1haW4tbWVudS1kcm9wcGVyIGRkIHtcbiAgICBmb250LXNpemU6IDF2dztcbiAgICBwYWRkaW5nOiAwLjc1dncgMDsgfSB9XG5cbi8qIFNtYWxsIG9ubHkgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuaXMtYWN0aXZlIC5tYWluLW5hdi1jb250ZW50cyB7XG4gICAgaGVpZ2h0OiA3MHZoO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICAubWFpbi1tZW51LWRyb3BwZXIgZHQge1xuICAgIGZvbnQtc2l6ZTogNHZ3OyB9XG4gIC5tYWluLW1lbnUtZHJvcHBlciBkZCB7XG4gICAgZm9udC1zaXplOiAzdnc7XG4gICAgcGFkZGluZzogMS43NXZ3IDA7IH1cbiAgLm1haW4tbWVudS12ZWhpY2xlcyBkZCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudmFuaXNoIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmJpZy1zdGF0ZW1lbnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLU1lZGl1bSc7IH1cblxuLmNvbW1lcmNpYWwtdGF4LWd1aWRlbGluZXMgLmFjY2Vzc2liaWxpdHktaW5mbyB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmZmbC1wYW5lbCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDsgfVxuICAuZmZsLXBhbmVsLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDF2dztcbiAgICBwYWRkaW5nLWxlZnQ6IDF2dzsgfVxuICAgIC5mZmwtcGFuZWwuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5mZmwtbWVzc2FnZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJ2dztcbiAgICAgIHBhZGRpbmctdG9wOiAydnc7IH1cbiAgICAuZmZsLXBhbmVsLmdyaWQtcGFkZGluZy14ID4gLmNlbGwuZmZsLWltYWdlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzdnc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZmbC1wYW5lbCAuZmZsLWxvZ28ge1xuICAgIHdpZHRoOiAxNC4xdnc7XG4gICAgbWFyZ2luLWJvdHRvbTogMXZ3OyB9XG4gIC5mZmwtcGFuZWwgaDMge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQmxhY2snO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAyLjV2dztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBsZXR0ZXItc3BhY2luZzogNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXZ3O1xuICAgIHdpZHRoOiAxMzAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTkuNSU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMC44NzV2dzsgfVxuICAgIC5mZmwtcGFuZWwgaDMgc21hbGwge1xuICAgICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1SZWd1bGFyJztcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEyMCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTEyJTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjgpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMC44KTsgfVxuICAuZmZsLXBhbmVsIGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmZmbC1wYW5lbCAuZmZsLWZlYXR1cmluZyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuMnZ3O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41dnc7XG4gICAgd2lkdGg6IDE0MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0yOCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjYpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjYpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuNik7XG4gICAgbWFyZ2luLWJvdHRvbTogMC44NzV2dzsgfVxuICAgIC5mZmwtcGFuZWwgLmZmbC1mZWF0dXJpbmcgYSB7XG4gICAgICBjb2xvcjogIzAwYTRlNDsgfVxuICAuZmZsLXBhbmVsIC5mZmwtY29weSB7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcbiAgICBmb250LXNpemU6IDAuODc1dnc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBsZXR0ZXItc3BhY2luZzogNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXZ3O1xuICAgIHdpZHRoOiAxMzAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTkuNSU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMC44NzV2dzsgfVxuICAuZmZsLXBhbmVsIC5mZmwtYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTRlNDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5mZmwtcGFuZWwgLmZmbC1ibHVlIC5mZmwtYWxpZ24tc2VsZiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHdpZHRoOiA5MCU7IH1cbiAgICAuZmZsLXBhbmVsIC5mZmwtYmx1ZSBhIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMwMGE0ZTQ7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmZmbC1wYW5lbCAuZmZsLWJsdWUgYTpob3ZlciwgLmZmbC1wYW5lbCAuZmZsLWJsdWUgYTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5mZmwtcGFuZWwgLmZmbC1ibHVlIGltZyB7XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgcGFkZGluZzogMC41dncgMDsgfVxuICAgIC5mZmwtcGFuZWwgLmZmbC1ibHVlIHNwYW4uZmZsLWV4cGxvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDEuMnZ3O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjV2dztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBwYWRkaW5nLXRvcDogMXZ3O1xuICAgICAgd2lkdGg6IDEzMCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTE1JTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTsgfVxuICAgIC5mZmwtcGFuZWwgLmZmbC1ibHVlIHNwYW4uZmZsLWV2ZW50cyB7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJsYWNrJywgc2FuLXNlcmlmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogNC41dnc7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDhweDtcbiAgICAgIHdpZHRoOiAxMzAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xNSU7XG4gICAgICBtYXJnaW4tdG9wOiAtMC41dnc7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuNyk7IH1cbiAgLmZmbC1wYW5lbCAuZmZsLWRpc2NsYWltZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBmb250LXNpemU6IDAuNXZ3O1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwOyB9XG5cbi5iZXYtcGFuZWwge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIC05dncgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmJldi1wYW5lbC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxdnc7XG4gICAgcGFkZGluZy1sZWZ0OiAxdnc7IH1cbiAgICAuYmV2LXBhbmVsLmdyaWQtcGFkZGluZy14ID4gLmNlbGwuZmZsLW1lc3NhZ2Uge1xuICAgICAgcGFkZGluZy1sZWZ0OiAydnc7XG4gICAgICBwYWRkaW5nLXRvcDogMnZ3OyB9XG4gICAgLmJldi1wYW5lbC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsLmZmbC1pbWFnZSB7XG4gICAgICBwYWRkaW5nLXRvcDogM3Z3O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5iZXYtcGFuZWwgLmJldi1sb2dvIHtcbiAgICB3aWR0aDogMzB2dztcbiAgICBtYXJnaW4tYm90dG9tOiAzdnc7IH1cbiAgLmJldi1wYW5lbCBoMyB7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1SZWd1bGFyJztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMi41dnc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjV2dztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjg3NXZ3O1xuICAgIG1hcmdpbi10b3A6IDEuODc1dnc7XG4gICAgY29sb3I6ICMwMGE0ZTQ7XG4gICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCAjMmJhZmY0OyB9XG4gICAgLmJldi1wYW5lbCBoMyBzbWFsbCB7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVJlZ3VsYXInO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTIwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTIlO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjgpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKDAuOCk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjgpOyB9XG4gICAgLmJldi1wYW5lbCBoMyBzcGFuIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCc7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtc2hhZG93OiAwcHggMHB4IDE1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTsgfVxuICAuYmV2LXBhbmVsIGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmJldi1wYW5lbCAuYmV2LWZlYXR1cmluZyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDJ2dztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBsZXR0ZXItc3BhY2luZzogNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXZ3O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xuICAgIG1hcmdpbi1ib3R0b206IDIuODc1dnc7XG4gICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpOyB9XG4gICAgLmJldi1wYW5lbCAuYmV2LWZlYXR1cmluZyBhIHtcbiAgICAgIGNvbG9yOiAjMDBhNGU0O1xuICAgICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCAjMmJhZmY0OyB9XG4gIC5iZXYtcGFuZWwgLmJldi1jb3B5IHtcbiAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMC44NzV2dztcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41dnc7XG4gICAgd2lkdGg6IDEzMCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xOS41JTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjg3NXZ3OyB9XG4gIC5iZXYtcGFuZWwgLmJldi1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNGU0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmJldi1wYW5lbCAuYmV2LWJsdWUgLmJldi1hbGlnbi1zZWxmIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDkwJTsgfVxuICAgIC5iZXYtcGFuZWwgLmJldi1ibHVlIGEge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwYTRlNDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuYmV2LXBhbmVsIC5iZXYtYmx1ZSBhOmhvdmVyLCAuYmV2LXBhbmVsIC5iZXYtYmx1ZSBhOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmJldi1wYW5lbCAuYmV2LWJsdWUgaW1nIHtcbiAgICAgIHdpZHRoOiA0MCU7XG4gICAgICBwYWRkaW5nOiAwLjV2dyAwOyB9XG4gICAgLmJldi1wYW5lbCAuYmV2LWJsdWUgc3Bhbi5iZXYtZXhwbG9yZSB7XG4gICAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4ydnc7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXZ3O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHBhZGRpbmctdG9wOiAxdnc7XG4gICAgICB3aWR0aDogMTMwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTUlO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjcpOyB9XG4gICAgLmJldi1wYW5lbCAuYmV2LWJsdWUgc3Bhbi5iZXYtZXZlbnRzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQmxhY2snLCBzYW4tc2VyaWY7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiA0LjV2dztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBsZXR0ZXItc3BhY2luZzogOHB4O1xuICAgICAgd2lkdGg6IDEzMCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTE1JTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjV2dztcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTsgfVxuICAuYmV2LXBhbmVsIC5iZXYtZGlzY2xhaW1lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMC41dnc7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDY0Ljk5NGVtKSB7XG4gIC5mZmwtcGFuZWwgLmZmbC1ibHVlIHNwYW4uZmZsLWV4cGxvcmUge1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7IH1cbiAgLmZmbC1wYW5lbCAuZmZsLWJsdWUgc3Bhbi5mZmwtZXZlbnRzIHtcbiAgICBsZXR0ZXItc3BhY2luZzogNHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5mZmwtcGFuZWwgLmZmbC1sb2dvIHtcbiAgICB3aWR0aDogNTB2dztcbiAgICBtYXJnaW4tYm90dG9tOiAzdnc7IH1cbiAgLmZmbC1wYW5lbCBoMyB7XG4gICAgZm9udC1zaXplOiA1LjV2dztcbiAgICBtYXJnaW4tYm90dG9tOiAyLjg3NXZ3OyB9XG4gIC5mZmwtcGFuZWwgLmZmbC1mZWF0dXJpbmcge1xuICAgIGZvbnQtc2l6ZTogNC4ydnc7XG4gICAgbWFyZ2luLWJvdHRvbTogMi44NzV2dzsgfVxuICAuZmZsLXBhbmVsIC5mZmwtY29weSB7XG4gICAgZm9udC1zaXplOiAzLjg3NXZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDIuODc1dnc7IH1cbiAgLmZmbC1wYW5lbCAuZmZsLWJsdWUgaW1nIHtcbiAgICB3aWR0aDogMTUlO1xuICAgIHBhZGRpbmc6IDIuNXZ3IDA7IH1cbiAgLmZmbC1wYW5lbCAuZmZsLWJsdWUgc3Bhbi5mZmwtZXhwbG9yZSB7XG4gICAgZm9udC1zaXplOiA0LjJ2dzsgfVxuICAuZmZsLXBhbmVsIC5mZmwtYmx1ZSBzcGFuLmZmbC1ldmVudHMge1xuICAgIGZvbnQtc2l6ZTogMTYuNXZ3O1xuICAgIG1hcmdpbi10b3A6IC0yLjV2dzsgfVxuICAuZmZsLXBhbmVsLmdyaWQtcGFkZGluZy14ID4gLmNlbGwuZmZsLW1lc3NhZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogNXZ3O1xuICAgIHBhZGRpbmctdG9wOiA1dnc7IH1cbiAgLmZmbC1wYW5lbCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGxlZnQgIWltcG9ydGFudDsgfVxuICAuZmZsLXBhbmVsLmdyaWQtcGFkZGluZy14ID4gLmNlbGwuZmZsLWltYWdlIHtcbiAgICBwYWRkaW5nLXRvcDogM3Z3O1xuICAgIHBhZGRpbmctcmlnaHQ6IDN2dztcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dzsgfVxuICAuZmZsLXBhbmVsIC5mZmwtZGlzY2xhaW1lciB7XG4gICAgZm9udC1zaXplOiAxLjV2dztcbiAgICBsZWZ0OiA0dnc7IH1cbiAgLmZmbC1wYW5lbCAuZmZsLWJsdWUgLmZmbC1hbGlnbi1zZWxmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5iZXYtcGFuZWwge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04dncgLTR2dyAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTUwJSAhaW1wb3J0YW50OyB9XG4gIC5iZXYtcGFuZWwgaDMge1xuICAgIGZvbnQtc2l6ZTogNS41dnc7XG4gICAgbWFyZ2luLWJvdHRvbTogNS44NzV2dztcbiAgICBtYXJnaW4tdG9wOiA0Ljg3NXZ3OyB9XG4gIC5iZXYtcGFuZWwgLmJldi1sb2dvIHtcbiAgICB3aWR0aDogODB2dztcbiAgICBtYXJnaW4tYm90dG9tOiA2dnc7IH1cbiAgLmJldi1wYW5lbCAuYmV2LWZlYXR1cmluZyB7XG4gICAgZm9udC1zaXplOiA1dnc7XG4gICAgbWFyZ2luLWJvdHRvbTogNS44NzV2dzsgfSB9XG4iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi40LjNcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIERlcGVuZGVuY2llc1xuQGltcG9ydCAnLi4vX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvY29udGFpbic7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gU2V0dGluZ3Ncbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gU2FzcyB1dGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIEdsb2JhbCB2YXJpYWJsZXMgYW5kIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2Vcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcblxuICBAaWYgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuICB9XG5cbiAgQGlmICRwcm90b3R5cGUge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1lvdXIgc21hbGxlc3QgYnJlYWtwb2ludCAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMpIG11c3QgYmUgc2V0IHRvIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gKDEvMTYpO1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkdmFsdWUpO1xuICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcblxuICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgfVxuICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gIEBlbHNlIHtcbiAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgQGlmICRicCAhPSBudWxsIGFuZCAkYnAgPD0gJHBicCB7XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkb2xkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgLy8gUmVzdG9yZSB0aGUgb2xkIGJyZWFrcG9pbnQgc2l6ZVxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICQtemYtc2l6ZTogbnVsbCAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBDb252ZXJzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbmcgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW5nLlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuXG4vLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbi8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICVyZXZlYWwtY2VudGVyZWQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgLmNvbHVtbiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gU3RyaXAgbWFyZ2lucyBmcm9tIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIG1vZGFsXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkanVzdHMgdGhlIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBtb2RhbC4gR2VuZXJhbGx5IGEgcGVyY2VudGFnZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heC13aWR0aCBbJHJldmVhbC1tYXgtd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoKFxuICAkd2lkdGg6ICRyZXZlYWwtd2lkdGgsXG4gICRtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoXG4pIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBAZXh0ZW5kICVyZXZlYWwtY2VudGVyZWQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXNjcmVlbiBtb2RhbCwgd2hpY2ggc3RyZXRjaGVzIHRoZSBmdWxsIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIHdpbmRvdy5cbkBtaXhpbiByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbiB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tZHVwbGljYXRlLXByb3BlcnRpZXNcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmV2ZWFsIHtcbiAgLy8gW1RPRE9dIElzIHRoaXMgbmVjZXNzYXJ5P1xuICBib2R5LmlzLXJldmVhbC1vcGVuIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIGh0bWwgZ2V0cyB0aGlzIGNsYXNzIG9ubHkgaW4gaU9TXG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4sXG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC8vIE92ZXJsYXlcbiAgLnJldmVhbC1vdmVybGF5IHtcbiAgICBAaW5jbHVkZSByZXZlYWwtb3ZlcmxheTtcbiAgfVxuXG4gIC8vIE1vZGFsIGNvbnRhaW5lclxuICAucmV2ZWFsIHtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZTtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoJHJldmVhbC13aWR0aCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMTAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAvLyBSZW1vdmUgcGFkZGluZ1xuICAgICYuY29sbGFwc2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBTaXppbmcgY2xhc3Nlc1xuICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoMzAlKTsgfVxuICAgICYuc21hbGwgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoNTAlKTsgfVxuICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoOTAlKTsgfVxuXG4gICAgLy8gRnVsbC1zY3JlZW4gbW9kZVxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgICYud2l0aG91dC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cbiIsIlxyXG4vKiBGb250IEZhY2UgKi9cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBTdHJpbmcgUmVwbGFjZVxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XHJcbiAgICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcclxuXHJcbiAgICBAaWYgJGluZGV4IHtcclxuICAgICAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiAkc3RyaW5nO1xyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBGb250IEZhY2VcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbkBtaXhpbiBmb250LWZhY2UoJG5hbWUsICRwYXRoLCAkd2VpZ2h0OiBudWxsLCAkc3R5bGU6IG51bGwsICRleHRzOiBlb3Qgd29mZiBzdmcpIHtcclxuICAgICRzcmM6IG51bGw7XHJcblxyXG4gICAgJGV4dG1vZHM6IChcclxuICAgICAgICBlb3Q6IFwiP1wiLFxyXG4gICAgICAgIHN2ZzogXCIjXCIgKyBzdHItcmVwbGFjZSgkbmFtZSwgXCIgXCIsIFwiX1wiKVxyXG4gICAgKTtcclxuXHJcbiAgICAkZm9ybWF0czogKFxyXG4gICAgICAgIG90ZjogXCJvcGVudHlwZVwiLFxyXG4gICAgICAgIHR0ZjogXCJ0cnVldHlwZVwiXHJcbiAgICApO1xyXG5cclxuICAgIEBlYWNoICRleHQgaW4gJGV4dHMge1xyXG4gICAgICAgICRleHRtb2Q6IGlmKG1hcC1oYXMta2V5KCRleHRtb2RzLCAkZXh0KSwgJGV4dCArIG1hcC1nZXQoJGV4dG1vZHMsICRleHQpLCAkZXh0KTtcclxuICAgICAgICAkZm9ybWF0OiBpZihtYXAtaGFzLWtleSgkZm9ybWF0cywgJGV4dCksIG1hcC1nZXQoJGZvcm1hdHMsICRleHQpLCAkZXh0KTtcclxuICAgICAgICAkc3JjOiBhcHBlbmQoJHNyYywgdXJsKHF1b3RlKCRwYXRoICsgXCIuXCIgKyAkZXh0bW9kKSkgZm9ybWF0KHF1b3RlKCRmb3JtYXQpKSwgY29tbWEpO1xyXG4gICAgfVxyXG5cclxuICAgIEBmb250LWZhY2Uge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBxdW90ZSgkbmFtZSk7XHJcbiAgICAgICAgZm9udC1zdHlsZTogJHN0eWxlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xyXG4gICAgICAgIHNyYzogJHNyYztcclxuICAgIH1cclxufVxyXG4iLCIvLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHRoZSBub3JtYWxpemUoKSBtaXhpbi5cbkBmdW5jdGlvbiBfbm9ybWFsaXplLWluY2x1ZGUoJHNlY3Rpb24sICRleGNsdWRlOiBudWxsKSB7XG4gIC8vIEluaXRpYWxpemUgdGhlIGdsb2JhbCB2YXJpYWJsZXMgbmVlZGVkIGJ5IHRoaXMgZnVuY3Rpb24uXG4gIEBpZiBub3QgZ2xvYmFsX3ZhcmlhYmxlX2V4aXN0cyhfbm9ybWFsaXplLWluY2x1ZGUpIHtcbiAgICAkX25vcm1hbGl6ZS1pbmNsdWRlOiAoKSAhZ2xvYmFsO1xuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6ICgpICFnbG9iYWw7XG4gIH1cbiAgLy8gU2luY2Ugd2UgYXJlIGdpdmVuIDIgcGFyYW1ldGVycywgc2V0IHRoZSBnbG9iYWwgdmFyaWFibGVzLlxuICBAaWYgJGV4Y2x1ZGUgIT0gbnVsbCB7XG4gICAgJGluY2x1ZGU6ICRzZWN0aW9uO1xuICAgIC8vIFNhc3MgZG9lc24ndCBoYXZlIHN0YXRpYyB2YXJpYWJsZXMsIHNvIHRoZSB3b3JrLWFyb3VuZCBpcyB0byBzdHVmZiB0aGVzZVxuICAgIC8vIHZhbHVlcyBpbnRvIGdsb2JhbCB2YXJpYWJsZXMgc28gd2UgY2FuIGFjY2VzcyB0aGVtIGluIGZ1dHVyZSBjYWxscy5cbiAgICAkX25vcm1hbGl6ZS1pbmNsdWRlOiBpZih0eXBlLW9mKCRpbmNsdWRlKSA9PSAnbGlzdCcsICRpbmNsdWRlLCAoJGluY2x1ZGUpKSAhZ2xvYmFsO1xuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6IGlmKHR5cGUtb2YoJGV4Y2x1ZGUpID09ICdsaXN0JywgJGV4Y2x1ZGUsICgkZXhjbHVkZSkpICFnbG9iYWw7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHNlY3Rpb24gaXMgaW4gdGhlICRpbmNsdWRlIGxpc3QuXG4gIEBpZiBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCAkc2VjdGlvbikge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICAvLyBJZiAkaW5jbHVkZSBpcyBzZXQgdG8gKGFsbCksIG1ha2Ugc3VyZSAkc2VjdGlvbiBpcyBub3QgaW4gJGV4Y2x1ZGUuXG4gIEBlbHNlIGlmIG5vdCBpbmRleCgkX25vcm1hbGl6ZS1leGNsdWRlLCAkc2VjdGlvbikgYW5kIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsIGFsbCkge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplKCRpbmNsdWRlOiAoYWxsKSwgJGV4Y2x1ZGU6ICgpKSB7XG4gIC8vIEluaXRpYWxpemUgdGhlIGhlbHBlciBmdW5jdGlvbiBieSBwYXNzaW5nIGl0IHRoaXMgbWl4aW4ncyBwYXJhbWV0ZXJzLlxuICAkaW5pdDogX25vcm1hbGl6ZS1pbmNsdWRlKCRpbmNsdWRlLCAkZXhjbHVkZSk7XG5cbiAgLy8gSWYgd2UndmUgY3VzdG9taXplZCBhbnkgZm9udCB2YXJpYWJsZXMsIHdlJ2xsIG5lZWQgZXh0cmEgcHJvcGVydGllcy5cbiAgQGlmICRiYXNlLWZvbnQtc2l6ZSAhPSAxNnB4XG4gICAgb3IgJGJhc2UtbGluZS1oZWlnaHQgIT0gMjRweFxuICAgIG9yICRiYXNlLXVuaXQgIT0gJ2VtJ1xuICAgIG9yICRoMS1mb250LXNpemUgIT0gMiAgICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoMi1mb250LXNpemUgIT0gMS41ICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoMy1mb250LXNpemUgIT0gMS4xNyAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNC1mb250LXNpemUgIT0gMSAgICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNS1mb250LXNpemUgIT0gMC44MyAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNi1mb250LXNpemUgIT0gMC42NyAqICRiYXNlLWZvbnQtc2l6ZSB7XG4gICAgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG06IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShkb2N1bWVudCkge1xuICAgIC8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cblxuICAgIGh0bWwge1xuICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5OyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvLyBDb3JyZWN0IG9sZCBicm93c2VyIGJ1ZyB0aGF0IHByZXZlbnRlZCBhY2Nlc3NpYmxlIHJlc2l6aW5nIG9mIHRleHRcbiAgICAgICAgLy8gd2hlbiByb290IGZvbnQtc2l6ZSBpcyBzZXQgd2l0aCBweCBvciBlbS5cbiAgICAgICAgZm9udC1zaXplOiAoJGJhc2UtZm9udC1zaXplIC8gMTZweCkgKiAxMDAlO1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMiAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMiAqL1xuICAgICAgfVxuICAgICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2VjdGlvbnMpIHtcbiAgICAvKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGJvZHkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgYXJ0aWNsZSxcbiAgICBhc2lkZSxcbiAgICBmb290ZXIsXG4gICAgaGVhZGVyLFxuICAgIG5hdixcbiAgICBzZWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDEtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLyogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuICovXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDEtZm9udC1zaXplKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgaDIge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDItZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDMtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDQtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDUtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDYge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDYtZm9udC1zaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGdyb3VwaW5nKSB7XG4gICAgLyogR3JvdXBpbmcgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgLyoqXG4gICAgICAgKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICovXG5cbiAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuXG4gICAgICBkbCxcbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgKi9cblxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIG9sLFxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGRkIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cblxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgZmlnY2FwdGlvbixcbiAgICBmaWd1cmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuXG4gICAgZmlndXJlIHtcbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMWVtICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgICovXG5cbiAgICBociB7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICAgICAgaGVpZ2h0OiAwOyAvKiAxICovXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgbWFpbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgLyoqXG4gICAgICAgKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICovXG5cbiAgICAgIHAsXG4gICAgICBwcmUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBwcmUge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUobGlua3MpIHtcbiAgICAvKiBMaW5rc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAqL1xuXG4gICAgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAgICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYTphY3RpdmUsXG4gICAgYTpob3ZlciB7XG4gICAgICBvdXRsaW5lLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUodGV4dCkge1xuICAgIC8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYWJiclt0aXRsZV0ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBjb2RlLFxuICAgIGtiZCxcbiAgICBzYW1wIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gICAgICovXG5cbiAgICBkZm4ge1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1hcmsge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc21hbGwge1xuICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3ViLFxuICAgIHN1cCB7XG4gICAgICBmb250LXNpemU6IDc1JTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIH1cblxuICAgIHN1YiB7XG4gICAgICBib3R0b206IC0wLjI1ZW07XG4gICAgfVxuXG4gICAgc3VwIHtcbiAgICAgIHRvcDogLTAuNWVtO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZW1iZWRkZWQpIHtcbiAgICAvKiBFbWJlZGRlZCBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgYXVkaW8sXG4gICAgdmlkZW8ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG5cbiAgICBhdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGhlaWdodDogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIGltZyB7XG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBzdmc6bm90KDpyb290KSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZm9ybXMpIHtcbiAgICAvKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBpbnB1dCxcbiAgICBvcHRncm91cCxcbiAgICBzZWxlY3QsXG4gICAgdGV4dGFyZWEge1xuICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5OyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAxICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gICAgICB9XG4gICAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbiB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgc2VsZWN0IHsgLyogMSAqL1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgICB9XG5cbiAgICBidXR0b24sXG4gICAgW3R5cGU9XCJidXR0b25cIl0sXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuXG4gICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqL1xuXG4gICAgICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICAgICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5cbiAgICBpbnB1dCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG5cbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICAgICAqL1xuXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGxlZ2VuZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAzICovXG4gICAgICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5cbiAgICBwcm9ncmVzcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGludGVyYWN0aXZlKSB7XG4gICAgLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBkZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qXG4gICAgICAgICAqIDEuIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgICAqIDIuIFNldCBjb25zaXN0ZW50IHNwYWNlIGZvciB0aGUgbGlzdCBzdHlsZSBpbWFnZS5cbiAgICAgICAgICovXG5cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApOyAvKiAxICovXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50OyAvKiAyICovXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICAgKi9cblxuICAgICAgICBtZW51ICYsXG4gICAgICAgIG9sICYsXG4gICAgICAgIHVsICYge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2NyaXB0aW5nKSB7XG4gICAgLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgY2FudmFzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRlbXBsYXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShoaWRkZW4pIHtcbiAgICAvKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBWYXJpYWJsZXNcbi8vXG4vLyBZb3UgY2FuIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHZhbHVlcyBieSBzZXR0aW5nIHRoZSB2YXJpYWJsZXMgaW4geW91ciBTYXNzXG4vLyBiZWZvcmUgaW1wb3J0aW5nIHRoZSBub3JtYWxpemUtc2NzcyBsaWJyYXJ5LlxuXG4vLyBUaGUgZm9udCBzaXplIHNldCBvbiB0aGUgcm9vdCBodG1sIGVsZW1lbnQuXG4kYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBiYXNlIGxpbmUgaGVpZ2h0IGRldGVybWluZXMgdGhlIGJhc2ljIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtLlxuJGJhc2UtbGluZS1oZWlnaHQ6IDI0cHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBsZW5ndGggdW5pdCBpbiB3aGljaCB0byBvdXRwdXQgdmVydGljYWwgcmh5dGhtIHZhbHVlcy5cbi8vIFN1cHBvcnRlZCB2YWx1ZXM6IHB4LCBlbSwgcmVtLlxuJGJhc2UtdW5pdDogJ2VtJyAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgZm9udCBmYW1pbHkuXG4kYmFzZS1mb250LWZhbWlseTogc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8gVGhlIGZvbnQgc2l6ZXMgZm9yIGgxLWg2LlxuJGgxLWZvbnQtc2l6ZTogMiAgICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6IDEuNSAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAxLjE3ICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogMSAgICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6IDAuODMgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAwLjY3ICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLyBUaGUgYW1vdW50IGxpc3RzIGFuZCBibG9ja3F1b3RlcyBhcmUgaW5kZW50ZWQuXG4kaW5kZW50LWFtb3VudDogNDBweCAhZGVmYXVsdDtcblxuLy8gVGhlIGZvbGxvd2luZyB2YXJpYWJsZSBjb250cm9scyB3aGV0aGVyIG5vcm1hbGl6ZS1zY3NzIHdpbGwgb3V0cHV0XG4vLyBmb250LXNpemVzLCBsaW5lLWhlaWdodHMgYW5kIGJsb2NrLWxldmVsIHRvcC9ib3R0b20gbWFyZ2lucyB0aGF0IGZvcm0gYSBiYXNpY1xuLy8gdmVydGljYWwgcmh5dGhtIG9uIHRoZSBwYWdlLCB3aGljaCBkaWZmZXJzIGZyb20gdGhlIG9yaWdpbmFsIE5vcm1hbGl6ZS5jc3MuXG4vLyBIb3dldmVyLCBjaGFuZ2luZyBhbnkgb2YgdGhlIHZhcmlhYmxlcyBhYm92ZSB3aWxsIGNhdXNlXG4vLyAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB0byBiZSBhdXRvbWF0aWNhbGx5IHNldCB0byB0cnVlLlxuJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG06IGZhbHNlICFkZWZhdWx0O1xuIiwiLy9cbi8vIFZlcnRpY2FsIFJoeXRobVxuLy9cbi8vIFRoaXMgaXMgdGhlIG1pbmltYWwgYW1vdW50IG9mIGNvZGUgbmVlZGVkIHRvIGNyZWF0ZSB2ZXJ0aWNhbCByaHl0aG0gaW4gb3VyXG4vLyBDU1MuIElmIHlvdSBhcmUgbG9va2luZyBmb3IgYSByb2J1c3Qgc29sdXRpb24sIGxvb2sgYXQgdGhlIGV4Y2VsbGVudCBUeXBleVxuLy8gbGlicmFyeS4gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vanB0YXJhbnRvL3R5cGV5XG5cbkBmdW5jdGlvbiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUsICR1bml0OiAkYmFzZS11bml0KSB7XG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gcHgge1xuICAgIEBlcnJvciBcIlRoZSBub3JtYWxpemUgdmVydGljYWwtcmh5dGhtIG1vZHVsZSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIEBpZiAkdW5pdCA9PSByZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxcmVtO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09IGVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkcmVsYXRpdmUtdG8pICogMWVtO1xuICB9XG4gIEBlbHNlIHsgLy8gJHVuaXQgPT0gcHhcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxufVxuXG5AbWl4aW4gbm9ybWFsaXplLWZvbnQtc2l6ZSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3B4JyB7XG4gICAgQGVycm9yIFwibm9ybWFsaXplLWZvbnQtc2l6ZSgpIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgZm9udC1zaXplOiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1yaHl0aG0oJHByb3BlcnR5LCAkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICAkdmFsdWUtbGlzdDogJHZhbHVlcztcbiAgJHNlcDogc3BhY2U7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09ICdsaXN0JyB7XG4gICAgJHNlcDogbGlzdC1zZXBhcmF0b3IoJHZhbHVlcyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWx1ZS1saXN0OiBhcHBlbmQoKCksICR2YWx1ZXMpO1xuICB9XG5cbiAgJG5vcm1hbGl6ZWQtdmFsdWVzOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZS1saXN0IHtcbiAgICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgJHZhbHVlICE9IDAge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiBub3JtYWxpemUtcmh5dGhtKCRiYXNlLWxpbmUtaGVpZ2h0LCAkcmVsYXRpdmUtdG8pO1xuICAgIH1cbiAgICAkbm9ybWFsaXplZC12YWx1ZXM6IGFwcGVuZCgkbm9ybWFsaXplZC12YWx1ZXMsICR2YWx1ZSwgJHNlcCk7XG4gIH1cbiAgI3skcHJvcGVydHl9OiAkbm9ybWFsaXplZC12YWx1ZXM7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbWFyZ2luKCR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obWFyZ2luLCAkdmFsdWVzLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRmb250LXNpemUsICRtaW4tbGluZS1wYWRkaW5nOiAycHgpIHtcbiAgJGxpbmVzOiBjZWlsKCRmb250LXNpemUgLyAkYmFzZS1saW5lLWhlaWdodCk7XG4gIC8vIElmIGxpbmVzIGFyZSBjcmFtcGVkIGluY2x1ZGUgc29tZSBleHRyYSBsZWFkaW5nLlxuICBAaWYgKCRsaW5lcyAqICRiYXNlLWxpbmUtaGVpZ2h0IC0gJGZvbnQtc2l6ZSkgPCAoJG1pbi1saW5lLXBhZGRpbmcgKiAyKSB7XG4gICAgJGxpbmVzOiAkbGluZXMgKyAxO1xuICB9XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obGluZS1oZWlnaHQsICRsaW5lcywgJGZvbnQtc2l6ZSk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtYXR0cmlidXRlLW5lc3RpbmcsIGZvcmNlLXBzZXVkby1uZXN0aW5nLCBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJHNlY29uZGFyeS1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG4kc3VjY2Vzcy1jb2xvcjogZ2V0LWNvbG9yKHN1Y2Nlc3MpO1xuJHdhcm5pbmctY29sb3I6IGdldC1jb2xvcih3YXJuaW5nKTtcbiRhbGVydC1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIC16Zi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogJGdsb2JhbC1idXR0b24tY3Vyc29yO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICBAaW5jbHVkZSBub3JtYWxpemUoKTtcbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy9cclxuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxyXG4vL1xyXG4vLyAgIDEuIEdsb2JhbFxyXG4vLyAgIDIuIEJyZWFrcG9pbnRzXHJcbi8vICAgMy4gVGhlIEdyaWRcclxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gICA2LiBBYmlkZVxyXG4vLyAgIDcuIEFjY29yZGlvblxyXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XHJcbi8vICAgOS4gQmFkZ2VcclxuLy8gIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAgMTEuIEJ1dHRvblxyXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAgMTMuIENhbGxvdXRcclxuLy8gIDE0LiBDYXJkXHJcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXHJcbi8vICAxNi4gRHJpbGxkb3duXHJcbi8vICAxNy4gRHJvcGRvd25cclxuLy8gIDE4LiBEcm9wZG93biBNZW51XHJcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcclxuLy8gIDIwLiBGb3Jtc1xyXG4vLyAgMjEuIExhYmVsXHJcbi8vICAyMi4gTWVkaWEgT2JqZWN0XHJcbi8vICAyMy4gTWVudVxyXG4vLyAgMjQuIE1ldGVyXHJcbi8vICAyNS4gT2ZmLWNhbnZhc1xyXG4vLyAgMjYuIE9yYml0XHJcbi8vICAyNy4gUGFnaW5hdGlvblxyXG4vLyAgMjguIFByb2dyZXNzIEJhclxyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xyXG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XHJcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXHJcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXHJcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcclxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXHJcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxyXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xyXG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxyXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXHJcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxyXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcclxuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXHJcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcclxuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXHJcbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cclxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcclxuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXHJcbi8vICA0Ny4gUmV2ZWFsXHJcbi8vICA0OC4gU2xpZGVyXHJcbi8vICA0OS4gU3dpdGNoXHJcbi8vICA1MC4gVGFibGVcclxuLy8gIDUxLiBUYWJzXHJcbi8vICA1Mi4gVGh1bWJuYWlsXHJcbi8vICA1My4gVGl0bGUgQmFyXHJcbi8vICA1NC4gVG9vbHRpcFxyXG4vLyAgNTUuIFRvcCBCYXJcclxuLy8gIDU2LiBYeSBHcmlkXHJcblxyXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xyXG5cclxuLy8gY3VzdG9tIGdsb2JhbCB2YXJpYWJsZXNcclxuXHJcblxyXG4vLyAxLiBHbG9iYWxcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCk7XHJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xyXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXHJcbiAgcHJpbWFyeTogIzAwNzViNixcclxuICBzZWNvbmRhcnk6ICMwODJhNDcsXHJcbiAgc3VjY2VzczogIzNhZGI3NixcclxuICB3YXJuaW5nOiAjZmZhZTAwLFxyXG4gIGFsZXJ0OiAjY2M0YjM3LFxyXG4pO1xyXG4kbGlnaHQtZ3JheTogI2Y3ZjdmNztcclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhO1xyXG4kZGFyay1ncmF5OiAjMzMzMzMzO1xyXG4kYmxhY2s6ICMwMDAwMDA7XHJcbiR3aGl0ZTogI2ZmZmZmZjtcclxuJGNvbW1lcmNpYWwtY29sb3I6ICNmYWI0MTg7XHJcbiRhY2Nlc3NpYmlsaXR5LWNvbG9yOiAjMDY3OGJjO1xyXG4kcmVjcmVhdGlvbmFsLWNvbG9yOiAjMDU1MzYwO1xyXG4kZmxlZXQtY29sb3I6ICM1ZmI4MzE7XHJcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xyXG4kYm9keS1mb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVJlZ3VsYXInLCBzYW5zLXNlcmlmO1xyXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcclxuJGdsb2JhbC1tYXJnaW46IDFyZW07XHJcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbTtcclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XHJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XHJcbiRnbG9iYWwtcmFkaXVzOiAwO1xyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XHJcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xyXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XHJcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcclxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xyXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IHBvaW50ZXI7XHJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XHJcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcclxuXHJcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcclxuXHJcbi8vIDIuIEJyZWFrcG9pbnRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJlYWtwb2ludHM6IChcclxuICBzbWFsbDogMCxcclxuICBtZWRpdW06IDY0MHB4LFxyXG4gIGxhcmdlOiAxMDI0cHgsXHJcbiAgeGxhcmdlOiAxMjAwcHgsXHJcbiAgeHhsYXJnZTogMTQ0MHB4LFxyXG4pO1xyXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XHJcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xyXG5cclxuLy8gMy4gVGhlIEdyaWRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcclxuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxyXG4gIHNtYWxsOiAyMHB4LFxyXG4gIG1lZGl1bTogMzBweCxcclxuKTtcclxuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XHJcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xyXG4kYmxvY2stZ3JpZC1tYXg6IDg7XHJcblxyXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcclxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XHJcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XHJcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJGhlYWRlci1zdHlsZXM6IChcclxuICBzbWFsbDogKFxyXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXHJcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcclxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxyXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXHJcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcclxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxyXG4gICksXHJcbiAgbWVkaXVtOiAoXHJcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcclxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxyXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXHJcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcclxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxyXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXHJcbiAgKSxcclxuKTtcclxuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kc21hbGwtZm9udC1zaXplOiA4MCU7XHJcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XHJcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XHJcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XHJcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XHJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcclxuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XHJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XHJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XHJcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xyXG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XHJcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XHJcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcclxuXHJcbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xyXG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XHJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XHJcblxyXG4vLyA2LiBBYmlkZVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGFiaWRlLWlucHV0czogdHJ1ZTtcclxuJGFiaWRlLWxhYmVsczogdHJ1ZTtcclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuXHJcbi8vIDcuIEFjY29yZGlvblxyXG4vLyAtLS0tLS0tLS0tLS1cclxuXHJcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcclxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XHJcblxyXG4vLyA4LiBBY2NvcmRpb24gTWVudVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XHJcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XHJcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XHJcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbDtcclxuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XHJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XHJcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcclxuXHJcbi8vIDkuIEJhZGdlXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xyXG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XHJcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XHJcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XHJcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcclxuXHJcbi8vIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XHJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XHJcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XHJcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDExLiBCdXR0b25cclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcclxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtO1xyXG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XHJcbiRidXR0b24tZmlsbDogc29saWQ7XHJcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMjUlKTtcclxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xyXG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogM3B4O1xyXG4kYnV0dG9uLXNpemVzOiAoXHJcbiAgdGlueTogMC42cmVtLFxyXG4gIHNtYWxsOiAwLjc1cmVtLFxyXG4gIGRlZmF1bHQ6IDAuOXJlbSxcclxuICBsYXJnZTogMS4yNXJlbSxcclxuKTtcclxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XHJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcclxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcclxuXHJcbi8vIDEyLiBCdXR0b24gR3JvdXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcclxuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XHJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xyXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XHJcblxyXG4vLyAxMy4gQ2FsbG91dFxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcclxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XHJcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XHJcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xyXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcclxuXHJcbi8vIDE0LiBDYXJkXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xyXG4kY2FyZC1zaGFkb3c6IG5vbmU7XHJcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG5cclxuLy8gMTUuIENsb3NlIEJ1dHRvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcclxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXHJcbiAgc21hbGw6IDAuNjZyZW0sXHJcbiAgbWVkaXVtOiAxcmVtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXHJcbiAgc21hbGw6IDAuMzNlbSxcclxuICBtZWRpdW06IDAuNXJlbSxcclxuKTtcclxuJGNsb3NlYnV0dG9uLXNpemU6IChcclxuICBzbWFsbDogMS41ZW0sXHJcbiAgbWVkaXVtOiAyZW0sXHJcbik7XHJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xyXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xyXG5cclxuLy8gMTYuIERyaWxsZG93blxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XHJcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XHJcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xyXG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XHJcblxyXG4vLyAxNy4gRHJvcGRvd25cclxuLy8gLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XHJcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XHJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kZHJvcGRvd24tc2l6ZXM6IChcclxuICB0aW55OiAxMDBweCxcclxuICBzbWFsbDogMjAwcHgsXHJcbiAgbGFyZ2U6IDQwMHB4LFxyXG4pO1xyXG5cclxuLy8gMTguIERyb3Bkb3duIE1lbnVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xyXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xyXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcclxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XHJcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XHJcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XHJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMDtcclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcclxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XHJcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50O1xyXG5cclxuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xyXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlO1xyXG5cclxuLy8gMjAuIEZvcm1zXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XHJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcclxuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xyXG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xyXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XHJcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XHJcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2s7XHJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xyXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kaW5wdXQtY29sb3I6ICRibGFjaztcclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XHJcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcclxuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpO1xyXG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XHJcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcclxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjEuIExhYmVsXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XHJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjIuIE1lZGlhIE9iamVjdFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XHJcblxyXG4vLyAyMy4gTWVudVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJG1lbnUtbWFyZ2luOiAwO1xyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XHJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW07XHJcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XHJcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcclxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XHJcbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlO1xyXG5cclxuLy8gMjQuIE1ldGVyXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJG1ldGVyLWhlaWdodDogMXJlbTtcclxuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xyXG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xyXG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcclxuXHJcbi8vIDI1LiBPZmYtY2FudmFzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kb2ZmY2FudmFzLXNpemVzOiAoXHJcbiAgc21hbGw6IDI1MHB4LFxyXG4pO1xyXG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXHJcbiAgc21hbGw6IDI1MHB4LFxyXG4pO1xyXG4kb2ZmLWNhbnZhcy13aWR0aDogbWFwLWdldCgkb2ZmY2FudmFzLXNpemVzLCBzbWFsbCk7XHJcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcclxuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XHJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xyXG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMztcclxuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcclxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XHJcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XHJcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XHJcblxyXG4vLyAyNi4gT3JiaXRcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xyXG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcclxuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcclxuXHJcbi8vIDI3LiBQYWdpbmF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogIzY2NjY2NjtcclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcclxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcclxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XHJcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcclxuXHJcbi8vIDI4LiBQcm9ncmVzcyBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcclxuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6IChcclxuICBkb3duLFxyXG4gIHVwLFxyXG4gIHJpZ2h0LFxyXG4gIGxlZnRcclxuKTtcclxuJHByb3RvdHlwZS1hcnJvdy1zaXplOiAwLjQzNzVyZW07XHJcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcclxuXHJcbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcblxyXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG5cclxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xyXG4kcHJvdG90eXBlLWJvcmRlci10eXBlOiBzb2xpZDtcclxuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtZGlzcGxheTogKFxyXG4gIGlubGluZSxcclxuICBpbmxpbmUtYmxvY2ssXHJcbiAgYmxvY2ssXHJcbiAgdGFibGUsXHJcbiAgdGFibGUtY2VsbFxyXG4pO1xyXG5cclxuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XHJcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcblxyXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKFxyXG4gIGRpc2MsXHJcbiAgY2lyY2xlLFxyXG4gIHNxdWFyZVxyXG4pO1xyXG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxyXG4gIGRlY2ltYWwsXHJcbiAgbG93ZXItYWxwaGEsXHJcbiAgbG93ZXItbGF0aW4sXHJcbiAgbG93ZXItcm9tYW4sXHJcbiAgdXBwZXItYWxwaGEsXHJcbiAgdXBwZXItbGF0aW4sXHJcbiAgdXBwZXItcm9tYW5cclxuKTtcclxuXHJcbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcclxuICB2aXNpYmxlLFxyXG4gIGhpZGRlbixcclxuICBzY3JvbGxcclxuKTtcclxuXHJcbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtcG9zaXRpb246IChcclxuICBzdGF0aWMsXHJcbiAgcmVsYXRpdmUsXHJcbiAgYWJzb2x1dGUsXHJcbiAgZml4ZWRcclxuKTtcclxuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XHJcblxyXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xyXG5cclxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3JcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcclxuXHJcbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLDAsMCwuMTYpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XHJcblxyXG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1zaXppbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXNpemluZzogKFxyXG4gIHdpZHRoLFxyXG4gIGhlaWdodFxyXG4pO1xyXG4kcHJvdG90eXBlLXNpemVzOiAoXHJcbiAgMjU6IDI1JSxcclxuICA1MDogNTAlLFxyXG4gIDc1OiA3NSUsXHJcbiAgMTAwOiAxMDAlXHJcbik7XHJcblxyXG4vLyA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XHJcblxyXG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1kZWNvcmF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcclxuICBvdmVybGluZSxcclxuICB1bmRlcmxpbmUsXHJcbiAgbGluZS10aHJvdWdoLFxyXG4pO1xyXG5cclxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxyXG4gIGxvd2VyY2FzZSxcclxuICB1cHBlcmNhc2UsXHJcbiAgY2FwaXRhbGl6ZVxyXG4pO1xyXG5cclxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xyXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcclxuICBkZWZhdWx0OiA0IGJ5IDMsXHJcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcclxuKTtcclxuXHJcbi8vIDQ3LiBSZXZlYWxcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xyXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xyXG5cclxuLy8gNDguIFNsaWRlclxyXG4vLyAtLS0tLS0tLS0tXHJcblxyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XHJcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XHJcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyA0OS4gU3dpdGNoXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcclxuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XHJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xyXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xyXG5cclxuLy8gNTAuIFRhYmxlXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcclxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XHJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XHJcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XHJcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtc3RyaXBlOiBldmVuO1xyXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XHJcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xyXG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xyXG5cclxuLy8gNTEuIFRhYnNcclxuLy8gLS0tLS0tLS1cclxuXHJcbiR0YWItbWFyZ2luOiAwO1xyXG4kdGFiLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XHJcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xyXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XHJcbiR0YWItZXhwYW5kLW1heDogNjtcclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcclxuXHJcbi8vIDUyLiBUaHVtYm5haWxcclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XHJcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XHJcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xyXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XHJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDUzLiBUaXRsZSBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XHJcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XHJcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xyXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xyXG5cclxuLy8gNTQuIFRvb2x0aXBcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJHByaW1hcnktY29sb3I7XHJcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDIycmVtO1xyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XHJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XHJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyA1NS4gVG9wIEJhclxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XHJcbiR0b3BiYXItYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcclxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcclxuXHJcbi8vIDU2LiBYeSBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4keHktZ3JpZDogdHJ1ZTtcclxuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xyXG4kZ3JpZC1jb2x1bW5zOiAxMjtcclxuJGdyaWQtbWFyZ2luLWd1dHRlcnM6IChcclxuICBzbWFsbDogMTZweCxcclxuICBtZWRpdW06IDE2cHgsXHJcbiAgbGFyZ2U6IDMycHhcclxuKTtcclxuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcclxuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcclxuJGdyaWQtY29udGFpbmVyLW1heDogJGdsb2JhbC13aWR0aDtcclxuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vIFxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgY2xpcC1wYXRoOiBub25lO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogdHJ1ZSwgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlKSB7XG4gICRsaXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbGlzdDogc2wtcmVtb3ZlKCRsaXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSBpbiAkbGlzdCB7XG4gICAgJC16Zi1zaXplOiAkbmFtZSAhZ2xvYmFsO1xuXG4gICAgQGlmICRhdXRvLWluc2VydC1icmVha3BvaW50cyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gT3V0cHV0cyBDU1MgY2xhc3NlcyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gZm91bmRhdGlvbi1ncmlkKFxuICAkcm93OiAncm93JyxcbiAgJGNvbHVtbjogJ2NvbHVtbicsXG4gICRjb2x1bW4tcm93OiAnY29sdW1uLXJvdycsXG4gICRndXR0ZXI6ICdndXR0ZXInLFxuICAkcHVzaDogJ3B1c2gnLFxuICAkcHVsbDogJ3B1bGwnLFxuICAkY2VudGVyOiAnY2VudGVyZWQnLFxuICAkdW5jZW50ZXI6ICd1bmNlbnRlcmVkJyxcbiAgJGNvbGxhcHNlOiAnY29sbGFwc2UnLFxuICAkdW5jb2xsYXBzZTogJ3VuY29sbGFwc2UnLFxuICAkb2Zmc2V0OiAnb2Zmc2V0JyxcbiAgJGVuZDogJ2VuZCcsXG4gICRleHBhbmRlZDogJ2V4cGFuZGVkJyxcbiAgJGJsb2NrOiAnYmxvY2snXG4pIHtcbiAgLy8gUm93XG4gIC4jeyRyb3d9IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgIC8vIENvbGxhcHNpbmdcbiAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblxuICAgICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIChmdWxsLXdpZHRoKSByb3dcbiAgICAmLiN7JGV4cGFuZGVkfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguI3skZXhwYW5kZWR9KSAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgQGlmIHR5cGUtb2YoJGdyaWQtY29sdW1uLWd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgLy8gU3RhdGljICh1bnJlc3BvbnNpdmUpIHJvdyBndXR0ZXJzXG4gICAgICAvL1xuICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHtcbiAgICAgICAgJi4jeyRndXR0ZXJ9LSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkdmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuI3skY29sdW1ufSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2w7XG5cbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJi4jeyRlbmR9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gIC4jeyRyb3d9IC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gQ29sdW1uIHdpZHRoXG4gICAgICAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSgkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgICAgQGlmICRpIDwgJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKCRpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtJGkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skb2Zmc2V0fS0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLW9mZigkbyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgkaSwgJy4jeyRjb2x1bW59Jyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skZXhwYW5kZWR9LiN7JHJvd30gLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0uI3skcm93fSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cblxuICAgIC8vIFBvc2l0aW9uaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjZW50ZXJ9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhjZW50ZXIpO1xuICAgIH1cblxuICAgIC8vIEd1dHRlciBhZGp1c3RtZW50XG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNlbnRlcn0sXG4gICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0wLFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tMCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC11bnBvcztcbiAgICB9XG4gIH1cblxuICAvLyBCbG9jayBncmlkIGNvbHVtbnNcbiAgLiN7JGNvbHVtbn0tI3skYmxvY2t9IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1tYXJnaW47XG4gIH1cblxuICBAaWYgJGNvbHVtbiA9PSAnY29sdW1uJyBhbmQgaGFzLXZhbHVlKCRncmlkLWNvbHVtbi1hbGlhcykge1xuICAgIC4jeyRncmlkLWNvbHVtbi1hbGlhc30ge1xuICAgICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG4gICAgICBAZXh0ZW5kIC5jb2x1bW47XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGNvbHVtbnMgZGVmaW5lZCBpbnNpZGUgdGhpcyBtaXhpbiB0byB1c2UgYSBkaWZmZXJlbnQgY29sdW1uIGNvdW50LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkcm9vdCBbZmFsc2VdXG4vLy8gICBJZiBgZmFsc2VgLCBzZWxlY3RvcnMgaW5zaWRlIHRoaXMgbWl4aW4gd2lsbCBuZXN0IGluc2lkZSB0aGUgcGFyZW50IHNlbGVjdG9yLlxuLy8vICAgSWYgYHRydWVgLCBzZWxlY3RvcnMgd2lsbCBub3QgbmVzdC5cbkBtaXhpbiBncmlkLWNvbnRleHQoXG4gICRjb2x1bW5zLFxuICAkcm9vdDogZmFsc2Vcbikge1xuICAvLyBTdG9yZSB0aGUgY3VycmVudCBjb2x1bW4gY291bnQgc28gaXQgY2FuIGJlIHJlLXNldCBsYXRlclxuICAkb2xkLWdyaWQtY29sdW1uLWNvdW50OiAkZ3JpZC1jb2x1bW4tY291bnQ7XG4gICRncmlkLWNvbHVtbi1jb3VudDogJGNvbHVtbnMgIWdsb2JhbDtcblxuICBAaWYgJHJvb3Qge1xuICAgIEBhdC1yb290IHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBvbGQgY29sdW1uIGNvdW50XG4gICRncmlkLWNvbHVtbi1jb3VudDogJG9sZC1ncmlkLWNvbHVtbi1jb3VudCAhZ2xvYmFsO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkY2YgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gaW5jbHVkZSBhIGNsZWFyZml4LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGNmIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gSW52ZXJ0cyB0aGUgbWFyZ2lucyBvZiBhIHJvdyB0byBuZXN0IGl0IGluc2lkZSBvZiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAkbWFyZ2luOiByZW0tY2FsYygtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi1zaXplKSkgLyAyICogLTE7XG5cbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldCBhIGdyaWQgcm93IHNpemVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbkBtaXhpbiBncmlkLXJvdy1zaXplKCRzaXplOiAkZ3JpZC1yb3ctd2lkdGgpIHtcbiAgQGlmICRzaXplID09IGV4cGFuZCB7XG4gICAgJHNpemU6IG5vbmU7XG4gIH1cblxuICBtYXgtd2lkdGg6ICRzaXplO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkYmFzZS1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldHMgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVybiB0aGVuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFVuLWNvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlLWFkZGluZyB0aGUgcGFkZGluZy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLlxuQG1peGluIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbHVtbi1ndXR0ZXIoKS4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXIpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bmNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bmNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sLWd1dHRlcigpLiBncmlkLWNvbC11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcik7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgd2lkdGggb2YgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR3aWR0aCBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIHRvIG1ha2UgdGhlIGNvbHVtbi4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICB3aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tc2l6ZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tc2l6ZVxuQG1peGluIGdyaWQtY29sLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBEaXJlY3Rpb24gYW5kIGFtb3VudCB0byBtb3ZlLiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudCBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGUgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LiBTZXQgdG8gY2VudGVyIHRvIGNlbnRlciB0aGUgY29sdW1uLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBvciBjZW50ZXIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJhc2UtZ3JpZC1jbGFzc2VzIHtcblxuICAvLyBHcmlkIENvbnRhaW5lclxuICAuZ3JpZC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuXG4gICAgJi5mbHVpZCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlKTtcbiAgICB9XG5cbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSwgMCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICAuZ3JpZC14IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkO1xuICB9XG5cbiAgLmNlbGwge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgpO1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRncmlkLWNvbHVtbnMsIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuXG4gICAgJi5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICB9XG5cbiAgICAmLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgfVxuICAuZ3JpZC14IHtcbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQXV0byB3aWR0aFxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgJiBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgLmdyaWQteCB7XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmNlbGwnLCBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkaSwgJy5jZWxsJywgZmFsc2UsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkYnJlYWtwb2ludDogJGJwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmNlbGwnLCBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkdmVydGljYWw6IHRydWUsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogI3skb3BlcmF0b3J9JGd1dHRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2VpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ251bWJlcicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVycykgLyAyO1xuXG4gICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogI3skb3BlcmF0b3J9JGd1dHRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZSB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyIG9yIDEvMy5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiAkZ3JpZC1jb2x1bW5zXG4pIHtcbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIG4gb2YgbiBhbmQgbnVtYmVyIGNvdW50c1xuICBAaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRzaXplKSA9PSAnJScge1xuICAgICAgJHNpemU6ICRzaXplO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkc2l6ZSA8IDEge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSAvICRncmlkLWNvbHVtbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBvciBcIm4vblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRzaXplKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIiBvciBcIm4vblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKG50aCgkc2l6ZSwgMSkgLyBudGgoJHNpemUsIDMpKTtcbiAgICB9XG4gIH1cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiIC8gXCJuL25cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkc2l6ZTtcbn1cblxuLy8vIFNldHMgYmFzZSBmbGV4IHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2Agb3IgYHNocmlua2AuXG5AbWl4aW4geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICAvLyBUaGlzIGlzIHRoZSBiYXNlIHN0eWxlLCBhbGwgb3RoZXJzIGluaGVyaXQgZnJvbSBpdFxuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgfVxuICBAZWxzZWlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICB9XG4gIEBlbHNlaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbn1cblxuLy8vIFJlc2V0cyBhIGNlbGxzIHdpZHRoIChvciBoZWlnaHQgaWYgdmVydGljYWwgaXMgdHJ1ZSkgYXMgd2VsbCBhcyBzdHJpcHMgaXRzIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1yZXNldCgkdmVydGljYWw6IHRydWUpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHdpZHRoLCBoZWlnaHQpO1xuICAjeyRkaXJlY3Rpb259OiBhdXRvO1xufVxuXG4vLyBTZXRzIG91ciBjZWxsIHdpZHRocyBvciBoZWlnaHRzIGRlcGVuZGluZyBvbiBndXR0ZXIgdHlwZS5cbkBtaXhpbiAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkbWFyZ2luLWd1dHRlciwgJHZlcnRpY2FsKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbiAgQGVsc2VpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgfVxuICBAZWxzZWlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICN7eHktY2VsbC1zaXplKCRzaXplKX0sIGNhbGMoI3t4eS1jZWxsLXNpemUoJHNpemUpfSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKGRlZmF1bHQpIGZvciAxMDAlIHdpZHRoLCBgYXV0b2AgdG8gdXNlIHVwIGF2YWlsYWJsZSBzcGFjZSBhbmQgYHNocmlua2AgdG8gdXNlIHVwIG9ubHkgcmVxdWlyZWQgc3BhY2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgQGlmKCRicmVha3BvaW50ID09IG51bGwpIHtcbiAgICAvLyBJZiBgJGJwLXNpemVgIGlzIGF2YWlsYWJsZSB0aGVuIHVzZSB0aGlzLCBvdGhlcndpc2UgcmV2ZXJ0IHRvIHRoZSBzbWFsbGVzdCBicC5cbiAgICBAaWYodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEdldCBvdXIgZ3V0dGVycyBmcm9tIG1hcCBpZiBhdmFpbGFibGUsIGlmIG5vdCBtYXAganVzdCByZXR1cm4gdGhlIHZhbHVlLlxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuXG4gIC8vIEJhc2UgZmxleCBwcm9wZXJ0aWVzXG4gIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgQGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRndXR0ZXIsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsIDAsICR2ZXJ0aWNhbCk7XG4gIH1cblxuICBAaWYgJGd1dHRlci1vdXRwdXQge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcblxuICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgfVxuXG4gIC8vIElmIHdlIHdhbnQgdG8gb3V0cHV0IHRoZSBndXR0ZXJzXG4gIEBpZigkZ3V0dGVyLW91dHB1dCkge1xuICAgIC8vIFRPRE86IEZpZ3VyZSBvdXQgaWYgd2UgbmVlZCB0byBwYXNzIGJyZWFrcG9pbnQgaW4gaGVyZSB0b28uXG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gIG9yIGBwYWRkaW5nYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoJHNpemUsICRndXR0ZXItb3V0cHV0LCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0L2JvdHRvbSBieSBgJG5gIGNvbHVtbnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFNpemUgdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgemYtY2VsbCgpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIFNldHMgdGhlIGRpcmVjdGlvbiBvZiB0aGUgb2Zmc2V0LiBJZiBzZXQgdG8gdHJ1ZSB3aWxsIGFwcGx5IG1hcmdpbi10b3AgaW5zdGVhZC5cbkBtaXhpbiB4eS1jZWxsLW9mZnNldChcbiAkbixcbiAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwsICd0b3AnLCAkZ2xvYmFsLWxlZnQpO1xuXG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRicmVha3BvaW50LCAkZ3V0dGVycykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcbiAgICAkc2l6ZTogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCBjYWxjKCN7eHktY2VsbC1zaXplKCRuKX0gKyAjeyRndXR0ZXJ9KSwgI3t4eS1jZWxsLXNpemUoJG4pfSk7XG5cbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skc2l6ZX07XG4gIH1cbn1cbiIsIi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgaGVpZ2h0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB3aWR0aDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNb2RpZmllcyBhIGNlbGwgdG8gZ2l2ZSBpdCBcImJsb2NrXCIgYmVoYXZpb3IgKG92ZXJmbG93IGF1dG8sIGluZXJ0aWFsIHNjcm9sbGluZylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuQG1peGluIHh5LWNlbGwtYmxvY2soXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkcHJvcGVydHk6IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCAnb3ZlcmZsb3cteScsICdvdmVyZmxvdy14Jyk7XG5cbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5cGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7ICBcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIFxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG5cbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cbiAgYS5idXR0b24ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICB9XG5cbiAgICAuaXMtYWN0aXZlID4gJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTMnO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uLW1lbnVcbi8vLy9cblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBhY2NvcmRpb24gbWVudXMgaGF2ZSB0aGUgZGVmYXVsdCBhcnJvdyBzdHlsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIGJvcmRlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBMaXN0XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgaGVpZ2h0LlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG4gICYuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDFyZW07XG4gIH1cbiAgJi5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cbn1cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51IHtcblxuICAuYWNjb3JkaW9uLW1lbnUge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgICBib3JkZXItdG9wOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1yaWdodDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItbGVmdDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiAgICB9XG4gICAgXG4gICAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luLCByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGxpIHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gIH1cblxuICAvLyBTdWJtZW51IHRvZ2dsZVxuICAuc3VibWVudS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICB3aWR0aDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ7XG5cbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjtcblxuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kIHtcbiAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQWRkIHRoZSBhcnJvdyB0byB0aGUgdG9nZ2xlXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDZweCwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuXG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gUm90YXRlIHRoZSBhcnJvdyB3aGVuIG1lbnUgaXMgb3BlblxuICAuc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIH1cblxuICAuc3VibWVudS10b2dnbGUtdGV4dCB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGFuIGhvdmVyZWQgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBiYWRnZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgYSBiYWRnZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1taW53aWR0aDogMi4xZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBiYWRnZS5cbkBtaXhpbiBiYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAkYmFkZ2UtbWlud2lkdGg7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tYmFkZ2Uge1xuICAuYmFkZ2Uge1xuICAgIEBpbmNsdWRlIGJhZGdlO1xuXG4gICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJhZGdlLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGJhZGdlLWNvbG9yLCAkYmFkZ2UtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzIHtcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBAaW5jbHVkZSBicmVhZGNydW1icy1jb250YWluZXI7XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvbi1ncm91cFxuLy8vL1xuXG4vLy8gTWFyZ2luIGZvciBidXR0b24gZ3JvdXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYnV0dG9ucyB0aGF0IGNhbiBiZSBpbiBhbiBldmVuLXdpZHRoIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGV0ZXJtaW5lcyBpZiAkYnV0dG9uLXJhZGl1cyBpcyBhcHBsaWVkIHRvIGVhY2ggYnV0dG9uIG9yIHRoZSBidXR0b24gZ3JvdXAgYXMgYSB3aG9sZS4gVXNlICRnbG9iYWwtcmFkaXVzIGluIF9zZXR0aW5ncy5zY3NzIHRvIGNoYW5nZSByYWRpdXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkY2hpbGQtc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxuICAkY2hpbGQtc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1tYXJnaW47XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbiAgI3skY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gT25lIGNoaWxkXG4gICAgICAmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLy8gVHdvIG9yIG1vcmUgY2hpbGRyZWVuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZSgxIC8gJGkpfSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nICogLSRidXR0b25ncm91cC1leHBhbmQtbWF4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy8vIFVuLXN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC11bnN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24tZ3JvdXAge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggR3JvdXBcbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDsgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZCxcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLFxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdGFjaztcbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgZm9yY2UtZWxlbWVudC1uZXN0aW5nXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FsbG91dFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZhZGUgdmFsdWUgZm9yIGNhbGxvdXQgYmFja2dyb3VuZHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBpbm5lciBwYWRkaW5nIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cywgaWYgdGhlIGNhbGxvdXQgaGFzIGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBbW91bnQgdG8gdGludCBsaW5rcyB1c2VkIHdpdGhpbiBjb2xvcmVkIHBhbmVscy4gU2V0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSB0aGlzIGZlYXR1cmUuXG4vLy8gQHR5cGUgTnVtYmVyIHwgQm9vbGVhblxuJGNhbGxvdXQtbGluay10aW50OiAzMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYSBjYWxsb3V0LCBpbmNsdWRpbmcgcGFkZGluZyBhbmQgbWFyZ2luLlxuQG1peGluIGNhbGxvdXQtYmFzZSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46ICRjYWxsb3V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGNhbGxvdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRjYWxsb3V0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGNhbGxvdXQtcmFkaXVzO1xuXG4gIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgcXVpY2sgc3R5bGVzIGZvciBhIGNhbGxvdXQgdXNpbmcgYSBzaW5nbGUgY29sb3IgYXMgYSBiYXNlbGluZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQtc3R5bGUoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjYWxsb3V0LWJhY2tncm91bmQtZmFkZSk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGNhbGxvdXQtZm9udC1jb2xvciwgJGNhbGxvdXQtZm9udC1jb2xvci1hbHQpKTtcbn1cblxuQG1peGluIGNhbGxvdXQtc2l6ZSgkcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhbGxvdXQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0KCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBjYWxsb3V0LWJhc2U7XG4gIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FsbG91dCB7XG4gIC5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBjYWxsb3V0O1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoMC41cmVtKTtcbiAgICB9XG5cbiAgICAmLmxhcmdlIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgzcmVtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhcmRcbi8vLy9cblxuLy8vIERlZnVhbHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYXJkcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjYXJkIHNoYWRvdy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4uXG4vLy8gQHR5cGUgbnVtYmVyXG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBmb250IGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIC0gQm90dG9tIG1hcmdpbiBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRib3JkZXIgLSBCb3JkZXIgYXJvdW5kIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhZGl1cyAtIGJvcmRlciByYWRpdXMgb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hhZG93IC0gYm94IHNoYWRvdyBvZiB0aGUgY2FyZC5cbkBtaXhpbiBjYXJkLWNvbnRhaW5lcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGNhcmQtZm9udC1jb2xvcixcbiAgJG1hcmdpbjogJGNhcmQtbWFyZ2luLWJvdHRvbSxcbiAgJGJvcmRlcjogJGNhcmQtYm9yZGVyLFxuICAkcmFkaXVzOiAkY2FyZC1ib3JkZXItcmFkaXVzLFxuICAkc2hhZG93OiAkY2FyZC1zaGFkb3dcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG5cbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgZGl2aWRlci5cbkBtaXhpbiBjYXJkLWRpdmlkZXIoXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1kaXZpZGVyLWJhY2tncm91bmQsXG4gICRwYWRkaW5nOiAkY2FyZC1wYWRkaW5nXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgc2VjdGlvbi5cbkBtaXhpbiBjYXJkLXNlY3Rpb24oXG4gICRwYWRkaW5nOiAkY2FyZC1wYWRkaW5nXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FyZCB7XG4gIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBjYXJkLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5jYXJkLWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIGNhcmQtZGl2aWRlcjtcbiAgfVxuXG4gIC5jYXJkLXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGNhcmQtc2VjdGlvbjtcbiAgfVxuXG4gIC8vIEZvciBJRSAxMSAtIEZsZXhidWdcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncy9pc3N1ZXMvNzVcbiAgLmNhcmQtaW1hZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoc21hbGwpIH1cbiAgICAmLCAmLm1lZGl1bSB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKG1lZGl1bSkgfVxuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJpbGxkb3duXG4vLy8vXG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnR5IHRvIHVzZSBmb3IgYW5pbWF0aW5nIG1lbnVzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhciAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYXJyb3dzIHRvIGRyaWxsZG93biBpdGVtcyB3aXRoIHN1Ym1lbnVzLCBhcyB3ZWxsIGFzIHRoZSBiYWNrIGJ1dHRvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IGl0ZW0gcGFkZGluZyBpbiB0aGUgc3VibWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gc3VibWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtcmlnaHQpO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gIH1cblxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5hbmltYXRlLWhlaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbiAgICB9XG4gIH1cblxuICAvLyBUaGUgdG9wIGxldmVsIDx1bD5cbiAgLmRyaWxsZG93biB7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQXBwbGllZCB0byBzdWJtZW51IDx1bD5zXG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgICAgdHJhbnNpdGlvbjogJGRyaWxsZG93bi10cmFuc2l0aW9uO1xuXG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIC0xMDAlLCAxMDAlKSk7XG4gICAgICB9XG5cbiAgICAgICYuaXMtY2xvc2luZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgMTAwJSwgLTEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3VibWVudSBpdGVtIHBhZGRpbmdcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmICRkcmlsbGRvd24tYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC43NXJlbTsgLy8gQ3JlYXRlcyBzcGFjZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHRcblxuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LXdpZHRoOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd25cbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBkcm9wZG93biBwYW5lcy4gRWFjaCBzaXplIGlzIGEgQ1NTIGNsYXNzIHlvdSBjYW4gYXBwbHkuXG4vLy8gQHR5cGUgTWFwXG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEFwcGxpZXMgc3R5bGVzIGZvciBhIGJhc2ljIGRyb3Bkb3duLlxuQG1peGluIGRyb3Bkb3duLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG5cbiAgd2lkdGg6ICRkcm9wZG93bi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmc7XG5cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRkcm9wZG93bi1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtc2l6ZTogJGRyb3Bkb3duLWZvbnQtc2l6ZTtcblxuXG4gIC8vIEFsbG93IGFuIGludGVybWl0dGVudCBzdGF0ZSB0byBkbyBwb3NpdGlvbmluZyBiZWZvcmUgbWFraW5nIHZpc2libGUuXG4gICYuaXMtb3BlbmluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLmlzLW9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24ge1xuICAuZHJvcGRvd24tcGFuZSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tY29udGFpbmVyO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUsICRzaXplIGluICRkcm9wZG93bi1zaXplcyB7XG4gICAgLmRyb3Bkb3duLXBhbmUuI3skbmFtZX0ge1xuICAgICAgd2lkdGg6ICRzaXplO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHtcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkub3BlbnMtcmlnaHQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICgkZHJvcGRvd25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmRyb3Bkb3duICYgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLyBXQVJOSU5HOiBXaWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiA2LjRcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvOiBkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8ge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQoKS4gZm91bmRhdGlvbi1mbGV4LXZpZGVvKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbn1cblxuQG1peGluIGZsZXgtdmlkZW8oJHJhdGlvOiAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpbykge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSByZXNwb25zaXZlLWVtYmVkKCkuIGZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW8pO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTYpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMiA6IHBvdygxMCwgJHByZWMpO1xuICAgICRleHBvbmVudDogcm91bmQoJGV4cG9uZW50ICogJHByZWMyKTtcbiAgICAkZGVub21pbmF0b3I6IGdjZCgkZXhwb25lbnQsICRwcmVjMik7XG4gICAgQHJldHVybiBudGgtcm9vdChwb3coJGJhc2UsICRleHBvbmVudCAvICRkZW5vbWluYXRvciksICRwcmVjMiAvICRkZW5vbWluYXRvciwgJHByZWMpO1xuICB9XG5cbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHBvbmVudCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogJGJhc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRleHBvbmVudCA8IDEge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gbnRoLXJvb3QoJG51bSwgJG46IDIsICRwcmVjOiAxMikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvTnRoX3Jvb3QjSmF2YVNjcmlwdFxuICAkeDogMTtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRwcmVjIHtcbiAgICAkeDogMSAvICRuICogKCgkbiAtIDEpICogJHggKyAoJG51bSAvIHBvdygkeCwgJG4gLSAxKSkpO1xuICB9XG5cbiAgQHJldHVybiAkeDtcbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIGZvciBhIGdpdmVuIHJhdGlvLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhdGlvIC0gUmF0aW8gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0LCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG4vLy8gQHJldHVybiB7TnVtYmVyfSBBIHBlcmNlbnRhZ2UgdmFsdWUgZm9yIHRoZSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHdpZHRoIG9mIGEgcmVzcG9uc2l2ZSBjb250YWluZXIuXG5AZnVuY3Rpb24gcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nXSAtIFBhZGRpbmcgYmV0d2VlbiBzZWN0aW9ucy5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc2VjdGlvbigkcGFkZGluZzogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZykge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkcGFkZGluZztcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGluZztcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHN0YWNrIHNlY3Rpb25zIG9mIGEgbWVkaWEgb2JqZWN0LiBBcHBseSB0aGlzIHRvIHRoZSBzZWN0aW9uIGVsZW1lbnRzLCBub3QgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAkbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZWRpYS1vYmplY3Qge1xuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3QtY29udGFpbmVyO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0gLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc3RhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmLm1pZGRsZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICAgICYuYm90dG9tIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9mZi1jYW52YXNcbi8vLy9cblxuLy8vIFdpZHRoIG1hcCBvZiBhIGxlZnQvcmlnaHQgb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBtYXAgb2YgYSB0b3AvYm90dG9tIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTWFwXG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGZvciB0aGUgb2ZmLWNhbnZhcyBvdmVybGFwIHBhbmVsLlxuLy8vIEB0eXBlIFNoYWRvd1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBzaXplIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweCAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgY29sb3IgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgY29udGVudCBvdmVybGF5LlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTEgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYHB1c2hgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgb3ZlcmxhcGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHVzaW5nIHRoZSBgcmV2ZWFsLWZvci0qYCBjbGFzc2VzIG9yIG1peGluLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIExlbmd0aCBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzICFkZWZhdWx0O1xuXG4vLy8gVGltaW5nIGZ1bmN0aW9uIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhIHJldmVhbGVkIG9mZi1jYW52YXMgd2lsbCBiZSBmaXhlZC1wb3NpdGlvbiwgYW5kIHNjcm9sbCB3aXRoIHRoZSBzY3JlZW4uXG4vLy8gQHR5cGUgQm9vbFxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgb3ZlcmxheSB0aGF0IGFwcGVhcnMgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBDU1MgY2xhc3MgdXNlZCBmb3IgdGhlIG1haW4gY29udGVudCBhcmVhLiBUaGUgb2ZmLWNhbnZhcyBtaXhpbnMgdXNlIHRoaXMgdG8gdGFyZ2V0IHRoZSBwYWdlIGNvbnRlbnQuXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNlbGluZSBzdHlsZXMgZm9yIG9mZi1jYW52YXMuIFRoaXMgQ1NTIGlzIHJlcXVpcmVkIHRvIG1ha2UgdGhlIG90aGVyIHBpZWNlcyB3b3JrLlxuQG1peGluIG9mZi1jYW52YXMtYmFzaWNzIHtcblxuICAvLy8gVHJhbnNmb3JtIGRlcHJlY2F0ZWQgc2l6ZSBzZXR0aW5ncyBpbnRvIG1hcCAmIHNob3cgd2FybmluZ1xuICBAaWYgdmFyaWFibGUtZXhpc3RzKG9mZmNhbnZhcy1zaXplKSB7XG4gICAgJG9mZmNhbnZhcy1zaXplczogKHNtYWxsOiAkb2ZmY2FudmFzLXNpemUsIG1lZGl1bTogJG9mZmNhbnZhcy1zaXplKSAhZ2xvYmFsO1xuICAgIEB3YXJuICckb2ZmY2FudmFzLXNpemUgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYW55bW9yZSEgUGxlYXNlIHVwZGF0ZSB5b3VyIHNldHRpbmdzIGFuZCB1c2UgdGhlIG1hcCAkb2ZmY2FudmFzLXNpemVzIGluc3RlYWQnO1xuICB9XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cblxuICAvLyBDaGVja3MgdGhlIHotaW5kZXhlcyBhbmQgaW5jcmVhc2UgdGhlbSBkdWUgdG8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuXG4gIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIG92ZXJsYXkncyB6LWluZGV4IGlzIG5ldyBzaW5jZSB2Ni40IGFuZCBtYXkgYmUgaWRlbnRpY2FsIHRvIHRoZSB1c2VyIGN1c3RvbSBzZXR0aW5ncyBvZiB0aGUgcHVzaCB6LWluZGV4LlxuICBAaWYgJG9mZmNhbnZhcy1wdXNoLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1wdXNoLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleCA8PSAkb2ZmY2FudmFzLXB1c2gtemluZGV4IHsgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cblxuICAvLyBIaWRlcyBvdmVyZmxvdyBvbiBib2R5IHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuICAuaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBvdmVybGF5IChnZW5lcmF0ZWQgYnkgSmF2YVNjcmlwdClcbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZywgdmlzaWJpbGl0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG5cbiAgICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3NhYmxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHdyYXBwZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy13cmFwcGVyKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2UoXG4gICRiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhY2tncm91bmQsXG4gICR0cmFuc2l0aW9uOiAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsXG4gICRmaXhlZDogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICBAaWYgJGZpeGVkID09IHRydWUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLy8gU2V0IHRoZSBvZmYtY2FudmFzIHotaW5kZXguXG4gIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuICB9XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgLy8gSGlkZSBpbmFjdGl2ZSBvZmYtY2FudmFzIHdpdGhpbiB0aGUgY29udGVudCB0aGF0IGhhdmUgdGhlIHNhbWUgcG9zaXRpb25cbiAgJi5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE92ZXJsYXAgb25seSBzdHlsZXMuXG4gICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4O1xuXG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6ICRvZmZjYW52YXMtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldHMgdHJhbnNmb3JtIHRvIDAgdG8gc2hvdyBhbiBvZmYtY2FudmFzIHBhbmVsLlxuICAmLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBwb3NpdGlvbiBhbiBvZmYtY2FudmFzIHBhbmVsIHRvIHRoZSBsZWZ0L3JpZ2h0L3RvcC9ib3R0b20uXG5AbWl4aW4gb2ZmLWNhbnZhcy1wb3NpdGlvbihcbiAgJHBvc2l0aW9uOiBsZWZ0LFxuICAkb3JpZW50YXRpb246IGhvcml6b250YWwsXG4gICRzaXplczogaWYoJG9yaWVudGF0aW9uID09IGhvcml6b250YWwsICRvZmZjYW52YXMtc2l6ZXMsICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMpXG4pIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSBpcyBzZXQsIGFkZCBpbm5lciBib3gtc2hhZG93LlxuICAvLyBUaGlzIG1pbWljcyB0aGUgb2ZmLWNhbnZhcyBwYW5lbCBoYXZpbmcgYSBsb3dlciB6LWluZGV4LCB3aXRob3V0IGhhdmluZyB0byBoYXZlIG9uZS5cbiAgQGlmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUge1xuICAgICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHJpZ2h0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhsZWZ0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3coYm90dG9tLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3codG9wLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLy8vIFNldHMgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIG9mZi1jYW52YXMtY29udGVudCgpIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgLy8gVHJhbnNmb3JtIHNjb3BlIHVudGlsIHRoZSBlbGVtZW50IGlzIGNsb3NlZCAobWFrZXMgc3VyZSB0cmFuc2l0aW9uZW5kIGdldHMgdHJpZ2dlcmVkKVxuICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgZWxlbWVudCAmIGNvbnRlbnQsIG5lc3RlZCBpbiBhbm90aGVyIGNvbnRlbnRcbiAgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRoYXQgcmV2ZWFsIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1yZXZlYWwoXG4kcG9zaXRpb246IGxlZnQsXG4kemluZGV4OiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsXG4kY29udGVudDogJG1haW5jb250ZW50LWNsYXNzLFxuJGJyZWFrcG9pbnQ6IHNtYWxsXG4pIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gIEBpZiBub3QgJG9mZmNhbnZhcy1maXhlZC1yZXZlYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBDb25zaWRlciByZXZlYWxlZCBlbGVtZW50IGlzIG5lc3RlZCBpbiBjb250ZW50XG4gIC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgQGF0LXJvb3QgLiN7JGNvbnRlbnR9Lmhhcy1yZXZlYWwtI3skcG9zaXRpb259IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSAocHJpb3IgdG8gdjYuNClcbiAgJiB+IC4jeyRjb250ZW50fSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vLyBPdmVycmlkZXMgdGhlIG9mZi1jYW52YXMgc3R5bGVzXG5AbWl4aW4gaW4tY2FudmFzKCkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gIHdpZHRoOiBpbmhlcml0O1xuICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbjogaW5oZXJpdDtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5wb3NpdGlvbi1sZWZ0LFxuICAmLnBvc2l0aW9uLXJpZ2h0LFxuICAmLnBvc2l0aW9uLXRvcCxcbiAgJi5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vZmYtY2FudmFzIHtcbiAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNpY3M7XG5cbiAgLy8gT2ZmLWNhbnZhcyB3cmFwcGVyXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcHBlcjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyXG4gIC5vZmYtY2FudmFzIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2U7XG5cbiAgICAvLyBGb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSBmb3IgbmVzdGVkIG9mZi1jYW52YXMgYmVjYXVzZSBmaXhlZCBkb2Vzbid0IHdvcmsgZm9yIHB1c2ggdHJhbnNpdGlvbiB3aXRoaW4gdGhlIHRyYW5zZm9ybSBzY29wZS5cbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgICAgLy8gTk9URTogc2luY2Ugb3ZlcmxhcCB0cmFuc2l0aW9uIGlzIGN1cnJlbnRseSBmb3JjZWQgaWYgbmVzdGVkLCB0aGVyZSdzIG5vIG5lZWQgdG8gZm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgdW50aWwgbmVzdGVkIHB1c2ggdHJhbnNpdGlvbiBpcyBzdXBwb3J0ZWQuXG4gICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXIgd2l0aCBhYnNvbHV0ZSBwb3NpdGlvblxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlKCRmaXhlZDogZmFsc2UpO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBwb3NpdGlvbiBjbGFzc2VzXG4gIC5wb3NpdGlvbi1sZWZ0ICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihsZWZ0LCAgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi1yaWdodCAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihyaWdodCwgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi10b3AgICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbih0b3AsICAgIHZlcnRpY2FsKTsgfVxuICAucG9zaXRpb24tYm90dG9tICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24oYm90dG9tLCB2ZXJ0aWNhbCk7IH1cblxuICAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXZlYWwgb2ZmLWNhbnZhcyBwYW5lbCBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwoYm90dG9tLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW92ZSBpbi1jYW52YXMgZm9yIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgaW4tY2FudmFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9yYml0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBhY3RpdmUgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlhbWV0ZXIgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGJldHdlZW4gT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlzdGFuY2UgZnJvbSBzbGlkZSByZWdpb24gZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZyb20gT3JiaXQncyBidWxsZXRzIHRvIHdoYXRldmVyIGNvbnRlbnQgbWF5IGx1cmsgYmVsb3cgaXQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjb250cm9scyB3aGVuIGhvdmVyZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgei1pbmRleCBmb3IgT3JiaXQncyBjb250cm9scy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIG91dGVyIE9yYml0IHdyYXBwZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgT3JiaXQgc2xpZGUgY29udGFpbmVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY29udGFpbmVyYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDsgLy8gUHJldmVudCBGT1VDIGJ5IG5vdCBzaG93aW5nIHVudGlsIEpTIHNldHMgaGVpZ2h0XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5kaXZpZHVhbCBzbGlkZXMgb2YgYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtc2xpZGVgIGNsYXNzLlxuQG1peGluIG9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi5uby1tb3Rpb251aSB7XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHNsaWRlIGNvbnRhaW5pbmcgYW4gaW1hZ2UuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1pbWFnZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gb3JiaXQgc2xpZGUgY2FwdGlvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNhcHRpb25gIGNsYXNzLlxuQG1peGluIG9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZCk7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGluIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgYC5vcmJpdC1uZXh0YCBhbmQgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3NlcyBpbiB0aGUgZGVmYXVsdCBDU1MuXG5AbWl4aW4gb3JiaXQtY29udHJvbCB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICB6LWluZGV4OiAkb3JiaXQtY29udHJvbC16aW5kZXg7XG4gIHBhZGRpbmc6ICRvcmJpdC1jb250cm9sLXBhZGRpbmc7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzLlxuQG1peGluIG9yYml0LXByZXZpb3VzIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBuZXh0IGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LW5leHRgIGNsYXNzLlxuQG1peGluIG9yYml0LW5leHQge1xuICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICN7JGdsb2JhbC1yaWdodH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjb250YWluZXIgb2YgT3JiaXQgYnVsbGV0cy4gLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtYnVsbGV0c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtYnVsbGV0cyB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A7XG4gIG1hcmdpbi1ib3R0b206ICRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIG1hcmdpbjogJG9yYml0LWJ1bGxldC1tYXJnaW47XG5cbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9yYml0IHtcbiAgLm9yYml0IHtcbiAgICBAaW5jbHVkZSBvcmJpdC13cmFwcGVyO1xuICB9XG5cbiAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udGFpbmVyO1xuICB9XG5cbiAgLm9yYml0LXNsaWRlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1zbGlkZTtcbiAgfVxuXG4gIC5vcmJpdC1maWd1cmUge1xuICAgIEBpbmNsdWRlIG9yYml0LWZpZ3VyZTtcbiAgfVxuXG4gIC5vcmJpdC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtaW1hZ2U7XG4gIH1cblxuICAub3JiaXQtY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY2FwdGlvbjtcbiAgfVxuXG4gICVvcmJpdC1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250cm9sO1xuICB9XG5cbiAgLm9yYml0LXByZXZpb3VzIHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LXByZXZpb3VzO1xuICB9XG5cbiAgLm9yYml0LW5leHQge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtbmV4dDtcbiAgfVxuXG4gIC5vcmJpdC1idWxsZXRzIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1idWxsZXRzO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGFiJztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYmInO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwcm9ncmVzcyBiYXIgY29udGFpbmVyLlxuQG1peGluIHByb2dyZXNzLWNvbnRhaW5lciB7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJHByb2dyZXNzLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYWNrZ3JvdW5kO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBtZXRlciBvZiBhIHByb2dyZXNzIGJhci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRleHQgaW4gdGhlIHByb2dyZXNzIG1ldGVyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyLXRleHQge1xuICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyIHtcbiAgLy8gUHJvZ3Jlc3MgYmFyXG4gIC5wcm9ncmVzcyB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtY29udGFpbmVyO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyXG4gIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXI7XG4gIH1cblxuICAvLyBJbm5lciBtZXRlciB0ZXh0XG4gIC5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlci10ZXh0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gW1RPRE9dIENoZWNrIGhvdyBwbHVnaW4gY29uZmlybXMgZGlzYWJsZWQgb3IgdmVydGljYWwgc3RhdHVzXG4vLyBbVE9ET10gQ2hlY2sgaWYgdHJhbnNpdGlvbjogYWxsOyBpcyBuZWNlc3NhcnlcblxuLy8vL1xuLy8vIEBncm91cCBzbGlkZXJcbi8vLy9cblxuLy8vIERlZmF1bHQgc2xpZGVyIHdpZHRoIG9mIGEgdmVydGljYWwgc2xpZGVyLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnRpZXMgdG8gYXBwbHkgdG8gdGhlIHNsaWRlciBoYW5kbGUgYW5kIGZpbGwuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJhY2tncm91bmQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBhY3RpdmUgZmlsbCBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRoZSBzbGlkZXIgaGFuZGxlcy5cbkBtaXhpbiBzbGlkZXItaGFuZGxlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzbGlkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gc2xpZGVyLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG5cbiAgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXNsaWRlciB7XG4gIC8vIENvbnRhaW5lclxuICAuc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItY29udGFpbmVyO1xuICB9XG5cbiAgLy8gRmlsbCBhcmVhXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWZpbGw7XG4gIH1cblxuICAvLyBEcmFnZ2FibGUgaGFuZGxlXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItaGFuZGxlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLnNsaWRlci5kaXNhYmxlZCxcbiAgLnNsaWRlcltkaXNhYmxlZF0ge1xuICAgIEBpbmNsdWRlIHNsaWRlci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIHNsaWRlclxuICAuc2xpZGVyLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBSVEwgc3VwcG9ydFxuICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgIC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBzd2l0Y2hcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBhY3RpdmUgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodDogMnJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC50aW55IGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnNtYWxsIGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAubGFyZ2UgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgc3dpdGNoIGNvbnRhaW5lciBhbmQgcGFkZGxlLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYSBzd2l0Y2ggcGFkZGxlIGFuZCB0aGUgZWRnZSBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciByYWRpdXMgb2YgdGhlIHN3aXRjaCBwYWRkbGVcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBzd2l0Y2ggdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gbWFrZSB0aGVtIHZhcmlhYmxlc1xuLy8gYXNrIGFib3V0IGFjY2Vzc2liaWxpdHkgb24gbGFiZWxcbi8vIGNoYW5nZSBjbGFzcyBuYW1lIGZvciB0ZXh0XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgY29udGFpbmVyIGNsYXNzLlxuQG1peGluIHN3aXRjaC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206ICRzd2l0Y2gtbWFyZ2luO1xuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFRoZXNlIHByb3BlcnRpZXMgY2FzY2FkZSBkb3duIHRvIHRoZSBzd2l0Y2ggdGV4dFxuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggaW5wdXQuIEFwcGx5IHRoaXMgdG8gYW4gYDxpbnB1dD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGJhY2tncm91bmQgYW5kIHBhZGRsZSBvZiBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byBhIGA8bGFiZWw+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXBhZGRsZSB7XG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRzd2l0Y2gtcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLXBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1hY3RpdmUtb2ZmZXN0OiAkc3dpdGNoLXdpZHRoIC0gJHBhZGRsZS13aWR0aCAtICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcblxuICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXJhZGl1cztcbiAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uO1xuXG4gIC8vIFJlc2V0dGluZyB0aGVzZSA8bGFiZWw+IHByZXNldHMgc28gdHlwZSBzdHlsZXMgY2FzY2FkZSBkb3duXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gTmVlZGVkIHRvIG92ZXJyaWRlIHNwZWNpZmljaXR5XG4gIGlucHV0ICsgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gVGhlIHBhZGRsZSBpdHNlbGZcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcGFkZGxlLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBDaGFuZ2UgdGhlIHZpc3VhbCBzdHlsZSB3aGVuIHRoZSBzd2l0Y2ggaXMgYWN0aXZlXG4gIGlucHV0OmNoZWNrZWQgfiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgfiAmIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGFjdGl2ZS9pbmFjdGl2ZSB0ZXh0IGluc2lkZSBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byB0ZXh0IGVsZW1lbnRzIGluc2lkZSB0aGUgc3dpdGNoIGA8bGFiZWw+YC5cbkBtaXhpbiBzd2l0Y2gtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWFjdGl2ZSB7XG4gICN7JGdsb2JhbC1sZWZ0fTogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5hY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtaW5hY3RpdmUge1xuICAjeyRnbG9iYWwtcmlnaHR9OiAxNSU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc2l6ZSBvZiBhIHN3aXRjaCBieSBtb2RpZnlpbmcgdGhlIHNpemUgb2YgdGhlIGJvZHkgYW5kIHBhZGRsZS4gQXBwbHkgdGhpcyB0byBhIHN3aXRjaCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmb250LXNpemUgWzFyZW1dIC0gRm9udCBzaXplIG9mIGxhYmVsIHRleHQgd2l0aGluIHRoZSBzd2l0Y2guXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzd2l0Y2gtaGVpZ2h0IFsycmVtXSAtIEhlaWdodCBvZiB0aGUgc3dpdGNoIGJvZHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkbGUtb2Zmc2V0IFswLjI1cmVtXSAtIFNwYWNpbmcgYmV0d2VlbiB0aGUgc3dpdGNoIHBhZGRsZSBhbmQgdGhlIGVkZ2Ugb2YgdGhlIHN3aXRjaCBib2R5LlxuQG1peGluIHN3aXRjaC1zaXplKFxuICAkZm9udC1zaXplOiAxcmVtLFxuICAkc3dpdGNoLWhlaWdodDogMnJlbSxcbiAgJHBhZGRsZS1vZmZzZXQ6IDAuMjVyZW1cbikge1xuXG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkcGFkZGxlLW9mZnNldDtcblxuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgfVxuXG4gIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAkcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtb2Zmc2V0O1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zd2l0Y2gge1xuICAvLyBDb250YWluZXIgY2xhc3NcbiAgLnN3aXRjaCB7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gPGlucHV0PiBlbGVtZW50XG4gIC5zd2l0Y2gtaW5wdXQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1pbnB1dDtcbiAgfVxuXG4gIC8vIDxsYWJlbD4gZWxlbWVudFxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXBhZGRsZTtcbiAgfVxuXG4gIC8vIEJhc2UgbGFiZWwgdGV4dCBzdHlsZXNcbiAgJXN3aXRjaC10ZXh0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dDtcbiAgfVxuXG4gIC8vIEFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtYWN0aXZlO1xuICB9XG5cbiAgLy8gSW5hY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtaW5hY3RpdmU7XG4gIH1cblxuICAvLyBTd2l0Y2ggc2l6ZXNcbiAgLnN3aXRjaC50aW55IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMCksICRzd2l0Y2gtaGVpZ2h0LXRpbnksICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cblxuICAuc3dpdGNoLnNtYWxsIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMiksICRzd2l0Y2gtaGVpZ2h0LXNtYWxsLCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5sYXJnZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTYpLCAkc3dpdGNoLWhlaWdodC1sYXJnZSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWVsZW1lbnQtbmVzdGluZywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCBzdGFja2VkIHRhYmxlIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLXVuc3RyaXBlKCkge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICB0YWJsZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhc2UgLSBDb2xvciB0byBjaGVjayBsdW1pbmFuY2UuXG4vLy8gQHBhcmFtIHtMaXN0fSAkY29sb3JzIFsoJHdoaXRlLCAkYmxhY2spXSAtIENvbG9ycyB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9sZXJhbmNlIFskZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlXSAtIENvbnRyYXN0IHRvbGVyYW5jZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZSkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0LXdhcm5pbmdzIGFuZCAkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYGV4cGFuZC1uYCBjbGFzc2VzIHRvIGluY2x1ZGUgaW4gdGhlIENTUy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aHVtYm5haWxcbi8vLy9cblxuLy8vIEJvcmRlciBhcm91bmQgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBCb3JkZXJcbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BydGllcyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGh1bWJuYWlsIHN0eWxlcyB0byBhbiBlbGVtZW50LlxuQG1peGluIHRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkdGh1bWJuYWlsLW1hcmdpbi1ib3R0b207XG5cbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1yYWRpdXM7XG4gIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xuXG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5AbWl4aW4gdGh1bWJuYWlsLWxpbmsge1xuICB0cmFuc2l0aW9uOiAkdGh1bWJuYWlsLXRyYW5zaXRpb247XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI7XG4gIH1cblxuICBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10aHVtYm5haWwge1xuICAudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gIH1cblxuICBhLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsLWxpbms7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRpdGxlLWJhclxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIFdlaWdodFxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIHRoZSBtZW51IGljb24gYW5kIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdGl0bGUtYmFyIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0aXRsZWJhci1jb2xvcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjdXJzb3Igb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBib3R0b20gb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBMaXN0XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgZm9udC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4IHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBjdXJzb3I6ICRoYXMtdGlwLWN1cnNvcjtcbn1cblxuQG1peGluIHRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIHotaW5kZXg6IDEyMDA7XG5cbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJi5ib3R0b20ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCB1cCk7XG4gICAgICBib3R0b206IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi50b3Age1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBkb3duKTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmxlZnQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCByaWdodCk7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGxlZnQpO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlO1xuICB9XG5cbiAgJi5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b3AtYmFyXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXIuIFRoaXMgY29sb3IgYWxzbyBjYXNjYWRlcyB0byBtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHN1Ym1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci4gVXNlZnVsbCBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgdHJhbnNwYXJlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGZvciB0aGUgdG9wIGJhciB0aXRsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGA8aW5wdXQ+YCBlbGVtZW50cyBpbnNpZGUgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggdG9wIGJhciBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRvcCBiYXIgY29udGFpbmVyLlxuQG1peGluIHRvcC1iYXItY29udGFpbmVyIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBwYWRkaW5nOiAkdG9wYmFyLXBhZGRpbmc7XG5cbiAgJixcbiAgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyBkaWZmZXJudCBmcm9tICR0b3BiYXItYmFja2dyb3VuZC1zdWJtZW51XG4gIEBpZiAoJHRvcGJhci1iYWNrZ3JvdW5kICE9ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kKSB7XG4gICAgdWwgdWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzdHJhaW4gd2lkdGggb2YgaW5wdXRzIGJ5IGRlZmF1bHQgdG8gbWFrZSB0aGVtIGVhc2llciB0byBhcnJhbmdlXG4gIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6ICR0b3BiYXItaW5wdXQtd2lkdGg7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gIH1cblxuICAvLyBUaGUgYWJvdmUgc3R5bGVzIHNob3VsZG4ndCBhcHBseSB0byBpbnB1dCBncm91cCBmaWVsZHNcbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgfVxuXG4gIGlucHV0LmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBNYWtlcyBzZWN0aW9ucyBvZiBhIHRvcCBiYXIgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIuXG5AbWl4aW4gdG9wLWJhci1zdGFja2VkIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbmRvZXMgdGhlIENTUyBhcHBsaWVkIGJ5IHRoZSBgdG9wLWJhci1zdGFja2VkKClgIG1peGluLlxuQG1peGluIHRvcC1iYXItdW5zdGFjayB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9wLWJhciB7XG4gIC8vIFRvcCBiYXIgY29udGFpbmVyXG4gIC50b3AtYmFyIHtcbiAgICBAaW5jbHVkZSB0b3AtYmFyLWNvbnRhaW5lcjtcblxuICAgIC8vIFN0YWNrIG9uIHNtYWxsIHNjcmVlbnMgYnkgZGVmYXVsdFxuICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBpbmNsdWRlIHRvcC1iYXItdW5zdGFjaztcbiAgICB9XG5cbiAgICAvLyBHZW5lcmF0ZSBjbGFzc2VzIGZvciBzdGFja2luZyBvbiBlYWNoIHNjcmVlbiBzaXplIChkZWZpbmVkIGluICRicmVha3BvaW50LWNsYXNzZXMpXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAmLnN0YWNrZWQtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdWItc2VjdGlvbnNcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW46ICR0b3BiYXItdGl0bGUtc3BhY2luZztcbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG5cbiAgICAgIC5tZW51LWljb24ge1xuICAgICAgICBib3R0b206IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAoMSAvIDE2KTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtICgxIC8gMTYpO1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdsZWZ0Jykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdsZWZ0JywgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEgeyBcbiAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCIkLXpmLWZsZXgtanVzdGlmeTogKFxuICAnbGVmdCc6IGZsZXgtc3RhcnQsXG4gICdyaWdodCc6IGZsZXgtZW5kLFxuICAnY2VudGVyJzogY2VudGVyLFxuICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4pO1xuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBGb3JtYXQgZm9yIENTUyBjbGFzc2VzIGNyZWF0ZWQgd2l0aCBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IGFwcGVuZCBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNlbGVjdG9ycyBhcmUgY2hhaW5lZCB0byB0aGUgc2VsZWN0b3IgKGAuY2xhc3MuZW50ZXJgKSwgb3IgYXBwZW5kZWQgYXMgYSBuZXcgY2xhc3MgKGAuY2xhc3MtZW50ZXJgKS5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWydtdWktJ10gLSBQcmVmaXggdG8gYWRkIGJlZm9yZSB0aGUgc3RhdGUgb2YgYSBjbGFzcy4gRW50ZXIgYW4gZW1wdHkgc3RyaW5nIHRvIHVzZSBubyBwcmVmaXguXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnLWFjdGl2ZSddIC0gU3VmZml4IHRvIGFkZCB0byB0aGUgYWN0aXZlIHN0YXRlIGNsYXNzLlxuJG1vdGlvbi11aS1jbGFzc2VzOiAoXG4gIGNoYWluOiB0cnVlLFxuICBwcmVmaXg6ICdtdWktJyxcbiAgYWN0aXZlOiAnLWFjdGl2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGUgbmFtZXMgdG8gcmVmZXJlbmNlIHdoZW4gd3JpdGluZyBtb3Rpb24gY2xhc3Nlcy4gVG8gdXNlIG11bHRpcGxlIGNsYXNzIG5hbWVzIGZvciBvbmUgc3RhdGUsIGVudGVyIGEgbGlzdCBvZiBzdHJpbmdzIGluc3RlYWQgb2Ygb25lIHN0cmluZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3RhdGVzOiAoXG4gIGluOiAnZW50ZXInLFxuICBvdXQ6ICdsZWF2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzcGVlZCB0aGF0IHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zIHBsYXkgYXQsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgc3BlZWQuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXNwZWVkczogKFxuICBkZWZhdWx0OiA1MDBtcyxcbiAgc2xvdzogNzUwbXMsXG4gIGZhc3Q6IDI1MG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGVsYXkgdG8gYWRkIGJlZm9yZSBtb3Rpb24sIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZGVsYXkuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWRlbGF5czogKFxuICBkZWZhdWx0OiAwLFxuICBzaG9ydDogMzAwbXMsXG4gIGxvbmc6IDcwMG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucywgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBlYXNpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWVhc2luZ3M6IChcbiAgZGVmYXVsdDogbGluZWFyLFxuICBsaW5lYXI6IGxpbmVhcixcbiAgZWFzZTogZWFzZSxcbiAgZWFzZS1pbjogZWFzZS1pbixcbiAgZWFzZS1vdXQ6IGVhc2Utb3V0LFxuICBlYXNlLWluLW91dDogZWFzZS1pbi1vdXQsXG4gIGJvdW5jZS1pbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpLFxuICBib3VuY2Utb3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxuICBib3VuY2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSksXG4pICFkZWZhdWx0O1xuXG4vLy8gTWlzY2VsbGFuZW91cyBzZXR0aW5ncyByZWxhdGVkIHRvIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW2ZhbHNlXSAtIERlZmluZXMgaWYgc2xpZGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBoaW5nZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNjYWxlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc3BpbiBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuJG1vdGlvbi11aS1zZXR0aW5nczogKFxuICBzbGlkZS1hbmQtZmFkZTogZmFsc2UsXG4gIGhpbmdlLWFuZC1mYWRlOiB0cnVlLFxuICBzY2FsZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc3Bpbi1hbmQtZmFkZTogdHJ1ZSxcbiAgcGF1c2UtcXVldWUtY2xhc3M6ICdpcy1wYXVzZWQnLFxuICBhY3RpdmF0ZS1xdWV1ZS1jbGFzczogJ2lzLWFuaW1hdGluZycsXG4pICFkZWZhdWx0O1xuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1rZXlmcmFtZXMoJG5hbWUsICRlZmZlY3RzLi4uKSB7XG4gICRvYmo6IC1tdWktcHJvY2Vzcy1hcmdzKCRlZmZlY3RzLi4uKTtcbiAgJG9iajogbWFwLXJlbW92ZSgkb2JqLCBuYW1lKTtcblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAvLyBOb3cgaXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIEBlYWNoICRwY3QsICRwcm9wcyBpbiAkb2JqIHtcbiAgICAgICN7LW11aS1rZXlmcmFtZS1wY3QoJHBjdCl9IHtcbiAgICAgICAgLy8gTGFzdGx5LCBpdGVyYXRlIHRocm91Z2ggZWFjaCBDU1MgcHJvcGVydHkgd2l0aGluIGEgcGVyY2VudGFnZSBhbmQgcHJpbnQgaXQgb3V0XG4gICAgICAgIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJHByb3BzIHtcbiAgICAgICAgICAjeyRwcm9wfTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc3RyaW5nIGZvciBhIENTUyBrZXlmcmFtZSwgYnkgY29udmVydGluZyBhIGxpc3Qgb2YgbnVtYmVycyB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRpbnB1dCAtIExpc3Qgb2YgbnVtYmVycyB0byB1c2UuXG4vLy8gQHJldHVybiB7U3RyaW5nfSBBIHNldCBvZiBjb21tYS1zZXBhcmF0ZWQgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1wY3QoJGlucHV0KSB7XG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ251bWJlcicge1xuICAgICRvdXRwdXQ6ICgkaW5wdXQgKiAxJSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkaW5wdXQpID09ICdsaXN0JyB7XG4gICAgQGVhY2ggJGkgaW4gJGlucHV0IHtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAoJGkgKiAxJSksIGNvbW1hKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIFwiI3skb3V0cHV0fVwiO1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkbWFwcy4uLiAtIEEgc2VyaWVzIG9mIG1hcHMgdG8gbWVyZ2UsIGFzIGluZGl2aWR1YWwgcGFyYW1ldGVycy5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQga2V5ZnJhbWUgb2JqZWN0LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtY29tYmluZSgkbWFwcy4uLikge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggbWFwIHBhc3NlZCBpblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICBAaWYgLW11aS1pcy1mdW5jdGlvbigkbWFwKSB7XG4gICAgICAkbWFwOiAtbXVpLXNhZmUtY2FsbCgkbWFwKTtcbiAgICB9XG5cbiAgICAkbWFwOiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgaW4gdGhlIG1hcFxuICAgIC8vICRrZXkgaXMgdGhlIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICAvLyAkdmFsdWUgaXMgYSBtYXAgb2YgQ1NTIHByb3BlcnRpZXNcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAkbmV3LXZhbHVlOiAoKTtcblxuICAgICAgQGlmIG1hcC1oYXMta2V5KCRuZXctbWFwLCAka2V5KSB7XG4gICAgICAgIC8vIElmIHRoZSBtYXAgYWxyZWFkeSBoYXMgdGhlIGtleWZyYW1lICUsIGFwcGVuZCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6IC1tdWktbWVyZ2UtcHJvcGVydGllcyhtYXAtZ2V0KCRuZXctbWFwLCAka2V5KSwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBPdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyBtYXAgd2l0aCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6ICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluYWxseSwgbWVyZ2UgdGhlIG1vZGlmaWVkIGtleWZyYW1lIHZhbHVlIGludG8gdGhlIG91dHB1dCBtYXBcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkbmV3LXZhbHVlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFrZSBhIG5hbWUgZm9yIHRoZSBrZXlmcmFtZXNcbiAgJC1tdWktY3VzdG9tOiAkLW11aS1jdXN0b20gKyAxICFnbG9iYWw7XG4gICRtYXAtbmFtZTogKG5hbWU6ICdjdXN0b20tI3skLW11aS1jdXN0b219Jyk7XG4gICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICRtYXAtbmFtZSk7XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIHR3byBtYXBzIG9mIENTUyBwcm9wZXJ0aWVzIGludG8gb25lIG1hcC4gSWYgYm90aCBtYXBzIGhhdmUgYSB0cmFuc2Zvcm0gcHJvcGVydHksIHRoZSB2YWx1ZXMgZnJvbSBlYWNoIHdpbGwgYmUgY29tYmluZWQgaW50byBvbmUgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtNYXB9ICRvbmUgLSBGaXJzdCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHBhcmFtIHtNYXB9ICR0d28gLSBTZWNvbmQgbWFwIHRvIG1lcmdlLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1tZXJnZS1wcm9wZXJ0aWVzKCRvbmUsICR0d28pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRvbmUsIHRyYW5zZm9ybSkgYW5kIG1hcC1oYXMta2V5KCR0d28sIHRyYW5zZm9ybSkge1xuICAgICR0cmFuc2Zvcm06IGpvaW4obWFwLWdldCgkb25lLCB0cmFuc2Zvcm0pLCBtYXAtZ2V0KCR0d28sIHRyYW5zZm9ybSkpO1xuICAgICRvbmU6IG1hcC1tZXJnZSgkb25lLCAodHJhbnNmb3JtOiAkdHJhbnNmb3JtKSk7XG4gICAgJHR3bzogbWFwLXJlbW92ZSgkdHdvLCB0cmFuc2Zvcm0pO1xuICB9XG5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJG9uZSwgJHR3byk7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNsaWRpbmcgdHJhbnNpdGlvbiBieSB0cmFuc2xhdGluZyB0aGUgZWxlbWVudCBob3Jpem9udGFsbHkgb3IgdmVydGljYWxseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNsaWRlIHRvLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuIEJ5IGRlZmF1bHQgYGxlZnRgIGFuZCBgcmlnaHRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbnVsbCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBsZWZ0LCByaWdodCkpO1xuICAkc2xpZGU6IHNsaWRlKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgLy8gQ1NTIE91dHB1dFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGZhZGUgdHJhbnNpdGlvbiBieSBhZGp1c3RpbmcgdGhlIG9wYWNpdHkgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIE9wYWNpdHkgdG8gc3RhcnQgYXQuIE11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxLiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gT3BhY2l0eSB0byBlbmQgb24uIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktZmFkZShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IG51bGwsXG4gICR0bzogbnVsbCxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkZmFkZTogZmFkZSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMCk7XG5cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDEwMCk7XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgZWZmZWN0IGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtudWxsXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuIEJ5IGRlZmF1bHQgYGZyb20tYmFja2AgYW5kIGBmcm9tLWZyb250YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbkBmdW5jdGlvbiBoaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogbnVsbFxuKSB7XG4gIC8vIFJvdGF0aW9uIGRpcmVjdGlvbnMgd2hlbiBoaW5naW5nIGZyb20gYmFjayB2cy4gZnJvbnRcbiAgJHJvdGF0aW9uLWFtb3VudDogOTBkZWc7XG4gICRyb3RhdGlvbnMtYmFjazogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICk7XG4gICRyb3RhdGlvbnMtZnJvbTogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICk7XG5cbiAgLy8gUm90YXRpb24gb3JpZ2luXG4gICR0dXJuLW9yaWdpbjogaWYoJHR1cm4tb3JpZ2luICE9IG51bGwsICR0dXJuLW9yaWdpbiwgaWYoJHN0YXRlID09IGluLCBmcm9tLWJhY2ssIGZyb20tZnJvbnQpKTtcbiAgJHJvdGF0aW9uOiAnJztcbiAgQGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWZyb250IHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1mcm9tLCAkZnJvbSk7XG4gIH0gQGVsc2UgaWYgJHR1cm4tb3JpZ2luID09IGZyb20tYmFjayB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtYmFjaywgJGZyb20pO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnJHR1cm4tb3JpZ2luIG11c3QgYmUgZWl0aGVyIFwiZnJvbS1iYWNrXCIgb3IgXCJmcm9tLWZyb250XCInO1xuICB9XG5cbiAgLy8gU3RhcnQgYW5kIGVuZCBzdGF0ZVxuICAkc3RhcnQ6ICcnO1xuICAkZW5kOiAnJztcbiAgQGlmICRzdGF0ZSA9PSBpbiB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgfSBAZWxzZSB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgfVxuXG4gIC8vIFR1cm4gYXhpc1xuICAkb3JpZ2luOiAnJztcbiAgQGlmICRheGlzID09IGVkZ2Uge1xuICAgICRvcmlnaW46ICRmcm9tO1xuICB9IEBlbHNlIHtcbiAgICAkb3JpZ2luOiBjZW50ZXI7XG4gIH1cblxuICAka2V5ZnJhbWVzOiAoXG4gICAgbmFtZTogLW11aS1zdHJpbmctc2FmZSgnaGluZ2UtI3skc3RhdGV9LSN7JGZyb219LSN7JGF4aXN9LSN7JHR1cm4tb3JpZ2lufScpLFxuICAgIDA6ICh0cmFuc2Zvcm06ICRzdGFydCwgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbiksXG4gICAgMTAwOiAodHJhbnNmb3JtOiAkZW5kKSxcbiAgKTtcblxuICBAcmV0dXJuICRrZXlmcmFtZXM7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW251bGxdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC4gQnkgZGVmYXVsdCBgZnJvbS1iYWNrYCBhbmQgYGZyb20tZnJvbnRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkdHVybi1vcmlnaW46IGlmKCR0dXJuLW9yaWdpbiAhPSBudWxsLCAkdHVybi1vcmlnaW4sIGlmKCRzdGF0ZSA9PSBpbiwgZnJvbS1iYWNrLCBmcm9tLWZyb250KSk7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbbnVsbF0gLSBTaXplIHRvIHN0YXJ0IGF0LiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gU2l6ZSB0byBlbmQgYXQuIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS16b29tKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZyb206IGlmKCRmcm9tICE9IG51bGwsICRmcm9tLCBpZigkc3RhdGUgPT0gaW4sIDAsIDEpKTtcbiAgJHRvOiBpZigkdG8gIT0gbnVsbCwgJHRvLCBpZigkc3RhdGUgPT0gaW4sIDEsIDApKTtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNwaW4uIFNob3VsZCBiZSBgY3dgIChjbG9ja3dpc2UpIG9yIGBjY3dgIChjb3VudGVyY2xvY2t3aXNlKS4gQnkgZGVmYXVsdCBgY3dgIGFuZCBgY2N3YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGFtb3VudCBbMC43NXR1cm5dIC0gQW1vdW50IHRvIGVsZW1lbnQgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc3BpbihcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogY3csXG4gICRhbW91bnQ6IDAuNzV0dXJuLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzcGluLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uICE9IG51bGwsICRkaXJlY3Rpb24sIGlmKCRzdGF0ZSA9PSBpbiwgY3csIGNjdykpO1xuICAkc3Bpbjogc3Bpbigkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyBhbmQgYXNzaWducyBpdCB0byB0aGUgZWxlbWVudCBieSBhZGRpbmcgdGhlIGBhbmltYXRpb24tbmFtZWAgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsIi8vIEdlbmVyYXRlIER1cmF0aW9uICYmIERlbGF5XHJcbltkYXRhLWFvc10ge1xyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNjAge1xyXG4gICAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nI3skaSAqIDUwfSddICYsXHJcbiAgICAmW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nI3skaSAqIDUwfSddIHtcclxuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogI3skaSAqIDUwfW1zO1xyXG4gICAgfVxyXG5cclxuICAgIGJvZHlbZGF0YS1hb3MtZGVsYXk9JyN7JGkgKiA1MH0nXSAmLFxyXG4gICAgJltkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JyN7JGkgKiA1MH0nXSB7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDA7XHJcblxyXG4gICAgICAmLmFvcy1hbmltYXRlIHtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAjeyRpICogNTB9bXM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiRhb3MtZWFzaW5nOiAoXHJcbiAgbGluZWFyOiBjdWJpYy1iZXppZXIoLjI1MCwgLjI1MCwgLjc1MCwgLjc1MCksXHJcblxyXG4gIGVhc2U6IGN1YmljLWJlemllciguMjUwLCAuMTAwLCAuMjUwLCAxKSxcclxuICBlYXNlLWluOiBjdWJpYy1iZXppZXIoLjQyMCwgMCwgMSwgMSksXHJcbiAgZWFzZS1vdXQ6IGN1YmljLWJlemllciguMDAwLCAwLCAuNTgwLCAxKSxcclxuICBlYXNlLWluLW91dDogY3ViaWMtYmV6aWVyKC40MjAsIDAsIC41ODAsIDEpLFxyXG5cclxuICBlYXNlLWluLWJhY2s6IGN1YmljLWJlemllciguNiwgLS4yOCwgLjczNSwgLjA0NSksXHJcbiAgZWFzZS1vdXQtYmFjazogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMS4yNzUpLFxyXG4gIGVhc2UtaW4tb3V0LWJhY2s6IGN1YmljLWJlemllciguNjgsIC0uNTUsIC4yNjUsIDEuNTUpLFxyXG5cclxuICBlYXNlLWluLXNpbmU6IGN1YmljLWJlemllciguNDcsIDAsIC43NDUsIC43MTUpLFxyXG4gIGVhc2Utb3V0LXNpbmU6IGN1YmljLWJlemllciguMzksIC41NzUsIC41NjUsIDEpLFxyXG4gIGVhc2UtaW4tb3V0LXNpbmU6IGN1YmljLWJlemllciguNDQ1LCAuMDUsIC41NSwgLjk1KSxcclxuXHJcbiAgZWFzZS1pbi1xdWFkOiBjdWJpYy1iZXppZXIoLjU1LCAuMDg1LCAuNjgsIC41MyksXHJcbiAgZWFzZS1vdXQtcXVhZDogY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCksXHJcbiAgZWFzZS1pbi1vdXQtcXVhZDogY3ViaWMtYmV6aWVyKC40NTUsIC4wMywgLjUxNSwgLjk1NSksXHJcblxyXG4gIGVhc2UtaW4tY3ViaWM6IGN1YmljLWJlemllciguNTUsIC4wODUsIC42OCwgLjUzKSxcclxuICBlYXNlLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCksXHJcbiAgZWFzZS1pbi1vdXQtY3ViaWM6IGN1YmljLWJlemllciguNDU1LCAuMDMsIC41MTUsIC45NTUpLFxyXG5cclxuICBlYXNlLWluLXF1YXJ0OiBjdWJpYy1iZXppZXIoLjU1LCAuMDg1LCAuNjgsIC41MyksXHJcbiAgZWFzZS1vdXQtcXVhcnQ6IGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpLFxyXG4gIGVhc2UtaW4tb3V0LXF1YXJ0OiBjdWJpYy1iZXppZXIoLjQ1NSwgLjAzLCAuNTE1LCAuOTU1KVxyXG4pO1xyXG5cclxuLy8gRWFzaW5ncyBpbXBsZW1lbnRhdGlvbnNcclxuLy8gRGVmYXVsdCB0aW1pbmcgZnVuY3Rpb246ICdlYXNlJ1xyXG5cclxuW2RhdGEtYW9zXSB7XHJcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYW9zLWVhc2luZyB7XHJcbiAgICBib2R5W2RhdGEtYW9zLWVhc2luZz1cIiN7JGtleX1cIl0gJixcclxuICAgICZbZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cIiN7JGtleX1cIl0ge1xyXG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHZhbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEFuaW1hdGlvbnMgdmFyaWFibGVzXHJcbiRhb3MtZGlzdGFuY2U6IDEwMHB4ICFkZWZhdWx0O1xyXG5cclxuLyoqXHJcbiAqIEZhZGUgYW5pbWF0aW9uczpcclxuICogZmFkZVxyXG4gKiBmYWRlLXVwLCBmYWRlLWRvd24sIGZhZGUtbGVmdCwgZmFkZS1yaWdodFxyXG4gKiBmYWRlLXVwLXJpZ2h0LCBmYWRlLXVwLWxlZnQsIGZhZGUtZG93bi1yaWdodCwgZmFkZS1kb3duLWxlZnRcclxuICovXHJcblxyXG5bZGF0YS1hb3NePSdmYWRlJ11bZGF0YS1hb3NePSdmYWRlJ10ge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xyXG5cclxuICAmLmFvcy1hbmltYXRlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nZmFkZS11cCddIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAkYW9zLWRpc3RhbmNlKTtcclxufVxyXG5cclxuW2RhdGEtYW9zPSdmYWRlLWRvd24nXSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLSRhb3MtZGlzdGFuY2UpO1xyXG59XHJcblxyXG5bZGF0YS1hb3M9J2ZhZGUtcmlnaHQnXSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLSRhb3MtZGlzdGFuY2UsIDApO1xyXG59XHJcblxyXG5bZGF0YS1hb3M9J2ZhZGUtbGVmdCddIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkYW9zLWRpc3RhbmNlLCAwKTtcclxufVxyXG5cclxuW2RhdGEtYW9zPSdmYWRlLXVwLXJpZ2h0J10ge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0kYW9zLWRpc3RhbmNlLCAkYW9zLWRpc3RhbmNlKTtcclxufVxyXG5cclxuW2RhdGEtYW9zPSdmYWRlLXVwLWxlZnQnXSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJGFvcy1kaXN0YW5jZSwgJGFvcy1kaXN0YW5jZSk7XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nZmFkZS1kb3duLXJpZ2h0J10ge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0kYW9zLWRpc3RhbmNlLCAtJGFvcy1kaXN0YW5jZSk7XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nZmFkZS1kb3duLWxlZnQnXSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJGFvcy1kaXN0YW5jZSwgLSRhb3MtZGlzdGFuY2UpO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKipcclxuICogWm9vbSBhbmltYXRpb25zOlxyXG4gKiB6b29tLWluLCB6b29tLWluLXVwLCB6b29tLWluLWRvd24sIHpvb20taW4tbGVmdCwgem9vbS1pbi1yaWdodFxyXG4gKiB6b29tLW91dCwgem9vbS1vdXQtdXAsIHpvb20tb3V0LWRvd24sIHpvb20tb3V0LWxlZnQsIHpvb20tb3V0LXJpZ2h0XHJcbiAqL1xyXG5cclxuW2RhdGEtYW9zXj0nem9vbSddW2RhdGEtYW9zXj0nem9vbSddIHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcclxuXHJcbiAgJi5hb3MtYW5pbWF0ZSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgc2NhbGUoMSk7XHJcbiAgfVxyXG59XHJcblxyXG5bZGF0YS1hb3M9J3pvb20taW4nXSB7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSguNik7XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nem9vbS1pbi11cCddIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAkYW9zLWRpc3RhbmNlKSBzY2FsZSguNik7XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nem9vbS1pbi1kb3duJ10ge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0kYW9zLWRpc3RhbmNlKSBzY2FsZSguNik7XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nem9vbS1pbi1yaWdodCddIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtJGFvcy1kaXN0YW5jZSwgMCkgc2NhbGUoLjYpO1xyXG59XHJcblxyXG5bZGF0YS1hb3M9J3pvb20taW4tbGVmdCddIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkYW9zLWRpc3RhbmNlLCAwKSBzY2FsZSguNik7XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nem9vbS1vdXQnXSB7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG59XHJcblxyXG5bZGF0YS1hb3M9J3pvb20tb3V0LXVwJ10ge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsICRhb3MtZGlzdGFuY2UpIHNjYWxlKDEuMik7XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nem9vbS1vdXQtZG93biddIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtJGFvcy1kaXN0YW5jZSkgc2NhbGUoMS4yKTtcclxufVxyXG5cclxuW2RhdGEtYW9zPSd6b29tLW91dC1yaWdodCddIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtJGFvcy1kaXN0YW5jZSwgMCkgc2NhbGUoMS4yKTtcclxufVxyXG5cclxuW2RhdGEtYW9zPSd6b29tLW91dC1sZWZ0J10ge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKCRhb3MtZGlzdGFuY2UsIDApIHNjYWxlKDEuMik7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBTbGlkZSBhbmltYXRpb25zXHJcbiAqL1xyXG5cclxuW2RhdGEtYW9zXj0nc2xpZGUnXVtkYXRhLWFvc149J3NsaWRlJ10ge1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcclxuXHJcbiAgJi5hb3MtYW5pbWF0ZSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nc2xpZGUtdXAnXSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG59XHJcblxyXG5bZGF0YS1hb3M9J3NsaWRlLWRvd24nXSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxufVxyXG5cclxuW2RhdGEtYW9zPSdzbGlkZS1yaWdodCddIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG59XHJcblxyXG5bZGF0YS1hb3M9J3NsaWRlLWxlZnQnXSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKipcclxuICogRmxpcCBhbmltYXRpb25zOlxyXG4gKiBmbGlwLWxlZnQsIGZsaXAtcmlnaHQsIGZsaXAtdXAsIGZsaXAtZG93blxyXG4gKi9cclxuXHJcbltkYXRhLWFvc149J2ZsaXAnXVtkYXRhLWFvc149J2ZsaXAnXSB7XHJcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcclxufVxyXG5cclxuW2RhdGEtYW9zPSdmbGlwLWxlZnQnXSB7XHJcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoLTEwMGRlZyk7XHJcbiAgJi5hb3MtYW5pbWF0ZSB7dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMCk7fVxyXG59XHJcblxyXG5bZGF0YS1hb3M9J2ZsaXAtcmlnaHQnXSB7XHJcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMTAwZGVnKTtcclxuICAmLmFvcy1hbmltYXRlIHt0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTt9XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nZmxpcC11cCddIHtcclxuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgtMTAwZGVnKTtcclxuICAmLmFvcy1hbmltYXRlIHt0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKTt9XHJcbn1cclxuXHJcbltkYXRhLWFvcz0nZmxpcC1kb3duJ10ge1xyXG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDEwMGRlZyk7XHJcbiAgJi5hb3MtYW5pbWF0ZSB7dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMCk7fVxyXG59XHJcbiIsIlxyXG4vKiBTbGlkZXIgKi9cclxuXHJcbi5zbGljay1zbGlkZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xyXG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLnNsaWNrLWxpc3Qge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICYuZHJhZ2dpbmcge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBjdXJzb3I6IGhhbmQ7XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXHJcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxufVxyXG5cclxuLnNsaWNrLXRyYWNrIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG5cclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLXNsaWRlIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbiAgICBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICYuZHJhZ2dpbmcgaW1nIHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5AY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xyXG5cclxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXHJcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxyXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcclxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXHJcblxyXG4kc2xpY2stZm9udC1wYXRoOiBcIi4vZm9udHMvXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1mb250LWZhbWlseTogXCJzbGlja1wiICFkZWZhdWx0O1xyXG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcclxuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcclxuJHNsaWNrLWRvdC1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yICFkZWZhdWx0O1xyXG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1uZXh0LWNoYXJhY3RlcjogXCJcXDIxOTJcIiAhZGVmYXVsdDtcclxuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xyXG4kc2xpY2stb3BhY2l0eS1kZWZhdWx0OiAwLjc1ICFkZWZhdWx0O1xyXG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcclxuXHJcbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xyXG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcclxuICAgICAgICBAcmV0dXJuIGltYWdlLXVybCgkdXJsKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stbG9hZGVyLXBhdGggKyAkdXJsKTtcclxuICAgIH1cclxufVxyXG5cclxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcclxuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcclxuICAgICAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1mb250LXBhdGggKyAkdXJsKTtcclxuICAgIH1cclxufVxyXG5cclxuLyogU2xpZGVyICovXHJcblxyXG4uc2xpY2stbGlzdCB7XHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgIH1cclxufVxyXG5cclxuLyogSWNvbnMgKi9cclxuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xyXG4gICAgQGZvbnQtZmFjZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcclxuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xyXG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIH1cclxufVxyXG5cclxuLyogQXJyb3dzICovXHJcblxyXG4uc2xpY2stcHJldixcclxuLnNsaWNrLW5leHQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICBmb250LXNpemU6IDBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xyXG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcclxuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGljay1wcmV2IHtcclxuICAgIGxlZnQ6IC0yNXB4O1xyXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHJpZ2h0OiAtMjVweDtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XHJcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLW5leHQge1xyXG4gICAgcmlnaHQ6IC0yNXB4O1xyXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICBsZWZ0OiAtMjVweDtcclxuICAgICAgICByaWdodDogYXV0bztcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XHJcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogRG90cyAqL1xyXG5cclxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLnNsaWNrLWRvdHMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAtMjVweDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcclxuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcclxuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLmluZGV4LW1lbnUge1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAubWVudSBhIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbjtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIkYm9yZGVyLWNvbG9yOiAkbGlnaHQtZ3JheTtcclxuJGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiRib3JkZXItd2lkdGg6IDFweDtcclxuJGNvbnRhaW5lci1ib3JkZXI6IDFweCAkYm9yZGVyLXN0eWxlICRib3JkZXItY29sb3I7XHJcbiRjb250YWluZXItYm94LXNoYWRvdzogMCAzcHggMjVweCByZ2JhKDAsMCwwLC4zKTtcclxuXHJcbkBtaXhpbiBjb250YWluZXItYm9yZGVyKCRzaGFkb3c6IGZhbHNlKSB7XHJcbiAgYm9yZGVyOiAkY29udGFpbmVyLWJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbiAgQGlmICRzaGFkb3cge1xyXG4gICAgYm94LXNoYWRvdzogJGNvbnRhaW5lci1ib3gtc2hhZG93O1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXIoJGRpcmVjdGlvbiwgJHdpZHRoOiAkYm9yZGVyLXdpZHRoLCAkc3R5bGU6ICRib3JkZXItc3R5bGUsICRjb2xvcjogJGJvcmRlci1jb2xvcikge1xyXG4gIGJvcmRlci0jeyRkaXJlY3Rpb259OiAkd2lkdGggJHN0eWxlICRjb2xvcjtcclxufVxyXG5cclxuLmNvbnRhaW5lci1kaXZpZGVyLXJpZ2h0IHtcclxuICBib3JkZXItYm90dG9tOiAkY29udGFpbmVyLWJvcmRlcjtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGJvcmRlci1yaWdodDogJGNvbnRhaW5lci1ib3JkZXI7XHJcbiAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gYXZhdGFyKCRoZWlnaHQsICR3aWR0aCwgJHJhZGl1cykge1xyXG4gIGhlaWdodDogJGhlaWdodDtcclxuICB3aWR0aDogJHdpZHRoO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuXHJcbi5hdmF0YXIge1xyXG4gIEBpbmNsdWRlIGF2YXRhcig0MHB4LCA0MHB4LCA1MCUpO1xyXG4gIG1pbi13aWR0aDogNDBweDtcclxuXHJcbiAgJi5hdmF0YXItc21hbGwge1xyXG4gICAgQGluY2x1ZGUgYXZhdGFyKDI1cHgsIDI1cHgsIDUwJSk7XHJcbiAgfVxyXG5cclxuICAmLmF2YXRhci1sYXJnZSB7XHJcbiAgICBAaW5jbHVkZSBhdmF0YXIoMTAwcHgsIDEwMHB4LCA1MCUpO1xyXG4gIH1cclxufVxyXG4iLCJAZm9yICRpIGZyb20gMCB0aHJvdWdoIDMge1xyXG4gICRtYXJnaW46ICgkaSk7XHJcblxyXG4gIC5tYiN7JGl9IHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4rcmVtICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbiIsIlxuLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuXG4vKiBNZW51IGljb24gKi9cbi5tZW51LWljb24tc2hhcGUge1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBkaXNwbGF5OmJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogM3ZoO1xuICBsZWZ0OiAzdmg7ICAgIFxuICB6LWluZGV4OiAyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9jbG9zZS1pY29uLnBuZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4ubWFpbi1tZW51LWRyb3BwZXIgLm1lbnUtaWNvbi1zaGFwZSB7XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzcHg7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0Ojd2dztcbiAgei1pbmRleDogMjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY2xvc2UtaWNvbi1ibHVlLnBuZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1haW4tbWVudS1kcm9wcGVyIC5tZW51LWljb24tc2hhcGUge1xuICAgIHRvcDogMTBweDtcbiAgICByaWdodDoxMHB4O1xuICB9XG59XG5cblxuLyogTmF2aWdhdGlvbiAqL1xuLm92ZXJsYXktbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICAvL3RvcDogMDtcbiAgbGVmdDogMDtcbiAgLy96LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZDogcmdiKDI1LCAxMTgsIDIxMCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTYsMTYsMTYsMC43KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zNXMsIHZpc2liaWxpdHkgMC4zNXMsIGhlaWdodCAwLjZzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zNXMsIHZpc2liaWxpdHkgMC4zNXMsIGhlaWdodCAwLjZzIGVhc2U7ICAgICAgICAgXG59XG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgLm92ZXJsYXktbmF2IHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYigyNSwgMTE4LCAyMTApO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgxNiwxNiwxNiwwLjk1KTsgICAgXG4gICAgfVxufVxuXG5cblxuXG4vKiBPcGVuIG5hdmlnaWF0aW9uICovXG4ub3ZlcmxheS1uYXYuYWN0aXZlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IFxuICBvdmVyZmxvdzogYXV0bztcbn1cblxuXG5cblxuXG4ubmF2LWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCBhdXRvIWltcG9ydGFudDtcbiAgdG9wOiAxMHZoOyAgICBcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHZoO1xufVxuXG4ubmF2LWNvbnRlbnQtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIGF1dG8haW1wb3J0YW50O1xuICB0b3A6IDI1JSFpbXBvcnRhbnQ7ICAgIFxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyAgXG4gIG1hcmdpbi10b3A6IDQ4dnc7ICAgIFxufVxuXG4ubmF2LWNvbnRlbnQgdWwge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5uYXYtY29udGVudCA+IHVsIHtcbiAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCAjRkFCNTE3OyAgICBcbiAgbWFyZ2luLWxlZnQ6IDYwcHg7ICAgXG4gIHBhZGRpbmctYm90dG9tOiAzdmg7IFxufVxuXG4ubmF2LWNvbnRlbnQgdWwgbGkgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogbGVmdDsgIFxuICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDoxLjM7XG4gIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlO1xufVxuXG4uaGVhZC10b3Age1xuICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQmxhY2snLCdGb3JkQW50ZW5uYS1Cb2xkJzsgXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDIuM3Z3O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uc3ViLXByby1pdGVtcyB7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmctbGVmdDogM3Z3O1xuICAgIGZvbnQtc2l6ZTogMS4ydnc7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuXG4gICAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogICNGQUI1MTc7XG4gICAgfVxufVxuXG4uc3ViLXByby1pdGVtcy1hY2Mge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCc7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDEuMnZ3O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcblxuICAgIGE6aG92ZXIsICBhOmZvY3VzIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGNvbG9yOiAgIzA2NzlCQztcbiAgICB9XG5cbn1cblxuLnZlaGljbGUtZ3JvdXAtaW4ge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCc7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDEuMnZ3O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgICBcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG5cbiAgLmNvbW0tc2lkZSAudmVoaWNsZS1ncm91cC1pbiAgYTpob3ZlciwgLmNvbW0tc2lkZSAudmVoaWNsZS1ncm91cC1pbiAgYTpmb2N1cyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogICNGQUI1MTc7XG4gICAgfVxuXG5cblxuXG4uc3ViLXByby1pdGVtcy1yZWMge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCc7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDEuMnZ3O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcblxuICAgIGE6aG92ZXIsICBhOmZvY3VzIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGNvbG9yOiAgIzA2NjM3NDtcbiAgICB9XG59XG5cblxuLnN1Yi1wcm8taXRlbXMtb3Age1xuICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCc7IFxuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xufVxuXG4uc3ViLXByby1pdGVtcy1vcDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAgIzA2NzlCQztcbn1cblxuLnN1Yi1wcm8taXRlbXMtb3AtYWNjOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICAjMDY3OUJDO1xufVxuXG4uaW5jZW4tbGlzdCB7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJzsgXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDAuOHZ3O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogICNGQUI1MTc7XG4gICAgfVxuXG59XG5cbi5pbmNlbi1saXN0LWFjYyB7XG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJzsgXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICBmb250LXNpemU6IDAuOHZ3O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgIGNvbG9yOiAgIzA2NzlCQztcbiAgICB9XG59XG5cblxuLmFjY2Vzcy1zaWRlIHtcbiAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkICMwNjc5QkMhaW1wb3J0YW50O1xufVxuXG5cbiAgLmFjY2Vzcy1zaWRlIC52ZWhpY2xlLWdyb3VwLWluICBhOmhvdmVyLCAuYWNjZXNzLXNpZGUgLnZlaGljbGUtZ3JvdXAtaW4gIGE6Zm9jdXMge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgY29sb3I6ICAjMDY3OUJDO1xuICAgIH1cblxuLnJlYy1zaWRlIHtcbiAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkICMwNjYzNzQhaW1wb3J0YW50O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogNThweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbn1cblxuXG4vKiBNZWRpYSBxdWVyaWVzICovXG4vKiBTbWFsbCBvbmx5ICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcblxuICAgIC5uYXYtY29udGVudCA+IHVsIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjRkFCNTE3O1xuICAgICAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJ2aDtcbiAgICB9XG4gICAgLmFjY2Vzcy1zaWRlIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjMDY3OUJDICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5yZWMtc2lkZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgIzA2NjM3NCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5oZWFkLXRvcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogM3Z3O1xuICAgICAgICBmb250LXNpemU6IDYuM3Z3O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5zdWItcHJvLWl0ZW1zIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gICAgICAgIGZvbnQtc2l6ZTogMy4ydnc7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIH1cblxuICAgIC5zdWItcHJvLWl0ZW1zLWFjYyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogM3Z3O1xuICAgICAgICBmb250LXNpemU6IDMuMnZ3O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICB9XG5cbiAgICAuc3ViLXByby1pdGVtcy1yZWMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICAgICAgZm9udC1zaXplOiAzLjJ2dztcbiAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgfVxuXG4gICAgLnZlaGljbGUtZ3JvdXAtaW4ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICAgICAgZm9udC1zaXplOiAzLjJ2dztcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIC5pbmNlbi1saXN0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzdnc7XG4gICAgICAgIGZvbnQtc2l6ZTogMnZ3O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgfVxuXG5cbiAgICAuaW5jZW4tbGlzdC1hY2Mge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgICAgICAgZm9udC1zaXplOiAydnc7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICB9XG4gIFxufVxuXG5cbi8qIEJsdXIgRWZmZWN0ICovXG4uYmx1ci1vdmVybGF5Lm9uIHtcbiAgICAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgICAgICAgICAgZmlsdGVyOiBibHVyKDMwcHgpO1xuICAgICAgZmlsdGVyOiBCbHVyKFN0cmVuZ3RoPTgwKTsgXG59XG4ubm9zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufSIsIiRzaWRlbGluZXMtdGV4dC1hbGlnbi1sZWZ0OiBmYWxzZSAhZGVmYXVsdDtcclxuJHNpZGVsaW5lcy10ZXh0LXBhZGRpbmc6IDAuNWVtICFkZWZhdWx0O1xyXG4kc2lkZWxpbmVzLWxpbmUtdGhpY2tuZXNzOiAycHggIWRlZmF1bHQ7XHJcbiRzaWRlbGluZXMtbGluZS1sZW5ndGg6IDk5OTlweCAhZGVmYXVsdDtcclxuJHNpZGVsaW5lcy1saW5lLWNvbG9yOiBudWxsICFkZWZhdWx0O1xyXG4kc2lkZWxpbmVzLWxpbmUtc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xyXG4kc2lkZWxpbmVzLWRvdWJsZS1saW5lOiBmYWxzZSAhZGVmYXVsdDtcclxuJHNpZGVsaW5lcy1kb3VibGUtbGluZS1zcGFjaW5nOiAwLjVlbSAhZGVmYXVsdDtcclxuXHJcbkBtaXhpbiBzaWRlbGluZXMoXHJcbiAgJHRleHQtcGFkZGluZzogJHNpZGVsaW5lcy10ZXh0LXBhZGRpbmcsXHJcbiAgJHRleHQtbGVmdDogJHNpZGVsaW5lcy10ZXh0LWFsaWduLWxlZnQsXHJcbiAgJGxpbmUtdGhpY2tuZXNzOiAkc2lkZWxpbmVzLWxpbmUtdGhpY2tuZXNzLFxyXG4gICRsaW5lLWxlbmd0aDogJHNpZGVsaW5lcy1saW5lLWxlbmd0aCxcclxuICAkbGluZS1jb2xvcjogJHNpZGVsaW5lcy1saW5lLWNvbG9yLFxyXG4gICRsaW5lLXN0eWxlOiAkc2lkZWxpbmVzLWxpbmUtc3R5bGUsXHJcbiAgJGRvdWJsZS1saW5lOiAkc2lkZWxpbmVzLWRvdWJsZS1saW5lLFxyXG4gICRkb3VibGUtbGluZS1zcGFjaW5nOiAkc2lkZWxpbmVzLWRvdWJsZS1saW5lLXNwYWNpbmcgKSB7XHJcblxyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHJcbiAgQGlmICR0ZXh0LWxlZnQge1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB9IEBlbHNlIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIHNwYW4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1yaWdodDogJHRleHQtcGFkZGluZztcclxuXHJcbiAgICBAaWYgJHRleHQtbGVmdCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6ICR0ZXh0LXBhZGRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB3aWR0aDogJGxpbmUtbGVuZ3RoO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgYm9yZGVyLXRvcC1zdHlsZTogJGxpbmUtc3R5bGU7XHJcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaW5lLXRoaWNrbmVzcztcclxuXHJcbiAgICAgIEBpZiAkbGluZS1jb2xvciAhPSBudWxsIHtcclxuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkbGluZS1jb2xvcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGlmICRkb3VibGUtbGluZSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogJGxpbmUtc3R5bGU7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJGxpbmUtdGhpY2tuZXNzO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRsaW5lLWNvbG9yO1xyXG4gICAgICAgIGhlaWdodDogJGRvdWJsZS1saW5lLXNwYWNpbmc7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLSgkZG91YmxlLWxpbmUtc3BhY2luZy8yKTtcclxuICAgICAgfSBAZWxzZSBpZiAkbGluZS10aGlja25lc3MgPiAxIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtKGZsb29yKCRsaW5lLXRoaWNrbmVzcy8yKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnR5cGUtc2lkZWxpbmVzIHtcclxuICBAaW5jbHVkZSBzaWRlbGluZXMoJHRleHQtbGVmdDogdHJ1ZSk7XHJcbn1cclxuXHJcbi50eXBlLXNpZGVsaW5lcy1kb3R0ZWQge1xyXG4gIEBpbmNsdWRlIHNpZGVsaW5lcygkdGV4dC1sZWZ0OiB0cnVlLCAkbGluZS1zdHlsZTogZG90dGVkKTtcclxufVxyXG5cclxuLmRvdWJsZSB7XHJcbiAgQGluY2x1ZGUgc2lkZWxpbmVzKCRkb3VibGUtbGluZTogdHJ1ZSk7XHJcbn1cclxuXHJcbi5jdXN0b20ge1xyXG4gIEBpbmNsdWRlIHNpZGVsaW5lcyhcclxuICAgICR0ZXh0LXBhZGRpbmc6IDIwcHgsXHJcbiAgICAkbGluZS1sZW5ndGg6IDEwMCUsXHJcbiAgICAkbGluZS1jb2xvcjogIzI5ODBiOSxcclxuICAgICRsaW5lLXRoaWNrbmVzczogNHB4LFxyXG4gICAgJGxpbmUtc3R5bGU6IGRvdHRlZFxyXG4gICk7XHJcbn1cclxuXHJcbi5jdXN0b20tMiB7XHJcbiAgQGluY2x1ZGUgc2lkZWxpbmVzKFxyXG4gICAgJGxpbmUtY29sb3I6ICMyN2FlNjAsXHJcbiAgICAkbGluZS10aGlja25lc3M6IDRweFxyXG4gICk7XHJcbn1cclxuIiwiJHotbGF5ZXJzOiAoXHJcbiAgYm90dG9tbGVzcy1waXQ6IC05OTk5LFxyXG4gIGRlZmF1bHQ6IDEsXHJcbiAgZHJvcGRvd246IDMwMDAsXHJcbiAgdGhpbmc6IDQwMDAsXHJcbiAgbW9kYWw6IDQwMDFcclxuKTtcclxuXHJcbi8vIF9mdW5jdGlvbnMuc2Nzc1xyXG5AZnVuY3Rpb24geigka2V5KSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCR6LWxheWVycywgJGtleSkge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCR6LWxheWVycywgJGtleSk7XHJcbiAgfVxyXG5cclxuICBAd2FybiBcIlVua25vd24gYCN7JGtleX1gIGluICR6LWxheWVycy5cIjtcclxuICBAcmV0dXJuIG51bGw7XHJcbn1cclxuXHJcbi8vIHVzYWdlXHJcbi50aGluZyB7XHJcbiAgei1pbmRleDogeih0aGluZyk7XHJcbn1cclxuIiwiJGFwcC1kYXNoYm9hcmQtY29sbGFwc2VkLXNpZGViYXItd2lkdGg6IHJlbS1jYWxjKDgwKTtcclxuJGFwcC1kYXNoYm9hcmQtc2lkZWJhci13aWR0aDogJG9mZi1jYW52YXMtd2lkdGg7XHJcblxyXG4uYXBwLWRhc2hib2FyZCB7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5hcHAtZGFzaGJvYXJkLWJvZHkge1xyXG4gIGZsZXg6IDEgMSBhdXRvO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5hcHAtZGFzaGJvYXJkLXNpZGViYXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgb3ZlcmZsb3cteDogdmlzaWJsZTtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgdHJhbnNpdGlvbjogYWxsICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcclxuXHJcbiAgLmFwcC1kYXNoYm9hcmQtb3Blbi1zaWRlYmFyLFxyXG4gIC5hcHAtZGFzaGJvYXJkLWNsb3NlLXNpZGViYXJ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmc6IDAgMXJlbTtcclxuICAgIGhlaWdodDogM3JlbTtcclxuICB9XHJcblxyXG4gIC5hcHAtZGFzaGJvYXJkLXNpZGViYXItYmxvY2stdGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIC5hcHAtZGFzaGJvYXJkLXNpZGViYXItY2xvc2UtYnV0dG9uIHtcclxuICAgIGltZyB7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbWcgKyAuYXBwLWRhc2hib2FyZC1zaWRlYmFyLXRleHQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XHJcbiAgfVxyXG5cclxuICAuYXBwLWRhc2hib2FyZC1zaWRlYmFyLWlubmVyIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgLm1lbnUgPiBsaSA+IGEge1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nOiAwLjYzNjhyZW0gMXJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5yZXZlYWwtZm9yLW1lZGl1bSB7XHJcbiAgLmFwcC1kYXNoYm9hcmQtb3Blbi1zaWRlYmFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uYXBwLWRhc2hib2FyZC1zaWRlYmFyLWZvb3RlciB7XHJcbiAgYmFja2dyb3VuZDogcmdiYSg0MiwgNTcsIDc5LCAwLjgpO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHBhZGRpbmc6IDFyZW07XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uYXBwLWRhc2hib2FyZC1vcGVuLXNpZGViYXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmFwcC1kYXNoYm9hcmQtYm9keS1jb250ZW50IHtcclxuICB0cmFuc2l0aW9uOiBhbGwgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgZmxleDogMSAxIDA7XHJcbiAgcGFkZGluZzogMjBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbn1cclxuXHJcbkBtaXhpbiBzaHJ1bmstc2lkZWJhcigpIHtcclxuICAuYXBwLWRhc2hib2FyZC1jbG9zZS1zaWRlYmFyLFxyXG4gIC5hcHAtZGFzaGJvYXJkLXNpZGViYXItdGV4dCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmFwcC1kYXNoYm9hcmQtb3Blbi1zaWRlYmFyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAuYXBwLWRhc2hib2FyZC1zaWRlYmFyIHtcclxuICAgIHdpZHRoOiAkYXBwLWRhc2hib2FyZC1jb2xsYXBzZWQtc2lkZWJhci13aWR0aDtcclxuICB9XHJcblxyXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRhcHAtZGFzaGJvYXJkLWNvbGxhcHNlZC1zaWRlYmFyLXdpZHRoO1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JGFwcC1kYXNoYm9hcmQtY29sbGFwc2VkLXNpZGViYXItd2lkdGh9KTtcclxuICB9XHJcblxyXG4gIC5tZW51LnZlcnRpY2FsID4gbGkgPiBhIHtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLm1lbnUge1xyXG4gICAgbGkge1xyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBtaW5pIHNpZGViYXIgb24gbWVkaXVtL3RhYmxldCBzaXplXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAuYXBwLWRhc2hib2FyZC5zaHJpbmstbWVkaXVtIHtcclxuICAgIEBpbmNsdWRlIHNocnVuay1zaWRlYmFyKClcclxuICB9XHJcbn1cclxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gIC5hcHAtZGFzaGJvYXJkLnNocmluay1sYXJnZSB7XHJcbiAgICBAaW5jbHVkZSBzaHJ1bmstc2lkZWJhcigpXHJcbiAgfVxyXG59XHJcbiIsIiRhcHAtZGFzaGJvYXJkLXRvcC1uYXYtaGVpZ2h0OiByZW0tY2FsYyg1NSk7XHJcblxyXG4uYXBwLWRhc2hib2FyZC10b3AtbmF2LWJhciAge1xyXG4gIGhlaWdodDogJGFwcC1kYXNoYm9hcmQtdG9wLW5hdi1oZWlnaHQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZmxleDogMCAwICRhcHAtZGFzaGJvYXJkLXRvcC1uYXYtaGVpZ2h0O1xyXG59XHJcbiIsIkBjaGFyc2V0ICd1dGYtOCc7XHJcblxyXG5AaW1wb3J0ICdzZXR0aW5ncyc7XHJcbkBpbXBvcnQgJ2ZvdW5kYXRpb24nO1xyXG5AaW1wb3J0ICdtb3Rpb24tdWknO1xyXG5cclxuXHJcbkBpbXBvcnQgXCJtaXhpbnMvZm9udC1mYWNlXCI7XHJcblxyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XHJcbi8vXHJcbkBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXJhbmdlLWlucHV0O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xyXG5cclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlcztcclxuXHJcbkBpbmNsdWRlIG1vdGlvbi11aS10cmFuc2l0aW9ucztcclxuQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XHJcblxyXG4vLyB2ZW5kb3Igc3R5bGVzXHJcbkBpbXBvcnQgXCJ2ZW5kb3IvYW9zXCI7XHJcbkBpbXBvcnQgXCJ2ZW5kb3Ivc2xpY2stY2Fyb3VzZWxcIjtcclxuQGltcG9ydCBcInZlbmRvci9pbmRleC1tZW51XCI7XHJcblxyXG4vLyBtaXhpbnNcclxuQGltcG9ydCAnbWl4aW5zL2NvbnRhaW5lci1ib3JkZXInO1xyXG5AaW1wb3J0ICdtaXhpbnMvZmxleCc7XHJcbkBpbXBvcnQgJ21peGlucy9hdmF0YXInO1xyXG5AaW1wb3J0ICdtaXhpbnMvaGVscGVycyc7XHJcbkBpbXBvcnQgJ21peGlucy9uYXZibHVyJztcclxuQGltcG9ydCAnbWl4aW5zL3BzZXVkbyc7XHJcbkBpbXBvcnQgJ21peGlucy9wdXNoLWNlbnRlcic7XHJcbkBpbXBvcnQgJ21peGlucy9zaWRlbGluZXMnO1xyXG5AaW1wb3J0ICdtaXhpbnMvemluZGV4JztcclxuXHJcbi8vIGdsb2JhbCBzdHlsZXNcclxuQGltcG9ydCAnZ2xvYmFsL2FwcC1kYXNoYm9hcmQnO1xyXG5AaW1wb3J0ICdnbG9iYWwvbGF5b3V0JztcclxuXHJcbi8vIGN1c3RvbSBjb21wb25lbnRzXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbmF2aWdhdGlvbi9tYWluLW5hdic7XHJcblxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvb3Rlcic7XHJcblxyXG5cclxuXHJcbi8vIEBpbmNsdWRlIGZvbnQtY2xhc3NlcyAgL2ZvcmR1cGZpdHNcclxuXHJcbkBpbmNsdWRlIGZvbnQtZmFjZShGb3JkQW50ZW5uYUNvbmQtQm9sZCwgL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYUNvbmQtQm9sZCk7XHJcbkBpbmNsdWRlIGZvbnQtZmFjZShGb3JkQW50ZW5uYS1SZWd1bGFyLCAvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLVJlZ3VsYXIpO1xyXG5AaW5jbHVkZSBmb250LWZhY2UoRm9yZEFudGVubmEtUmVndWxhckl0YWxpYywgL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1SZWd1bGFySXRhbGljKTtcclxuQGluY2x1ZGUgZm9udC1mYWNlKEZvcmRBbnRlbm5hLVNlbWlib2xkLCAvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLVNlbWlib2xkKTtcclxuQGluY2x1ZGUgZm9udC1mYWNlKEZvcmRBbnRlbm5hLUJvbGQsIC9hc3NldHMvZm9udHMvRm9yZEFudGVubmEtQm9sZCk7XHJcbkBpbmNsdWRlIGZvbnQtZmFjZShGb3JkQW50ZW5uYS1CbGFjaywgL2Fzc2V0cy9mb250cy9Gb3JkQW50ZW5uYS1CbGFjayk7XHJcbkBpbmNsdWRlIGZvbnQtZmFjZShGb3JkQW50ZW5uYS1NZWRpdW0sIC9hc3NldHMvZm9udHMvRm9yZEFudGVubmEtTWVkaXVtKTtcclxuQGluY2x1ZGUgZm9udC1mYWNlKEZvcmRBbnRlbm5hLUxpZ2h0LCAvYXNzZXRzL2ZvbnRzL0ZvcmRBbnRlbm5hLUxpZ2h0KTtcclxuXHJcblxyXG5uYXYgLm1lbnUgYSwgbmF2IC5tZW51IC5idXR0b24ge1xyXG4gICAgcGFkZGluZzogMC43dnc7XHJcbn1cclxubmF2IC5tZW51IC5tZW51LXRleHQge1xyXG4gICAgcGFkZGluZzogMCAxcmVtO1xyXG59XHJcbi5zdGlja3kuaXMtc3R1Y2sge1xyXG4gICAgei1pbmRleDogMjU7XHJcbn1cclxuaW1nLmFkbWluLWljb24ge1xyXG4gICAgd2lkdGg6IDJ2dztcclxuICAgIG1hcmdpbi10b3A6IC0wLjV2dztcclxufVxyXG5oMSB7XHJcblx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcclxuXHRmb250LXNpemU6IDMuMjEwNXZ3O1xyXG5cdGxpbmUtaGVpZ2h0OjAuNztcclxuXHQvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0cGFkZGluZzogMS41dnc7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG5cdC8vIHRleHQtc2hhZG93OiAwcHggM3B4IDEwcHggIzAwMDAwMCwwcHggM3B4IDEwcHggIzAwMDAwMDtcclxufVxyXG5oMSBzcGFuIHtcclxuXHRmb250LXNpemU6IDEuMjc4OXZ3O1xyXG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG59XHJcbi5pbnRlcmlvci1wYWdlIGgxIHtcclxuXHRmb250LXNpemU6IDMuMjEwNXZ3O1xyXG5cdGxpbmUtaGVpZ2h0OjEuMTtcclxuXHRtYXJnaW4tbGVmdDogMDtcclxufVxyXG5oMiB7XHJcblx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcclxuXHRmb250LXNpemU6IDJyZW07XHJcblx0Y29sb3I6JHdoaXRlO1xyXG59XHJcbmgyLmxpZ2h0YmFjayB7XHJcblx0Y29sb3I6JHByaW1hcnktY29sb3I7XHJcblx0cGFkZGluZzogMXJlbSAwO1xyXG59XHJcbmgzIHtcclxuXHRmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmO1xyXG5cdC8vIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0Zm9udC1zaXplOiAycmVtO1xyXG5cdG1hcmdpbi1ib3R0b206MS41cmVtO1xyXG5cdGNvbG9yOiR3aGl0ZTtcclxufVxyXG4ubGlnaHQtc2VjdGlvbiB7XHJcblxyXG5cdGgzIHtcclxuXHRcdGNvbG9yOiRibGFjaztcclxuXHRcdGJhY2tncm91bmQ6aW5oZXJpdDtcclxuXHR9XHJcblx0XHJcbn1cclxuaDQge1xyXG5cdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0Ly8gdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRmb250LXNpemU6IDIuMXZ3O1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjE7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG5cdG1hcmdpbjogMi42OHZ3IDAgMCAxLjF2dztcclxuXHRwYWRkaW5nOiAgMS4xdnc7XHJcblx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuXHQvL3dpZHRoOmZpdC1jb250ZW50O1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrXHJcblxyXG59XHJcbi5jb21tZXJjaWFsLXRpbGUgaDQge1xyXG5cdC8vIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY29tbWVyY2lhbC15ZWxsb3ctYmFjay5wbmcpIG5vLXJlcGVhdCBib3R0b20gcmlnaHQ7XHJcblx0Ly8gY29sb3I6JGJsYWNrO1xyXG59XHJcbi5hY2Nlc3NpYmlsaXR5LXRpbGUgaDQge1xyXG5cdC8vIGJhY2tncm91bmQ6ICRhY2Nlc3NpYmlsaXR5LWNvbG9yO1xyXG59XHJcbi5mbGVldC10aWxlIGg0IHtcclxuXHQvLyBiYWNrZ3JvdW5kOiAkZmxlZXQtY29sb3I7XHJcblx0Ly8gY29sb3I6JGJsYWNrO1xyXG59XHJcbi5yZWNyZWF0aW9uYWwtdGlsZSBoNCB7XHJcblx0Ly8gYmFja2dyb3VuZDogJHJlY3JlYXRpb25hbC1jb2xvcjtcclxuXHJcblx0Ly8mOmJlZm9yZSB7XHJcblx0Ly9cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHQvLyAgICBjb250ZW50OiAnJztcclxuXHQvLyAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3JlY3JlYXRpb25hbC10aXRsZS1hZnRlci5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG5cdC8vICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHQvLyAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0Ly8gICAgdG9wOiAtMi43NXZ3O1xyXG5cdC8vICAgIHdpZHRoOiAxMHZ3O1xyXG5cdC8vICAgIGhlaWdodDogM3Z3O1xyXG5cclxuXHQvL31cclxufVxyXG4udXBmaXQtb3B0aW9ucy1zZWN0aW9uIGg0IHtcclxuXHRiYWNrZ3JvdW5kOm5vbmU7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6ICAxLjF2dyAwO1xyXG5cdGZvbnQtc2l6ZTogMnJlbTtcclxufVxyXG4uYmFubmVyLXRhZyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogMDtcclxuXHJcbiAgICBoMiB7XHJcbiAgICBcdGZvbnQtc2l6ZTogMS41dnc7XHJcbiAgICBcdC8vIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHQvLyB0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4ICMwMDAwMDAsICAwcHggMHB4IDVweCAjMDAwMDAwO1xyXG5cdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuICAgIHBhZGRpbmc6IDAuMjV2dyAwLjV2dztcclxuICAgIH1cclxufVxyXG5zdXAge1xyXG4gICAgZm9udC1zaXplOiA1MCU7XHJcbiAgICB0b3A6IC0xZW07XHJcbn1cclxudWwuZmlyc3QtcGFydCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG4udGVjaG5vbG9neS10aWxlIGg0IHtcclxuXHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdG1hcmdpbi1yaWdodDoyLjF2dztcclxufVxyXG5saS5jZWxsIHtcclxuXHRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0ycmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgIHBhZGRpbmctbGVmdDogMHJlbSFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0haW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiB3aWR0aCAqL1xyXG46Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICB3aWR0aDogMTBweDtcclxufVxyXG5cclxuLyogVHJhY2sgKi9cclxuOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcbiAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7IFxyXG59XHJcblxyXG4vKiBIYW5kbGUgKi9cclxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5OyBcclxufVxyXG5cclxuLyogSGFuZGxlIG9uIGhvdmVyICovXHJcbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xyXG4gIGJhY2tncm91bmQ6ICRkYXJrLWdyYXk7IFxyXG59XHJcblxyXG4uZGVza3RvcC1oZWFkZXItbG9nbyB7XHJcblx0d2lkdGg6MTguMDV2dztcclxuXHR0cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBsaW5lYXI7XHJcbn1cclxuLmZvb3Rlci1sb2dvIGltZyB7XHJcblx0d2lkdGg6MjB2dztcclxuXHR0cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBsaW5lYXI7XHJcbn1cclxuLmlzLXN0dWNrIC5kZXNrdG9wLWhlYWRlci1sb2dvIHtcclxuXHR3aWR0aDoxMC4wNXZ3O1xyXG59XHJcbi50b3AtYmFyIC5tZW51IGxpIHtcclxuXHRib3JkZXItYm90dG9tOiA0cHggc29saWQgJHdoaXRlO1xyXG5cdC8vIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuXHRtYXJnaW46IDAgMC43NXZ3O1xyXG4gICAgZm9udC1zaXplOiAxdnc7XHJcblxyXG5cdCYuY29tbWVyY2lhbC1uYXY6aG92ZXIsICYuY29tbWVyY2lhbC1uYXY6Zm9jdXMsICYuY29tbWVyY2lhbC1uYXYuYWN0aXZlIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHR9XHJcblx0Ji5hY2Nlc3NpYmlsaXR5LW5hdjpob3ZlciwgJi5hY2Nlc3NpYmlsaXR5LW5hdjpmb2N1cywgJi5hY2Nlc3NpYmlsaXR5LW5hdi5hY3RpdmUge1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cdH1cclxuXHQmLnJlY3JlYXRpb25hbC1uYXY6aG92ZXIsICYucmVjcmVhdGlvbmFsLW5hdjpmb2N1cywgJi5yZWNyZWF0aW9uYWwtbmF2LmFjdGl2ZSB7XHJcblx0XHRib3JkZXItYm90dG9tOiA0cHggc29saWQgJHByaW1hcnktY29sb3I7XHJcblx0fVxyXG5cdCYuc3RhcnQtd2l0aC12ZWhpY2xlLW5hdjpob3ZlciwgJi5zdGFydC13aXRoLXZlaGljbGUtbmF2OmZvY3VzLCAmLnN0YXJ0LXdpdGgtdmVoaWNsZS1uYXYuYWN0aXZlIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHR9XHJcblx0Ji5kaXJlY3RvcnktbmF2OmhvdmVyLCAmLmRpcmVjdG9yeS1uYXY6Zm9jdXMsICYuZGlyZWN0b3J5LW5hdi5hY3RpdmUge1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cdH1cclxuXHQmLmFkbWluLWxvZ2luOmhvdmVyLCAmLmFkbWluLWxvZ2luOmZvY3VzLCAmLmFkbWluLWxvZ2luLmFjdGl2ZSB7XHJcblx0XHRib3JkZXItYm90dG9tOiA0cHggc29saWQgJHByaW1hcnktY29sb3I7XHJcblx0fVxyXG59XHJcblxyXG4ubWVnYS1mb290ZXIge1xyXG5cdGJhY2tncm91bmQ6JGRhcmstZ3JheTtcclxuXHRwYWRkaW5nOjNyZW07XHJcblxyXG5cclxuXHQubWVudSBhIHtcclxuXHRcdGNvbG9yOiAkbGlnaHQtZ3JheTtcclxuXHRcdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5tZW51IC5tZW51LXRleHQge1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJywgc2FuLXNlcmlmO1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdGNvbG9yOiAkbGlnaHQtZ3JheTtcclxuXHJcblx0XHRhIHtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJywgc2FuLXNlcmlmO1xyXG5cdFx0XHRwYWRkaW5nOiAwIDAgMnJlbSAwO1xyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi5kYXJrLXNlY3Rpb24ge1xyXG5cclxuXHRhIHtcclxuXHRcdGNvbG9yOiR3aGl0ZTtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmRpc2NsYWltZXIgYSB7XHJcblx0XHRjb2xvcjokcHJpbWFyeS1jb2xvcjtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNvcHlyaWdodCB7XHJcblx0cGFkZGluZy10b3A6MXJlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTozcmVtO1xyXG5cclxuXHQubWVudSBhIHtcclxuXHRcdGNvbG9yOiAkZGFyay1ncmF5O1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi5pbnRyby12aWRlbyB7XHJcblx0aGVpZ2h0Ojc1dmg7XHJcblx0dHJhbnNpdGlvbjogaGVpZ2h0IDYwMG1zIGVhc2U7XHJcblx0Ly8gYmFja2dyb3VuZDogdXJsKC4uL2ltZy92aWRlby1iYWNrZ3JvdW5kLmpwZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHJcblx0aDEge1xyXG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHR0b3A6MnZ3O1xyXG5cdH1cclxuXHJcblx0Ji5jb21tZXJjaWFsLWJhbm5lciB7XHJcblx0XHRoZWlnaHQ6NDB2dztcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xyXG5cdFx0Ly9ib3gtc2hhZG93OiBpbnNldCAxdncgMTB2dyAxNTJweCA0dncgcmdiYSgwLDAsMCwwLjUpO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cclxuXHRcdCYubGVmdHNoYWRvdyB7XHJcblx0XHRcdC8vYm94LXNoYWRvdzogaW5zZXQgMjB2dyAxdncgMTUycHggNHZ3IHJnYmEoMCwwLDAsMC41KTtcclxuXHRcdH1cclxuXHJcblx0XHRoMSB7XHJcblx0XHRcdHRvcDo2dmg7XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8+IC5jZWxsIHtcclxuXHRcdC8vXHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2NvbW1lcmNpYWwteWVsbG93LXNpZGUucG5nKSBuby1yZXBlYXQgMCBjZW50ZXI7XHJcblx0XHQvL1x0YmFja2dyb3VuZC1zaXplOiAwLjV2dyA4NSU7XHJcblx0XHQvL31cclxuXHR9XHJcblxyXG5cclxuXHQmLnJlY3JlYXRpb25hbC1iYW5uZXIge1xyXG5cdFx0aGVpZ2h0OjQwdnc7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTtcclxuXHRcdC8vYm94LXNoYWRvdzogaW5zZXQgMXZ3IDEwdncgMTUycHggNHZ3IHJnYmEoMCwwLDAsMC41KTtcclxuXHRcdGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0ZGlzcGxheTpibG9jaztcclxuXHRcdFx0Y29udGVudDonJztcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltZy9yZWNyZWF0aW9uYWwtZmxvcmlzaC1sYW5kaW5nLnBuZykgbm8tcmVwZWF0IDAgY2VudGVyO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcblx0XHQgICAgd2lkdGg6IDQ3dnc7XHJcblx0XHQgICAgaGVpZ2h0OiAyMHZ3O1xyXG5cdFx0ICAgIGJvdHRvbTogLTN2dztcclxuXHRcdCAgICBsZWZ0OiA3NXZ3O1xyXG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0ei1pbmRleDotMTtcclxuXHRcdH1cclxuXHJcblx0XHQmLmxhbmRpbmcge1xyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHR3aWR0aDogNDJ2dztcclxuXHRcdFx0ICAgIGhlaWdodDogMTh2dztcclxuXHRcdFx0ICAgIGxlZnQ6IC0xdnc7XHJcblx0XHQgICAgXHRib3R0b206IC0xdnc7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQ+IC5jZWxsIHtcclxuXHRcdFx0Ly9iYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3JlY3JlYXRpb25hbC1ncmVlbi1iYWNrLnBuZykgbm8tcmVwZWF0IDAgY2VudGVyO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDAuNXZ3IDg1JTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cclxuXHQmLmFjY2Vzc2liaWxpdHktYmFubmVyIHtcclxuXHRcdGhlaWdodDo0MHZ3O1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCk7XHJcblx0XHQvL2JveC1zaGFkb3c6IGluc2V0IDF2dyAxMHZ3IDE1MnB4IDR2dyByZ2JhKDAsMCwwLDAuNSk7XHJcblx0XHRib3JkZXItYm90dG9tOiA4cHggc29saWQgJHByaW1hcnktY29sb3I7XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRcdGNvbnRlbnQ6Jyc7XHJcblx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pbWcvYWNjZXNzaWJpbGl0eS1mbG9yaXNoLWxhbmRpbmcucG5nKSBuby1yZXBlYXQgMCBjZW50ZXI7XHJcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuXHRcdCAgICB3aWR0aDogMTR2dztcclxuXHRcdCAgICBoZWlnaHQ6IDE3dnc7XHJcblx0XHQgICAgbGVmdDogODZ2dztcclxuXHRcdCAgICBib3R0b206IC03dnc7XHJcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR6LWluZGV4Oi0xO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYubGFuZGluZyB7XHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdHdpZHRoOiAxNXZ3O1xyXG5cdFx0XHQgICAgaGVpZ2h0OiAxOHZ3O1xyXG5cdFx0XHQgICAgbGVmdDogMnZ3O1xyXG5cdFx0XHQgICAgYm90dG9tOiAtN3Z3O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5kZXRhaWwtcGFnZSB7XHJcblx0XHRcdGhlaWdodDoyOXZ3O1xyXG5cdFx0XHRib3gtc2hhZG93OiBpbnNldCAxdncgMTB2dyAxNTJweCA0dncgcmdiYSgwLCAwLCAwLCAwKTtcclxuXHRcdFx0aDEge1xyXG5cdFx0XHRcdHRvcDo2dmg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLnZpZGVvLXBvcnRhbCB7XHJcblx0XHRcdGhlaWdodDozNXZ3O1xyXG5cdFx0XHRib3gtc2hhZG93OiBpbnNldCAxdncgMTB2dyAxNTJweCA0dncgcmdiYSgwLCAwLCAwLCAwKTtcclxuXHRcdFx0aDEge1xyXG5cdFx0XHRcdHRvcDo2dmg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQ+IC5jZWxsIHtcclxuXHRcdFx0Ly9iYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktYmx1ZS1iYWNrLnBuZykgbm8tcmVwZWF0IDAgY2VudGVyO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDAuNXZ3IDg1JTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cclxuXHQmLmZsZWV0LWJhbm5lciB7XHJcblx0XHRoZWlnaHQ6NDB2dztcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xyXG5cdFx0Ly9ib3gtc2hhZG93OiBpbnNldCAxdncgMTB2dyAxNTJweCA0dncgcmdiYSgwLDAsMCwwKTtcclxuXHRcdGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHJcblx0XHQ+IC5jZWxsIHtcclxuXHRcdFx0Ly9iYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ZsZWV0LWdyZWVuLWJhY2sucG5nKSBuby1yZXBlYXQgMCBjZW50ZXI7XHJcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMC41dncgODUlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmLnN0YXJ0LXdpdGgtYmFubmVyIHtcclxuXHRcdGhlaWdodDozMHZ3O1xyXG5cdFx0aDEge1xyXG5cdFx0XHR0b3A6NXZoO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmLmdhcmFnZS1iYW5uZXIge1xyXG5cdFx0aGVpZ2h0OjMwdnc7XHJcblx0XHRoMSB7XHJcblx0XHRcdHRvcDo0dmg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLmludHJvLXZpZGVvID4gLmNlbGwge1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG59XHJcbi5pbnRyby12aWRlbyBcclxuLmludHJvLWN0YSB7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0Ym90dG9tOjF2aDtcclxuXHRwYWRkaW5nOjFyZW0gMXJlbSAwO1xyXG5cdC8vd2lkdGg6MTAwJTtcclxuXHQgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuXHQmLmdhcmFnZS1pbnRybyB7XHJcblx0XHRib3R0b206IGF1dG87XHJcbiAgICBcdHRvcDogMTZ2dztcclxuXHR9XHJcblx0Ji5ub2JhY2sge1xyXG5cdCAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cdH1cclxuXHQmLmZ1bGx3aWRlIHtcclxuXHQgIHdpZHRoOjEwMCU7XHJcblx0ICBib3R0b206IDJ2dztcclxuXHR9XHJcblx0ZmllbGRzZXQge1xyXG5cdH1cclxufVxyXG4uaW50cm8tY3RhIC5idXR0b24ge1xyXG5cdG1pbi13aWR0aDo5MCU7XHJcblx0Zm9udC1zaXplOjEuMDUzdnc7XHJcblx0cGFkZGluZzoxdncgMC41NDJ2dyAwLjUyNXZ3O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0Ji5leHBhbmRlZCB7XHJcblx0XHR3aWR0aDoxMDAlO1xyXG5cdH1cclxuXHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0ICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cdCAgICB3aWR0aDogMTA4JTtcclxuXHQgICAgaGVpZ2h0OiAwLjR2dztcclxuXHQgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQgICAgYm90dG9tOiAtMS41dnc7XHJcblx0ICAgIGxlZnQ6IC0wLjZ2dztcclxuXHR9XHJcblx0Ly8gJi5jb21tZXJjaWFsOmFmdGVyIHtcclxuXHQvLyAgICAgYmFja2dyb3VuZDogJGNvbW1lcmNpYWwtY29sb3I7XHJcblx0Ly8gfVxyXG5cdC8vICYuYWNjZXNzaWJpbGl0eTphZnRlciB7XHJcblx0Ly8gICAgIGJhY2tncm91bmQ6ICRhY2Nlc3NpYmlsaXR5LWNvbG9yO1xyXG5cdC8vIH1cclxuXHQvLyAmLnJlY3JlYXRpb25hbDphZnRlciB7XHJcblx0Ly8gICAgIGJhY2tncm91bmQ6ICRyZWNyZWF0aW9uYWwtY29sb3I7XHJcblx0Ly8gfVxyXG5cdC8vICYuZmxlZXQ6YWZ0ZXIge1xyXG5cdC8vICAgICBiYWNrZ3JvdW5kOiAkZmxlZXQtY29sb3I7XHJcblx0Ly8gfSBcclxuXHQmLmhvbGxvdzphZnRlciB7XHJcblx0ICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblx0fVxyXG5cdCY6aG92ZXIsJjpmb2N1cyB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHR9XHJcbn1cclxuLnN0YXJ0LXdpdGgtdmVoaWNsZS1ob21lIHtcclxuXHRiYWNrZ3JvdW5kOiRsaWdodC1ncmF5O1xyXG5cclxuXHQudGFicy1wYW5lbCAuY2VsbCB7XHJcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDYsMTIwLDE4OCwwKTtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZTtcclxuXHRcdC8vIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuXHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoNiwxMjAsMTg4LDEpO1xyXG5cclxuXHRcdFx0YSB7XHJcblx0XHRcdGNvbG9yOiAkd2hpdGU7XHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblxyXG5cdH1cclxufVxyXG5cclxuLmFjY29yZGlvbiB7XHJcblx0bWFyZ2luOjEuODc1cmVtIDA7XHJcblxyXG5cdH1cclxuLmFjY29yZGlvbi10aXRsZSB7XHJcblx0bWFyZ2luOjA7XHJcblx0Zm9udC1zaXplOiAxLjdyZW07XHJcblx0Y29sb3I6JGRhcmstZ3JheTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHJcblx0JjpiZWZvcmUge1xyXG4gICBcdFx0ZGlzcGxheTpub25lO1xyXG5cdH1cclxuXHQmOmFmdGVyIHtcclxuICAgXHRcdGNvbnRlbnQ6ICcnO1xyXG4gICBcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltZy9hY2NvcmRpb24tY2FyZXQucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuICAgXHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdCAgICB3aWR0aDogMi4yMTF2dztcclxuXHQgICAgaGVpZ2h0OiAxLjR2dztcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDJyZW07XHJcblx0ICAgIHRvcDogMDtcclxuXHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdCAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZTtcclxuXHR9XHJcbn1cclxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xyXG59XHJcblxyXG4uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGU6YWZ0ZXIge1xyXG5cdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbn1cclxubGkuYWNjb3JkaW9uLWl0ZW0ge1xyXG4gICAgJi5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XHJcblx0ICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cdCAgICBib3JkZXItdG9wLXdpZHRoOiAwcHg7XHJcblx0fVxyXG59XHJcbi5hY2Nlc3NpYmlsaXR5LWluZm8gbGkuYWNjb3JkaW9uLWl0ZW0ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG51bC50YWJzLXRpdGxlIHtcclxuICAgIC8qIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTsgKi9cclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIC8qIG1hcmdpbjogMDsgKi9cclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuLnRhYnMtdGl0bGUge1xyXG5cdGZsb2F0Om5vbmUgIWltcG9ydGFudDtcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOjFyZW1cclxufVxyXG5cclxuLnRhYnMge1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG59XHJcbi50YWJzLXRpdGxlID4gYSB7XHJcblx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1SZWd1bGFyJywgc2FuLXNlcmlmO1xyXG5cdC8vIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IDEuMjVyZW0gMi41cmVtO1xyXG4gICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG59XHJcbi50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbn1cclxuXHJcbi5hY2NvcmRpb24uZGlzY2xhaW1lciB7XHJcbiAgICBtYXJnaW46IDAuNXJlbSAwO1xyXG4gICAgYmFja2dyb3VuZDpub25lO1xyXG5cclxuXHQuYWNjb3JkaW9uLXRpdGxlIHtcclxuXHRcdG1hcmdpbjowO1xyXG5cdFx0Zm9udC1zaXplOiAxcmVtO1xyXG5cdFx0Y29sb3I6JGRhcmstZ3JheTtcclxuXHRcdGJvcmRlcjogMCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdHBhZGRpbmc6IDAgMXJlbTtcclxuXHJcblx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgIFx0XHRiYWNrZ3JvdW5kOm5vbmU7XHJcbiAgICBcdH1cclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0ICAgXHRcdGRpc3BsYXk6bm9uZTtcclxuXHRcdH1cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdCAgIFx0XHRjb250ZW50OiAnJztcclxuXHQgICBcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltZy9hY2NvcmRpb24tY2FyZXQucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuXHQgICBcdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cdFx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdCAgICB3aWR0aDogMS4yMTF2dztcclxuXHRcdCAgICBoZWlnaHQ6IDAuNXZ3O1xyXG5cdFx0ICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XHJcblx0XHQgICAgdG9wOiAwO1xyXG5cdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdCAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZTtcclxuXHRcdH1cclxuXHR9XHJcblx0bGkuYWNjb3JkaW9uLWl0ZW0ge1xyXG5cdCAgICAmLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcclxuXHRcdCAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uYWNjb3JkaW9uLmZpbHRlciB7XHJcbiAgICBtYXJnaW46IDAuNXJlbSAwO1xyXG4gICAgYmFja2dyb3VuZDpub25lO1xyXG5cclxuXHQuYWNjb3JkaW9uLXRpdGxlIHtcclxuXHRcdG1hcmdpbjowO1xyXG5cdFx0Zm9udC1zaXplOiAxLjd2dztcclxuXHRcdGNvbG9yOiR3aGl0ZTtcclxuXHRcdGJvcmRlcjogMCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdHBhZGRpbmc6IDAgMXJlbTtcclxuXHJcblx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgIFx0XHRiYWNrZ3JvdW5kOm5vbmU7XHJcbiAgICBcdH1cclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0ICAgXHRcdGRpc3BsYXk6bm9uZTtcclxuXHRcdH1cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdCAgIFx0XHRjb250ZW50OiAnJztcclxuXHQgICBcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltZy9hY2NvcmRpb24tY2FyZXQtd2hpdGUucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuXHQgICBcdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cdFx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdCAgICB3aWR0aDogMi4yMTF2dztcclxuXHRcdCAgICBoZWlnaHQ6IDF2dztcclxuXHRcdCAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxuXHRcdCAgICB0b3A6IDA7XHJcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIHJpZ2h0OiAwO1xyXG5cdFx0ICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRsaS5hY2NvcmRpb24taXRlbSB7XHJcblx0XHQgICAgcGFkZGluZzogMXJlbSAwO1xyXG5cdCAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG5cdFx0ICAgIGJvcmRlci13aWR0aDogMDtcclxuXHRcdCAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMDtcclxuXHRcdCAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cdFx0ICAgIGNvbG9yOiAkd2hpdGU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZGFyay1zZWN0aW9uIC5hY2NvcmRpb24uZGlzY2xhaW1lciAuYWNjb3JkaW9uLXRpdGxlICB7XHJcblx0XHRjb2xvcjokd2hpdGU7XHJcblx0XHQmOmFmdGVyIHtcclxuXHQgICBcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9hY2NvcmRpb24tY2FyZXQtd2hpdGUucG5nKTtcclxuXHQgICBcdFx0fVxyXG59XHJcbjpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XHJcbn1cclxuXHJcbi5rZWVwLXVwZGF0ZWQsIC5pbnRyby1jdGEge1xyXG5cdGNvbG9yOiNmZmY7XHJcblxyXG5cdGxhYmVsIHtcclxuXHRcdGNvbG9yOiNmZmY7XHJcblx0ICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuXHR9XHJcblx0bGVnZW5kIHtcclxuXHQgICAgZm9udC1zaXplOiAwLjg1cmVtO1xyXG5cdCAgICAvL3dpZHRoOjgwJTtcclxuXHQgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0ICAgIG1hcmdpbjowIGF1dG87XHJcblx0fVxyXG5cdC5jb250ZW50LWJ1Y2tldCB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1x0XHJcblx0fVxyXG5cdC5mb3JtLXJlc3BvbnNlIHtcclxuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0Zm9udC1zaXplOjJ2dztcclxuXHRcdHBhZGRpbmc6OS41MXZ3IDA7XHJcblx0fVxyXG5cdGZvcm0ge1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHQuaGVscC10ZXh0IHtcclxuXHRcdFx0Y29sb3I6JHdoaXRlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4ua2VlcC11cGRhdGVkIC5iYWNrZ3JvdW5kLWltZyB7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG5cdGhlaWdodDppbmhlcml0O1xyXG59XHJcbi5pbnRyby1jdGEgbGVnZW5kIHtcclxuXHQgICAgdGV4dC1hbGlnbjpsZWZ0O1xyXG5cdCAgICBwYWRkaW5nLWJvdHRvbTowLjVyZW07XHJcblx0ICAgIG1hcmdpbjowIDA7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS4ydnc7XHJcblx0ICAgIC8vdGV4dC1zaGFkb3c6IHJnYigwLCAwLCAwKSAwcHggMHB4IDEwcHgsIHJnYigwLCAwLCAwKSAwcHggMHB4IDEwcHg7XHJcbn1cclxuLmludHJvLWN0YSAuZm9ybS1yZXNwb25zZSBwIHtcclxuXHQgICAgdGV4dC1zaGFkb3c6IHJnYigwLCAwLCAwKSAwcHggMHB4IDEwcHgsIHJnYigwLCAwLCAwKSAwcHggMHB4IDEwcHg7XHJcbn1cclxuXHQub2ZmIHtcclxuXHRcdGRpc3BsYXk6bm9uZTtcclxuXHR9XHJcblxyXG5cdC5zcGVjaWFsLXNwbGl0IHtcclxuXHRcdHBhZGRpbmc6MXZ3O1xyXG5cdFx0bWFyZ2luOjF2dztcclxuXHRcdGZvbnQtc2l6ZTogMnZ3O1xyXG5cdFx0Ly8gdGV4dC1zaGFkb3c6IDBweCAzcHggMTBweCAjMDAwMDAwLCAwcHggM3B4IDEwcHggIzAwMDAwMDtcclxuXHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0fVxyXG5cclxuLmJvdHRvbS1idXR0b24ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogODMlO1xyXG4gICAgei1pbmRleDogMjA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuLmJvdHRvbS1idXR0b24yIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDgzJTtcclxuICAgIHotaW5kZXg6IDIwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwLjV2dztcclxufVxyXG5cclxuLnNwbGl0aGVybyB7XHJcblx0aGVpZ2h0OiAzOHZ3O1xyXG5cdG92ZXJmbG93OmhpZGRlbjtcclxuXHR9XHJcbi5zcGxpdGhlcm8xIHtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRoZWlnaHQ6IDM4dnc7XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG5cdC5iYW5uZXJfX3ZpZGVvIHtcclxuXHRcdHdpZHRoOjEwMCU7XHJcblx0fVxyXG5cdGgyIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6IDIwO1xyXG4gICAgXHRsZWZ0OiAzNS43NSU7XHJcblx0fVxyXG5cdC5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4ge1xyXG5cdCAgICBwYWRkaW5nLWJvdHRvbTogNTguNzUlO1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cdCAgICB0b3A6IC04JTtcclxuXHR9XHJcbn1cclxuLmRhcmtpbWFnZWJhY2suc3BsaXRoZXJvMSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi5jdnMtaG9tZS1sb2dvIHtcclxuXHR3aWR0aDogMjF2dztcclxuXHRtYXJnaW4tdG9wOjJ2dztcclxufVxyXG4uZmZsLWluZm9ncmFwaCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogNSU7XHJcbiAgICB3aWR0aDogOTAlO1xyXG59XHJcbi5mb3JkZmxlZXRsaXZlIHtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxufVxyXG4uZm9yZGZsZWV0bGl2ZSBwIHtcclxuICAgIGZvbnQtc2l6ZTogMC44dnc7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1dnc7XHJcbn1cclxuLmZvcmRmbGVldGxpdmUgaDMge1xyXG5cdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hQ29uZC1Cb2xkJztcclxuXHQgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQgICAgZm9udC1zaXplOiAydnc7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cdCAgICBsZXR0ZXItc3BhY2luZzogNnB4O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAwLjc1dnc7XHJcblx0XHR3aWR0aDogMTMwJTtcclxuICAgIFx0bWFyZ2luLWxlZnQ6IC0xNSU7XHJcblx0ICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHQgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdCAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuNyk7IFxyXG5cdCAgICBzcGFuIHtcclxuXHRcdFx0Y29sb3I6ICMwMDc1YjY7XHJcblx0ICAgIH0gXHJcbn1cclxuXHJcbi5sb2NhdGUtdXBmaXR0ZXIge1xyXG5cdGNvbG9yOiNmZmY7XHJcblxyXG5cdHAge1xyXG5cdFx0Zm9udC1zaXplOiAxLjV2dztcclxuXHR9XHJcblxyXG5cdC5jb250ZW50LWJ1Y2tldCBpbWcge1xyXG4gICAgXHRtYXgtd2lkdGg6IDEwJTtcclxuICAgIFx0cGFkZGluZy1ib3R0b206IDFyZW07XHJcblx0fVxyXG59XHJcblxyXG4uc2VhcmNoLXVwZml0cyB7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG5cdGhlaWdodDppbmhlcml0O1xyXG5cdGNvbG9yOiAkYmxhY2s7XHJcblx0cGFkZGluZzogMnJlbSAxcmVtO1xyXG5cdGgzIHtcclxuXHRcdGNvbG9yOiRibGFjaztcclxuXHRcdHRleHQtc2hhZG93OjBweCAwcHggMTVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpLCAwcHggMHB4IDE1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSwgMHB4IDBweCAxMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSksIDBweCAwcHggMTVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpLCAwcHggMHB4IDE1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSwgMHB4IDBweCAxNXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XHJcblx0fVxyXG5cdHAge1xyXG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xyXG5cdFx0dGV4dC1zaGFkb3c6MHB4IDBweCAxNXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSksIDBweCAwcHggMTVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpLCAwcHggMHB4IDE1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSwgMHB4IDBweCAxNXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSksIDBweCAwcHggMTVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpLCAwcHggMHB4IDE1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcclxuXHRcdC5idXR0b24ge1xyXG5cdFx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLmxvY2F0ZS11cGZpdHRlciAuYmFja2dyb3VuZC1pbWcge1xyXG5cdGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1x0XHJcbn1cclxuLmJhbm5lciB7XHJcbiAgLyogdGhpcyBiaXQgb2YgbWFya3VwIGlzIGVzc2VudGlhbCAqL1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIC8vIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpO1xyXG59XHJcblxyXG4uYmFubmVyX192aWRlbyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB3aWR0aDogYXV0bztcclxuICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgei1pbmRleDogLTE7XHJcbn1cclxuLmJhbm5lcl9faW1hZ2Uge1xyXG4gIHotaW5kZXg6IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZsZWV0LWJhbm5lciAuYmFubmVyX192aWRlbywgLmNvbW1lcmNpYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvLCAuYWNjZXNzaWJpbGl0eS1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5yZWNyZWF0aW9uYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuLmFsbC1pbmNlbnRpdmVzIC5mbGVldC1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5hbGwtaW5jZW50aXZlcyAuY29tbWVyY2lhbC1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5hbGwtaW5jZW50aXZlcyAuYWNjZXNzaWJpbGl0eS1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5hbGwtaW5jZW50aXZlcyAucmVjcmVhdGlvbmFsLWJhbm5lciAuYmFubmVyX192aWRlbyB7XHJcbiAgd2lkdGg6IDExMiU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uc3RhcnQtd2l0aC12ZWhpY2xlIC5iYW5uZXJfX3ZpZGVvLCAuZ2FyYWdlLWJhbm5lciAuYmFubmVyX192aWRlbyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uaGFsZi1zY3JlZW4tdmlkLmJhbm5lcl9fdmlkZW8ge1xyXG5cdG1heC13aWR0aDoxMzAlO1xyXG5cdGJhY2tncm91bmQ6JHNlY29uZGFyeS1jb2xvcjtcclxufVxyXG5cclxudmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIgeyBkaXNwbGF5Om5vbmV9XHJcblxyXG4uZW5yb2xsLXN0YXJ0ZXIge1xyXG5cdHBhZGRpbmc6MnZ3IDN2dztcclxufVxyXG4uY29tbWVyY2lhbC11bmRlcmxpbmUge1xyXG5cdGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAkd2hpdGU7XHJcbn1cclxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHJcblx0LmdyaWQtbWFyZ2luLXggPiAuY2VsbC5tZWRpdW0tOS5zcGxpdGhlcm8xIHtcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0ICAgIHdpZHRoOiBjYWxjKDc1JSAtIDFyZW0pO1xyXG5cdH1cclxuXHQuZ3JpZC1tYXJnaW4teCA+IC5jZWxsLm1lZGl1bS0zLmZvcmRmbGVldGxpdmUge1xyXG5cdCAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcblx0ICAgIHdpZHRoOiBjYWxjKDI1JSAtIDFyZW0pO1xyXG5cdH1cclxuXHQuZ3JpZC1tYXJnaW4teC5zcGxpdGhlcm8gIHtcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0ICAgIG1hcmdpbi1yaWdodDogMDtcclxuXHR9XHJcbn1cclxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwuZGFyay1iYWNrIHtcclxuXHRiYWNrZ3JvdW5kOiRkYXJrLWdyYXk7XHJcblx0cGFkZGluZzozdnc7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG59XHJcbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsLmRhcmtibHVlLWJhY2sge1xyXG5cdGJhY2tncm91bmQ6JHNlY29uZGFyeS1jb2xvcjtcclxuXHRwYWRkaW5nOjN2dztcclxuXHRjb2xvcjokd2hpdGU7XHJcbn1cclxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwuZGFyay1iYWNrIHtcclxuXHRiYWNrZ3JvdW5kOiRkYXJrLWdyYXk7XHJcblx0cGFkZGluZzozdnc7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG59XHJcbi5ncmlkLW1hcmdpbi14ID4gLmNlbGwuZGFya2ltYWdlYmFjayB7XHJcblx0cGFkZGluZzoxdncgMnZ3IDA7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG59XHJcbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsLmJsdWVuZXNzLWJhY2ssIC5jZWxsLmJsdWVuZXNzLWJhY2sge1xyXG5cdGJhY2tncm91bmQ6JHByaW1hcnktY29sb3I7XHJcblx0cGFkZGluZzoydnc7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzpoaWRkZW47XHJcbn1cclxuLmRhcmtibHVlIHAge1xyXG5cdGZvbnQtc2l6ZToxLjJyZW07XHJcblx0cGFkZGluZzowIDJ2dztcclxufVxyXG4uY2VsbC5ibHVlbmVzcy1iYWNrIHAge1xyXG5cdGZvbnQtc2l6ZToxLjJyZW07XHJcbn1cclxuLmJvdHRvbS1idW1wIHtcclxuXHRtYXJnaW4tYm90dG9tOjJyZW07XHJcbn1cclxuLmFubm91bmNlIHtcclxuXHRmb250LXNpemU6IDEuNXJlbTtcclxufVxyXG4uZW5yb2xsLXJlYXNvbnMge1xyXG5cdGJvcmRlci1ib3R0b206IDFyZW0gc29saWQgI2ZmZmZmZjtcclxufVxyXG4uZW5yb2xsLXJlYXNvbnMgaDMge1xyXG5cdGZvbnQtc2l6ZTogM3JlbTtcclxufVxyXG4uYW5ub3VuY2UtbXVnIHtcclxuXHRmb250LXNpemU6ICAyLjVyZW0gIWltcG9ydGFudDtcclxuXHRsaW5lLWhlaWdodDoxLjM7XHJcbn1cclxuLmZyZWUtbXVnIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cmlnaHQ6IC01dnc7XHJcbiAgICBib3R0b206IC01dnc7XHJcbiAgICBtYXJnaW46IDAgLTV2dyAtNXZ3IDA7XHJcbn1cclxuLmVucm9sbC1yZWFzb25zIC5kYXJrLWJhY2sgcCB7XHJcbiAgICBmb250LXNpemU6IDEuNXJlbTtcclxufVxyXG4uZW5yb2xsLXJlYXNvbnMgLmRhcmstYmFjayBsaSB7XHJcbiAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbn1cclxuLmVucm9sbC1mb3JtIGxlZ2VuZCB7XHJcbiAgICBmb250LXNpemU6IDJyZW07XHJcbn1cclxuLmVucm9sbC1mb3JtIGZpZWxkc2V0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbn1cclxuLmFjY2Vzc29yeS1zZWN0aW9uIHtcclxuXHRiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuXHRtYXJnaW4tdG9wOiAxcmVtO1xyXG5cdHBhZGRpbmctdG9wOiAycmVtO1xyXG5cdGgzIHtcclxuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHR9XHJcblx0aDQge1xyXG5cdCAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdCAgICBmb250LXNpemU6IDJ2dztcclxuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHQgICAgZGlzcGxheTpibG9jaztcclxuXHQgICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHQgICAgbWFyZ2luLXRvcDowO1xyXG5cdCAgICBwYWRkaW5nLXRvcDowO1xyXG5cdH1cclxuXHQuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xyXG5cdCAgICBib3JkZXI6IDAgc29saWQgIzEwMmI0ZTtcclxuXHQgICAgY29sb3I6ICMxMDJiNGU7XHJcblx0ICAgICY6aG92ZXIsJjphY3RpdmUsICYuaXMtYWN0aXZlIHtcclxuXHQgICAgXHRjb2xvcjogI2ZmZjtcclxuXHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdCAgICB9XHJcblx0fVxyXG5cdC5hY2Nlc3Nvcmllcy1saXN0LWhvbGRlciB7XHJcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuXHRcdHBhZGRpbmc6MnJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi5nYXJhZ2UtYmFubmVyIHtcclxuXHQuYWxsLWVxdWF0aW9uIHtcclxuXHQgICAgd2lkdGg6IDM1JTtcclxuXHQgICAgbWFyZ2luOiAxdncgYXV0bztcclxuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ICAgIC5lcS1lbGVtZW50IHtcclxuXHRcdCAgICBmb250LXNpemU6IDEuMnZ3O1xyXG5cdFx0ICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBcdFx0dGV4dC1zaGFkb3c6IDBweCAzcHggMTBweCAjMDAwMDAwLCAwcHggM3B4IDEwcHggIzAwMDAwMDtcclxuXHRcdH1cclxuXHR9XHJcblx0LmFjY29yZGlvbi5kaXNjbGFpbWVyIC5hY2NvcmRpb24tdGl0bGUge1xyXG5cdCAgICBjb2xvcjogJHdoaXRlO1xyXG5cdFx0dGV4dC1zaGFkb3c6IDBweCAzcHggMTBweCAjMDAwMDAwLCAwcHggM3B4IDEwcHggIzAwMDAwMDtcclxuXHR9XHJcbn1cclxuXHJcbi5saWdodC1ncmF5LXNlY3Rpb24ge1xyXG5cdHBhZGRpbmctdG9wOjEuODc1cmVtO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xyXG59XHJcblxyXG4uY29udGVudC1idWNrZXQge1xyXG5cdHBhZGRpbmc6IDJyZW0gMXJlbTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5cclxuLyogY3VzdG9taXplZCBmb3JtIGVsZW1lbnRzICovXHJcblxyXG4vKiBDdXN0b21pemUgdGhlIGxhYmVsICh0aGUgY29udGFpbmVyKSAqL1xyXG4uY2hlY2stY29udGFpbmVyIHtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZy1sZWZ0OiAyLjJ2dztcclxuICBtYXJnaW46IDFyZW0gMC41cmVtIDJyZW07XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4vKiBIaWRlIHRoZSBicm93c2VyJ3MgZGVmYXVsdCBjaGVja2JveCAqL1xyXG4uY2hlY2stY29udGFpbmVyIGlucHV0IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgb3BhY2l0eTogMDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIHdpZHRoOiAwO1xyXG59XHJcblxyXG4vKiBDcmVhdGUgYSBjdXN0b20gY2hlY2tib3ggKi9cclxuLmNoZWNrbWFyayB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGhlaWdodDogMS41dnc7XHJcbiAgd2lkdGg6IDEuNXZ3O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xyXG59XHJcbi5jZXJ0aWZ5LXN0ZXBzIC5jaGVja21hcmsge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xyXG59XHJcbi5pcy1pbnZhbGlkLWxhYmVsIC5jaGVja21hcmsge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGFsZXJ0LWNvbG9yO1xyXG59XHJcblxyXG4vKiBPbiBtb3VzZS1vdmVyLCBhZGQgYSBncmV5IGJhY2tncm91bmQgY29sb3IgKi9cclxuLmNoZWNrLWNvbnRhaW5lcjpob3ZlciBpbnB1dCB+IC5jaGVja21hcmssLmNoZWNrLWNvbnRhaW5lciBpbnB1dDpmb2N1cyB+IC5jaGVja21hcmsge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG59XHJcblxyXG4vKiBXaGVuIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBhZGQgYSBibHVlIGJhY2tncm91bmQgKi9cclxuLmNoZWNrLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxufVxyXG5cclxuLyogQ3JlYXRlIHRoZSBjaGVja21hcmsvaW5kaWNhdG9yIChoaWRkZW4gd2hlbiBub3QgY2hlY2tlZCkgKi9cclxuLmNoZWNrbWFyazphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogU2hvdyB0aGUgY2hlY2ttYXJrIHdoZW4gY2hlY2tlZCAqL1xyXG4uY2hlY2stY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLyogU3R5bGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKi9cclxuLmNoZWNrLWNvbnRhaW5lciAuY2hlY2ttYXJrOmFmdGVyIHtcclxuICBsZWZ0OiAwLjR2dztcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDAuNnZ3O1xyXG4gIGhlaWdodDogMS4ydnc7XHJcbiAgYm9yZGVyOiBzb2xpZCB3aGl0ZTtcclxuICBib3JkZXItd2lkdGg6IDAgM3B4IDNweCAwO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG59XHJcblxyXG5cclxuXHJcbi8qIEN1c3RvbWl6ZSB0aGUgbGFiZWwgKHRoZSByYWRpbykgKi9cclxuLnJhZGlvLWNvbnRhaW5lciB7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmctbGVmdDogMi4ydnc7XHJcbiAgbWFyZ2luOiAxcmVtIDAuNXJlbSAycmVtO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLyogSGlkZSB0aGUgYnJvd3NlcidzIGRlZmF1bHQgY2hlY2tib3ggKi9cclxuLnJhZGlvLWNvbnRhaW5lciBpbnB1dCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGhlaWdodDogMDtcclxuICB3aWR0aDogMDtcclxufVxyXG5cclxuLyogQ3JlYXRlIGEgY3VzdG9tIGNoZWNrYm94ICovXHJcbi5yYWRpbyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGhlaWdodDogMS41dnc7XHJcbiAgd2lkdGg6IDEuNXZ3O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XHJcbn1cclxuLmNlcnRpZnktc3RlcHMgLnJhZGlvIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcclxufVxyXG4uaXMtaW52YWxpZC1sYWJlbCAucmFkaW8ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGFsZXJ0LWNvbG9yO1xyXG59XHJcblxyXG4vKiBPbiBtb3VzZS1vdmVyLCBhZGQgYSBncmV5IGJhY2tncm91bmQgY29sb3IgKi9cclxuLnJhZGlvLWNvbnRhaW5lcjpob3ZlciBpbnB1dCB+IC5yYWRpbywucmFkaW8tY29udGFpbmVyIGlucHV0OmZvY3VzIH4gLnJhZGlvIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG59XHJcblxyXG4vKiBXaGVuIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBhZGQgYSBibHVlIGJhY2tncm91bmQgKi9cclxuLnJhZGlvLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLnJhZGlvIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG59XHJcblxyXG4vKiBDcmVhdGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKGhpZGRlbiB3aGVuIG5vdCBjaGVja2VkKSAqL1xyXG4ucmFkaW86YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNob3cgdGhlIGNoZWNrbWFyayB3aGVuIGNoZWNrZWQgKi9cclxuLnJhZGlvLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLnJhZGlvOmFmdGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLyogU3R5bGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKi9cclxuLnJhZGlvLWNvbnRhaW5lciAucmFkaW86YWZ0ZXIge1xyXG4gIGxlZnQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHdpZHRoOiAxLjR2dztcclxuICBoZWlnaHQ6IDEuNHZ3O1xyXG4gIGJhY2tncm91bmQ6JHByaW1hcnktY29sb3I7XHJcbiAgYm9yZGVyOiBzb2xpZCB3aGl0ZTtcclxuICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICBib3JkZXItd2lkdGg6IDNweCAzcHggM3B4IDNweDtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxufVxyXG5cclxuXHJcbnNlY3Rpb246bm90KC5iYW5uZXIpIC5idXR0b24ge1xyXG4gICAvLyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcblxyXG59XHJcbnNlY3Rpb246bm90KC5iYW5uZXIpIC5idXR0b24ubGFyZ2UsIHNlY3Rpb24uYmFubmVyIC5zcGVjaWFsLWhvbWUtYW5ub3VuY2UgLmJ1dHRvbi5sYXJnZSB7XHJcbiAgICBwYWRkaW5nOiAxLjF2dyA0dncgMS4zdnc7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjV2dztcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgIFx0Y29udGVudDogJyc7XHJcblx0ICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYnV0dG9uLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcblx0ICAgIHdpZHRoOiAxdnc7XHJcblx0ICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdCAgICBoZWlnaHQ6IDEuNjV2dztcclxuXHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdCAgICBsZWZ0OiAxdnc7XHJcblx0ICAgIHRvcDogMC4zdnc7XHJcbiAgICB9XHJcbiAgICAmLmRvd25sb2FkOmFmdGVyIHtcclxuXHQgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9kb3dubG9hZC1jYXJldC13aGl0ZS5wbmcpO1xyXG5cdCAgICB3aWR0aDogMnZ3O1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuc2VjdGlvbi5iYW5uZXIgLmJ1dHRvbi5sYXJnZS5zcGVjaWFsbGluayB7XHJcbiAgICBwYWRkaW5nOiAwLjh2dyAydncgMC44dnc7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjF2dztcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgIFx0Y29udGVudDogJyc7XHJcblx0ICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYnV0dG9uLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcblx0ICAgIHdpZHRoOiAwLjV2dztcclxuXHQgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgIGhlaWdodDogMXZ3O1xyXG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ICAgIGxlZnQ6IDF2dztcclxuXHQgICAgdG9wOiAwLjE1dnc7XHJcbiAgICB9XHJcblxyXG59XHJcbnNlY3Rpb246bm90KC5iYW5uZXIpIGlucHV0LmJ1dHRvbi5sYXJnZSwgIGlucHV0LmJ1dHRvbi5sYXJnZSB7XHJcblx0YmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgdXJsKC4uL2ltZy9idXR0b24tY2FyZXQucG5nKSBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgM3Z3IGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IDAuNzV2dyAxLjY1dnc7XHJcbiAgICBwYWRkaW5nOiAxLjJ2dyA1dncgMS4ydncgNHZ3O1xyXG5cclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0yNSUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxufVxyXG5cclxuc2VjdGlvbjpub3QoLmJhbm5lcikgLmJ1dHRvbi5sYXJnZS5ob2xsb3csIHNlY3Rpb24uYmFubmVyIC5zcGVjaWFsLWhvbWUtYW5ub3VuY2UgLmJ1dHRvbi5sYXJnZS5ob2xsb3cge1xyXG4gICAgJjphZnRlciB7XHJcblx0ICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYnV0dG9uLWNhcmV0LWJsdWUucG5nKTtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5idXR0b24uc21hbGwge1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgcGFkZGluZzogMC44NWVtIDNlbTtcclxufVxyXG4uYnV0dG9uLnNtYWxsLmhvbGxvdyB7XHJcbiAgICBib3JkZXItd2lkdGg6MXB4O1xyXG59XHJcblxyXG5cclxuLmJ1dHRvbi5vZmZzaXRlLWN0YSB7XHJcblx0Y29sb3I6JHByaW1hcnktY29sb3I7XHJcblx0YmFja2dyb3VuZDogJHdoaXRlO1xyXG5cdGZvbnQtc2l6ZTogMC44NzV2dztcclxuICAgIHBhZGRpbmc6IDAuODV2dyAzdncgMC44NXZ3IDF2dztcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgIFx0Y29udGVudDogJyc7XHJcblx0ICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvb2Zmc2l0ZS1jYXJldC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG5cdCAgICB3aWR0aDogMXZ3O1xyXG5cdCAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcblx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQgICAgaGVpZ2h0OiAxLjY1dnc7XHJcblx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIFx0cmlnaHQ6IDA7XHJcblx0ICAgIHRvcDogMC4zdnc7XHJcbiAgICB9XHJcblxyXG59XHJcbi5zcGVjaWFsLWhvbWUtYW5ub3VuY2Uge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3R0b206IDF2dztcclxufVxyXG5cclxuLmdvdG8tZGlyZWN0b3J5IHtcclxuXHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHR0b3A6MzklO1xyXG59XHJcbi5zY3JlZW4tcmVhZGVyLXRleHQge1xyXG4gIGJvcmRlcjogMDtcclxuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XHJcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgd2lkdGg6IDFweDtcclxuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG59XHJcbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xyXG4gIGNsaXAtcGF0aDogbm9uZTtcclxuICBjb2xvcjogIzQ0NDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LXNpemU6IDFlbTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgbGVmdDogNXB4O1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRvcDogNXB4O1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cclxufVxyXG5cclxuLnByb21vdGlvbmFsLXNlY3Rpb24ge1xyXG5cdHBhZGRpbmc6MnJlbSAxcmVtIDA7XHJcbn1cclxuLmZvb3Rlci1sb2dvIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMXJlbTtcclxufVxyXG4ucHJvbW8tcm93IHtcclxuXHRwYWRkaW5nLWJvdHRvbToycmVtO1xyXG59XHJcbi5wcm9tby10aWxlIHtcclxuXHRoZWlnaHQ6Mjd2dztcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG4gIFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBcdGEge1xyXG4gIFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgXHRoZWlnaHQ6IDEwMCU7XHJcbiAgXHRcdHRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlO1xyXG5cclxuXHJcblx0ICBcdGltZyB7XHJcblx0ICBcdFx0dHJhbnNpdGlvbjotd2Via2l0LWZpbHRlciAzMDBtcyBlYXNlLGZpbHRlciAzMDBtcyBlYXNlO1xyXG5cdCAgXHR9XHJcbiAgXHRcclxuXHJcblx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcclxuXHRcdFx0YmFja2dyb3VuZDpyZ2JhKDE2LDQzLDc4LDAuNyk7XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpob3ZlciBpbWcsJjpmb2N1cyBpbWcge1xyXG5cdFx0XHQtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpOyAvKiBTYWZhcmkgNi4wIC0gOS4wICovXHJcbiAgICBcdFx0ZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XHJcblx0XHR9XHJcblx0XHQmOmhvdmVyIHNwYW4sJjpmb2N1cyBzcGFuIHtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuXHRcdH1cclxuICBcdH1cclxufVxyXG4ucHJvbW8tdGlsZTIge1xyXG5cdGhlaWdodDoyMXZ3O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbiAgXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgXHR0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZTtcclxuICBcdGEge1xyXG4gIFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgXHRoZWlnaHQ6IDEwMCU7XHJcbiAgICBcdFxyXG5cdCAgXHRpbWcge1xyXG5cdCAgXHRcdHRyYW5zaXRpb246LXdlYmtpdC1maWx0ZXIgMzAwbXMgZWFzZSxmaWx0ZXIgMzAwbXMgZWFzZTtcclxuXHQgIFx0fVxyXG5cdFx0XHQmOmhvdmVyLCY6Zm9jdXMge1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6cmdiYSgxNiw0Myw3OCwwLjcpO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6aG92ZXIgaW1nLCY6Zm9jdXMgaW1nIHtcclxuXHRcdFx0XHQtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpOyAvKiBTYWZhcmkgNi4wIC0gOS4wICovXHJcblx0ICAgIFx0XHRmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOmhvdmVyIHNwYW4sJjpmb2N1cyBzcGFuIHtcclxuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG5cdFx0XHR9XHJcbiAgXHR9XHJcbn1cclxuLmN2cy1kZWFsc3RoYXRkZWxpdmVyIHtcclxuICAgIHdpZHRoOiA0NSU7XHJcbn1cclxuXHJcbi5wcm9tb19fYmFja2dyb3VuZCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB3aWR0aDogYXV0bztcclxuICBtaW4td2lkdGg6IDEwMSU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHotaW5kZXg6IC0xO1xyXG59XHJcbi5wcm9tb19fYmFja2dyb3VuZDIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWluLXdpZHRoOiAxMDElO1xyXG4gIGhlaWdodDogYXV0bztcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICB6LWluZGV4OiAtMTtcclxufVxyXG5cclxuLnJlY3JlYXRpb25hbC10aWxlIC5wcm9tb19fYmFja2dyb3VuZCB7XHJcbiAgICBtaW4td2lkdGg6IDEyMCU7XHJcbn1cclxuXHJcbi5mbGVldC10aWxlIC5wcm9tb19fYmFja2dyb3VuZCB7XHJcbiAgICBtaW4td2lkdGg6IDExMCU7XHJcbn1cclxuXHJcbi5wcm9tby1jdGEge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAgMC4xdncgMXZ3IDAuM3Z3IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIC8vIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVNlbWlib2xkJywgc2FuLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxLjJ2dztcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC43NSk7XHJcblxyXG5cdHNwYW4ge1xyXG5cdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAzOXB4O1xyXG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY2lyY2xlLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcblx0XHQgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHQgICAgdG9wOiAwLjV2dztcclxuXHRcdCAgICB3aWR0aDogMnZ3O1xyXG5cdFx0ICAgIGhlaWdodDogMnZ3O1xyXG5cdFx0ICAgIG1hcmdpbi1sZWZ0OiAxdnc7XHJcblx0XHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmdpZi1iYWNrLnBhdXNlZCB7XHJcblx0ZGlzcGxheTpub25lO1xyXG59XHJcbi5idXR0b24ucGxheS1wYXVzZSB7XHJcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIHdpZHRoOiAzdnc7XHJcblx0XHQgICAgaGVpZ2h0OiAzdnc7XHJcblx0XHQgICAgcGFkZGluZzowO1xyXG5cdFx0ICAgIG1hcmdpbjowO1xyXG5cdFx0ICAgIHRvcDowLjJ2dztcclxuXHRcdCAgICByaWdodDowLjJ2dztcclxuXHRcdCAgICBiYWNrZ3JvdW5kOm5vbmU7XHJcblx0XHQgICAgb3BhY2l0eTowLjc7XHJcblx0XHQgICAgei1pbmRleDoyMDtcclxuXHRcclxuXHQmOmJlZm9yZSB7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvcGF1c2UucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuXHRcdCAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0ICAgIHRvcDogOCU7XHJcblx0XHQgICAgbGVmdDo4JTtcclxuXHRcdCAgICB3aWR0aDogODQlO1xyXG5cdFx0ICAgIGhlaWdodDogODQlO1xyXG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICBvcGFjaXR5OjE7XHJcblx0fVxyXG5cdFxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0XHRjb250ZW50OiAnJztcclxuXHRcdCAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3BsYXkucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuXHRcdCAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0ICAgIHRvcDogOCU7XHJcblx0XHQgICAgbGVmdDo4JTtcclxuXHRcdCAgICB3aWR0aDogODQlO1xyXG5cdFx0ICAgIGhlaWdodDogODQlO1xyXG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICBvcGFjaXR5OjA7XHJcblx0fVxyXG59XHJcbi5idXR0b24ucGxheS1wYXVzZS5wYXVzZWQge1xyXG5cdCY6YmVmb3JlIHtcclxuXHRcdCAgICBvcGFjaXR5OjA7XHJcblx0fVxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0ICAgIG9wYWNpdHk6MTtcclxuXHR9XHJcblx0XHJcbn1cclxuLmNlbGwudmlkZW8tY29udHJvbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAuYnV0dG9uLnBsYXktcGF1c2Uge1xyXG4gICAgXHRyaWdodDogMS40dnc7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5lcXVhdGlvbiB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDJ2dyBhdXRvO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIC5lcS1lbGVtZW50IHtcclxuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdCAgICB3aWR0aDphdXRvO1xyXG5cdFx0Zm9udC1zaXplOiAxLjI1dnc7XHJcblx0XHRsaW5lLWhlaWdodDoxLjU7XHJcblxyXG5cdCAgICBzcGFuIHtcclxuXHQgICAgXHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0XHRmb250LXNpemU6IDV2dztcclxuXHRcdFx0bGluZS1oZWlnaHQ6MTtcclxuXHQgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5lcS1vcGVyYXRvcntcclxuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdCAgICB3aWR0aDphdXRvO1xyXG5cdCAgICBwYWRkaW5nOjAgMS41dnc7XHJcblx0ICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHJcblx0ICAgIHNwYW4ge1xyXG5cdFx0XHQgIGJvcmRlcjogMDtcclxuXHRcdFx0ICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XHJcblx0XHRcdCAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xyXG5cdFx0XHQgIGhlaWdodDogMXB4O1xyXG5cdFx0XHQgIG1hcmdpbjogLTFweDtcclxuXHRcdFx0ICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHQgIHBhZGRpbmc6IDA7XHJcblx0XHRcdCAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcblx0XHRcdCAgd2lkdGg6IDFweDtcclxuXHRcdFx0ICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG5cclxuXHRcdCAgICAmOmZvY3VzIHtcclxuXHRcdFx0XHQgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcblx0XHRcdFx0ICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0ICBjbGlwLXBhdGg6IG5vbmU7XHJcblx0XHRcdFx0ICBjb2xvcjogIzQ0NDtcclxuXHRcdFx0XHQgIGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdCAgZm9udC1zaXplOiAxZW07XHJcblx0XHRcdFx0ICBoZWlnaHQ6IGF1dG87XHJcblx0XHRcdFx0ICBsZWZ0OiA1cHg7XHJcblx0XHRcdFx0ICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG5cdFx0XHRcdCAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XHJcblx0XHRcdFx0ICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdFx0ICB0b3A6IDVweDtcclxuXHRcdFx0XHQgIHdpZHRoOiBhdXRvO1xyXG5cdFx0XHRcdCAgei1pbmRleDogMTAwMDAwOyAvKiBBYm92ZSBXUCB0b29sYmFyLiAqL1xyXG5cdFx0ICAgIFxyXG5cdFx0ICAgIH1cclxuXHQgICAgfVxyXG5cclxuXHQgICAgJjphZnRlciB7XHJcblx0ICAgIFx0Y29udGVudDogJysnO1xyXG5cdFx0XHRmb250LXNpemU6IDV2dztcclxuXHRcdFx0bGluZS1oZWlnaHQ6MTtcclxuXHRcdFx0dG9wOiAtMnZ3O1xyXG4gICAgXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQgICAgfVxyXG5cclxuXHQgICAgJi5vcjphZnRlciB7XHJcblx0ICAgIFx0Y29udGVudDogJ09SJztcclxuXHRcdCAgICBmb250LXNpemU6IDN2dztcclxuXHRcdCAgICBsaW5lLWhlaWdodDogMTtcclxuXHRcdCAgICB0b3A6IC0yLjV2dztcclxuXHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHQgICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJztcclxuXHQgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZ2FyYWdlLWN0YSBwIHtcclxuICAgIGZvbnQtc2l6ZTogMS4zdnc7XHJcbiAgICBwYWRkaW5nOiAxcmVtIDR2dyAwO1xyXG59XHJcblxyXG4ubGlnaHQtc2VjdGlvbi5pbmNlbnRpdmUtbWF0aCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbn1cclxuXHJcbi5iZXN0LWluLWNsYXNzLXNlY3Rpb24ge1xyXG5cdGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgcCB7XHJcbiAgICBcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xyXG5cdCAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgIFx0bGluZS1oZWlnaHQ6IDEuNjtcclxuXHQgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG4uYmVzdC1pbi1jbGFzcyB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgbGkuYmljLWVsZW1lbnQge1xyXG4gICAgXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcclxuXHQgICAgcGFkZGluZzogMXJlbSA0dnc7XHJcblx0ICAgIGNvbG9yOiAkd2hpdGU7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS4zdnc7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZWNvbmRhcnktY3RhLXNlY3Rpb24ge1xyXG5cclxuICAgIGJvcmRlci1ib3R0b206MXJlbSBzb2xpZCAkd2hpdGU7XHJcblxyXG4gICAgLnByb21vX19iYWNrZ3JvdW5kIHtcclxuICAgIFx0bWluLXdpZHRoOjExNSU7XHJcbiAgICBcdGxlZnQ6NTclO1xyXG4gICAgfVxyXG4gICAgLnByb21vX19iYWNrZ3JvdW5kMiB7XHJcbiAgICBcdG1pbi13aWR0aDoxMTUlO1xyXG4gICAgXHRsZWZ0OjUwJTtcclxuICAgIH1cclxuXHJcblx0aDMge1xyXG5cdFx0Ly8gdGV4dC1zaGFkb3c6IDBweCAwcHggMTBweCByZ2JhKDAsMCwwLDEpO1xyXG5cdCAgICBtYXJnaW46IDEwcHggYXV0bztcclxuXHQgICAgZGlzcGxheTogdGFibGU7XHJcblx0ICAgIHBhZGRpbmc6IDAuMjV2dyAxMHZ3O1xyXG5cdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuXHR9XHJcblx0XHJcblx0LmNlbGwge1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHQgIFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxufVxyXG4uY2FsbHMtdG8tYWN0aW9uIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAzcmVtIDA7XHJcblxyXG4gICAgbGkuY3RhLWVsZW1lbnQge1xyXG4gICAgXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcclxuXHQgICAgcGFkZGluZzogMCAxdnc7XHJcblx0ICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi51cGZpdC1vcHRpb25zLXNlY3Rpb24ge1xyXG5cdGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XHJcblxyXG5cdC5jb250ZW50LWJ1Y2tldCB7XHJcblx0XHRwYWRkaW5nOiAxLjV2dyAwIDA7XHJcblx0fVxyXG5cclxuXHQudGFicyB7XHJcblx0XHRib3JkZXItd2lkdGg6IDA7XHJcblx0fVxyXG5cclxuXHJcblx0LnRhYnMtdGl0bGUge1xyXG5cdCAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgIHBhZGRpbmc6IDAuNSU7XHJcblx0ICAgIHdpZHRoOiAyNCU7XHJcblxyXG5cdCAgICA+IGEge1xyXG5cdCAgICBcdGZvbnQtc2l6ZToxLjJ2dztcclxuXHQgICAgXHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuXHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHQgICAgXHRjb2xvcjogJHdoaXRlO1xyXG5cdCAgICBcdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XHJcblx0ICAgIFx0cGFkZGluZzogMS4yNXJlbSAxdnc7XHJcblxyXG5cdCAgICBcdCY6Zm9jdXMsICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcclxuXHRcdFx0ICAgIGJhY2tncm91bmQ6ICMzN2E5ZTg7XHJcblx0XHRcdCAgICBjb2xvcjogJGJsYWNrO1xyXG5cdFx0XHQgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XHJcblx0XHRcdH1cclxuXHJcblx0ICAgIH1cclxuXHR9XHJcblxyXG5cdC50YWJzLWNvbnRlbnQge1xyXG5cdCAgICBib3JkZXItdG9wOiAwO1xyXG5cdCAgICBjb2xvcjogJHdoaXRlO1xyXG5cdCAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdGJvcmRlci13aWR0aDogMDtcclxuXHJcblx0ICAgIFx0XHJcblx0XHQudXBmaXQtc2xpY2Uge1xyXG5cdFx0ICAgIGJhY2tncm91bmQ6ICRkYXJrLWdyYXk7XHJcblx0XHQgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcclxuICAgIFx0XHRtYXJnaW4tbGVmdDogLTFyZW07XHJcbiAgICBcdFx0Ym9yZGVyLWJvdHRvbToxcmVtIHNvbGlkICR3aGl0ZTtcclxuXHRcdH1cclxuXHJcblx0ICAgIHB7XHJcblx0ICAgIFx0Zm9udC1zaXplOiAxLjI1dnc7XHJcblx0ICAgIH1cclxuXHQgICAgLnRhYnMtcGFuZWwge1xyXG5cdCAgICBcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdCAgICBcdHBhZGRpbmctYm90dG9tOjJyZW07XHJcblx0ICAgIFx0dHJhbnNpdGlvbjpsZWZ0IDUwMG1zIGVhc2U7XHJcblx0ICAgIFx0dHJhbnNpdGlvbi1kZWxheTogMXM7XHJcblx0ICAgIFx0bGVmdDogMTAwJTtcclxuXHJcblx0ICAgIFx0Ji5pcy1hY3RpdmUge1xyXG5cdCAgICBcdFx0bGVmdDowO1xyXG5cdCAgICBcdH1cclxuXHJcblx0ICAgIFx0bGkge1xyXG5cdCAgICBcdFx0cGFkZGluZy1ib3R0b206IDAuNXJlbTtcclxuXHQgICAgXHR9XHJcblxyXG5cclxuXHQgICAgfVxyXG5cdH1cclxuXHJcblxyXG5cdC50YWItZ2FsbGVyeS1oZXJvIHtcclxuXHRcdGNvbG9yOiNmZmY7XHJcblx0XHRoZWlnaHQ6MjJ2dztcclxuXHRcdGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHJcblxyXG5cdFx0LmNvbnRlbnQtYnVja2V0IHtcclxuXHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcdFxyXG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdH1cclxuXHJcblx0XHRwIHtcclxuXHRcdFx0dGV4dC1hbGlnbjpsZWZ0O1xyXG5cdFx0XHRmb250LXNpemU6MS43NXZ3O1xyXG5cdFx0XHRwYWRkaW5nOjF2dyA0dnc7XHJcblx0ICAgIFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcclxuXHQgICAgXHQmOmJlZm9yZSB7XHJcblx0XHQgICBcdFx0Y29udGVudDogJyc7XHJcblx0XHQgICBcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltZy9nYWxsZXJ5LWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcblx0XHQgICBcdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cdFx0XHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHQgICAgd2lkdGg6IDR2dztcclxuXHRcdFx0ICAgIGhlaWdodDogMi44NTJ2dztcclxuXHRcdFx0ICAgIG1hcmdpbi1sZWZ0OiAtNC4xdnc7XHJcblx0XHRcdCAgICB0b3A6IDAuNHZ3O1xyXG5cdFx0XHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHQgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2U7XHJcblx0ICAgIFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5nYWxsZXJ5LWN0YS1ob2xkZXIge1xyXG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICBib3R0b206IDEuNXZ3O1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6NHZ3O1xyXG5cdFx0XHR3aWR0aDogY2FsYygxMDAlIC0gNHZ3KVxyXG5cdFx0ICAgIH1cclxuXHRcdC5nYWxsZXJ5LWN0YSB7XHJcblx0XHQgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHQgICAgcGFkZGluZzogMC4xdncgMXZ3IDAuM3Z3IDA7XHJcblx0XHQgICAgcmlnaHQ6IDA7XHJcblx0XHQgICAgLy8gdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdCAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVNlbWlib2xkJywgc2FuLXNlcmlmO1xyXG5cdFx0ICAgIGZvbnQtc2l6ZTogMS4ydnc7XHJcblx0XHQgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTtcclxuXHRcdFx0c3BhbiB7XHJcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMzlweDtcclxuXHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHJcblx0XHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0XHQgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9jaXJjbGUtY2FyZXQucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuXHRcdFx0XHQgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRcdFx0XHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdCAgICB0b3A6IDAuNXZ3O1xyXG5cdFx0XHRcdCAgICB3aWR0aDogMnZ3O1xyXG5cdFx0XHRcdCAgICBoZWlnaHQ6IDJ2dztcclxuXHRcdFx0XHQgICAgbWFyZ2luLWxlZnQ6IDF2dztcclxuXHRcdFx0XHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmOmhvdmVyIHNwYW4ge1xyXG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5vZmYge1xyXG5cdFx0XHRkaXNwbGF5Om5vbmU7XHJcblx0XHR9XHJcblx0XHQuYmFja2dyb3VuZC1pbWcge1xyXG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdFx0b3ZlcmZsb3c6aGlkZGVuO1xyXG5cdFx0XHRoZWlnaHQ6aW5oZXJpdDtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHQucHJvbW9fX2JhY2tncm91bmQge1xyXG5cdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHQgICAgdG9wOiA1MCU7XHJcblx0XHRcdCAgICBsZWZ0OiA1MCU7XHJcblx0XHRcdCAgICB3aWR0aDogYXV0bztcclxuXHRcdFx0ICAgIG1pbi13aWR0aDogMTAxJTtcclxuXHRcdFx0ICAgIGhlaWdodDogYXV0bztcclxuXHRcdFx0ICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdCAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdFx0ICAgIHotaW5kZXg6IDA7XHJcblx0XHRcdCAgICB9XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5tb3Rvci1zZWN0aW9uLWxpbmUge1xyXG5cdFx0ICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcblxyXG5cdFx0ICAgIC5iYWNrZ3JvdW5kLWltZyB7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuZmxlZXQtc2VjdGlvbi1saW5lIHtcclxuXHRcdCAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHQuYmFja2dyb3VuZC1pbWcge1xyXG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG59XHJcblxyXG4udXBmaXQtZ2FsbGVyeS1zZWN0aW9uIHtcclxuXHJcblxyXG5cdC50YWJzLWNvbnRlbnQge1xyXG5cdFx0ICAgIGJvcmRlcjogMCBzb2xpZCAjZjdmN2Y3O1xyXG5cdFx0ICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHQgICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcblx0fVxyXG5cclxuXHQuY29udGVudC1ob2xkZXIge1xyXG5cdFx0cGFkZGluZzogMnJlbSAwO1xyXG5cdH1cclxuXHJcblx0LnBob3RvZ3JpZCAuY2VsbCB7XHJcblx0XHRwYWRkaW5nOjAuNXZ3O1xyXG5cclxuXHRcdCYub2ZmIHtcclxuXHRcdFx0ZGlzcGxheTpub25lO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcbn1cclxuXHJcbi5waG90b2dyaWQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxucC5jb21tZXJjaWFsLWN1cCB7XHJcblx0ZGlzcGxheTpub25lO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMnZ3O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHRvcDogMzB2aDtcclxuICAgIG1hcmdpbi1sZWZ0OiAxdnc7XHJcblx0dGV4dC1zaGFkb3c6IDBweCAzcHggMTBweCAjMDAwMDAwLDBweCAzcHggMTBweCAjMDAwMDAwO1xyXG5cclxuICAgIGltZyB7XHJcblx0ICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdCAgICB0b3A6IC04dmg7XHJcblx0ICAgIGxlZnQ6IDE4dnc7XHJcblx0ICAgIHdpZHRoOiAxMXZ3O1xyXG5cdCAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmludHJvLWN0YSBsYWJlbCB7XHJcblx0dGV4dC1zaGFkb3c6IDBweCAwcHggMTBweCAjMDAwMDAwLDBweCAwcHggMTBweCAjMDAwMDAwO1xyXG5cdH1cclxuXHJcblxyXG4ucHJvZ3JhbS1pbnRybyB7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG5cdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0Ym9yZGVyLWJvdHRvbToxcmVtIHNvbGlkICR3aGl0ZTtcclxuXHJcblx0cCB7XHJcblx0XHRmb250LXNpemU6IDEuMnJlbTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxLjY7XHJcblxyXG5cdFx0c3BhbiB7XHJcblx0XHRcdGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xyXG5cdCAgICBcdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQm9sZCcsIHNhbi1zZXJpZjtcclxuXHRcdH1cclxuXHR9XHJcblx0aDQge1xyXG5cdCAgICBwYWRkaW5nOiAwIDAgMS4xdncgMDtcclxuXHQgICAgbWFyZ2luOiAxLjJ2dyAwIDAgMDtcclxuXHQgICAgZGlzcGxheTogYmxvY2s7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS44cmVtO1xyXG5cdH1cclxufVxyXG5cclxuLnByb2dyYW0taW50cm8tcmVjIHtcclxuXHRjb2xvcjokYmxhY2s7XHJcblx0YmFja2dyb3VuZDogJHdoaXRlO1xyXG5cdGJvcmRlci1ib3R0b206MXJlbSBzb2xpZCAkd2hpdGU7XHJcbn1cclxuXHJcbi52ZWhpY2xlLXR5cGVzLXNlY3Rpb24ge1xyXG5cdGJhY2tncm91bmQ6JGxpZ2h0LWdyYXk7XHJcblx0Y29sb3I6JGJsYWNrO1xyXG5cdC8vIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0Ym9yZGVyLWJvdHRvbToxcmVtIHNvbGlkICR3aGl0ZTtcclxuXHJcblx0aDIge1xyXG5cdFx0Zm9udC1zaXplOiAxcmVtO1xyXG5cdCAgICBjb2xvcjogIzAwMDAwMDtcclxuXHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdCAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG5cdCAgICB3aWR0aDogMTAwJTtcclxuXHQgICAgcGFkZGluZzogMnJlbSAwO1xyXG5cdH1cclxuXHRoMyB7XHJcblx0ICAgIGNvbG9yOiAjMDAwMDAwO1xyXG5cdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ICAgIHBhZGRpbmc6IDFyZW0gMCAwO1xyXG5cdH1cclxuICBcdGEge1xyXG4gIFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgXHRoZWlnaHQ6IDEwMCU7XHJcbiAgICBcdHBhZGRpbmctYm90dG9tOjFyZW07XHJcblxyXG4gICAgXHRzcGFuIHtcclxuICAgIFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIFx0XHRwYWRkaW5nLXRvcDoxcmVtO1xyXG4gICAgXHR9XHJcblxyXG5cclxuXHQgIFx0aW1nIHtcclxuXHQgIFx0XHR0cmFuc2l0aW9uOi13ZWJraXQtZmlsdGVyIDMwMG1zIGVhc2UsZmlsdGVyIDMwMG1zIGVhc2U7XHJcblx0ICBcdH1cclxuICBcdFxyXG5cclxuXHRcdCY6aG92ZXIsICY6Zm9jdXMge1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIgaW1nLCY6Zm9jdXMgaW1nIHtcclxuXHRcdFx0LXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsgLyogU2FmYXJpIDYuMCAtIDkuMCAqL1xyXG4gICAgXHRcdGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG5cdFx0fVxyXG5cdFx0Jjpob3ZlciBzcGFuLCY6Zm9jdXMgc3BhbiB7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcblx0XHR9XHJcbiAgXHR9XHJcbn1cclxuXHJcblxyXG4uYmx1ZS1iYWNrIHtcclxuXHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuXHJcblx0aDMge1xyXG5cdCAgICBjb2xvcjogI2ZmZjtcclxuXHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdH1cclxuXHRhIHtcclxuXHRcdGNvbG9yOiR3aGl0ZTtcclxuXHR9XHJcblxyXG59XHJcblxyXG4uYWxsLWluY2VudGl2ZXMge1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXJlbSBzb2xpZCAkd2hpdGU7XHJcblxyXG5cdFx0YSB7XHJcbiAgXHQgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBcdGhlaWdodDogMTAwJTtcclxuXHJcbiAgICBcdC5hbGwtaW5jZW50aXZlLXZpZGVvIHtcclxuXHQgIFx0XHR0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgMzAwbXMgZWFzZTtcclxuXHRcdFx0YmFja2dyb3VuZDpyZ2JhKDE2LDQzLDc4LDApO1xyXG4gICAgXHR9XHJcbiAgICBcdFxyXG5cdCAgXHR2aWRlbyB7XHJcblx0ICBcdFx0dHJhbnNpdGlvbjotd2Via2l0LWZpbHRlciAzMDBtcyBlYXNlLGZpbHRlciAzMDBtcyBlYXNlO1xyXG5cdCAgXHR9XHJcblx0XHRcdCY6aG92ZXIsJjpmb2N1cyB7XHJcblxyXG5cdFx0ICAgIFx0LmFsbC1pbmNlbnRpdmUtdmlkZW8ge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDE2LDQzLDc4LDAuNyk7XHJcblx0XHQgICAgXHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Jjpob3ZlciB2aWRlbywmOmZvY3VzIHZpZGVvLCY6aG92ZXIgaW1nLCY6Zm9jdXMgaW1nIHtcclxuXHRcdFx0XHQtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpOyAvKiBTYWZhcmkgNi4wIC0gOS4wICovXHJcblx0ICAgIFx0XHRmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOmhvdmVyIHNwYW4sJjpmb2N1cyBzcGFuIHtcclxuXHJcblx0XHRcdH1cclxuICBcdH1cclxufVxyXG5cclxuLmFsbC1pbmNlbnRpdmUtdmlkZW8ge1xyXG5cdGhlaWdodDoyNi4yNXZ3O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbiAgXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Ym9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cclxuXHRoMiB7XHJcblx0XHQvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0Zm9udC1zaXplOiAyLjV2dztcclxuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0cGFkZGluZzowLjc1dncgMDtcclxuXHRcdHRleHQtc2hhZG93OiAwcHggMHB4IDEwcHggIzAwMDAwMCwwcHggMHB4IDEwcHggIzAwMDAwMDtcclxuXHRcdGJhY2tncm91bmQ6JHNlY29uZGFyeS1jb2xvcjtcclxuXHR9XHJcbn1cclxuLmFsbC1pbmNlbnRpdmUtbWF0aCB7XHJcblx0aDMge1xyXG5cdFx0Zm9udC1zaXplOiAxLjI1dnc7XHJcblx0fVxyXG59XHJcblxyXG4uYWxsLWVxdWF0aW9uIHtcclxuXHR3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMXZ3IGF1dG87XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLmVxLWVsZW1lbnQge1xyXG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgIHdpZHRoOmF1dG87XHJcblx0XHRmb250LXNpemU6IDF2dztcclxuXHRcdGxpbmUtaGVpZ2h0OjEuNTtcclxuXHRcdGNvbG9yOiRibGFjaztcclxuXHJcblx0ICAgIHNwYW4ge1xyXG5cdCAgICBcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRcdGZvbnQtc2l6ZTogMi41dnc7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OjE7XHJcblx0ICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZXEtb3BlcmF0b3J7XHJcblx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQgICAgd2lkdGg6YXV0bztcclxuXHQgICAgcGFkZGluZzowIDAuNzV2dztcclxuXHQgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cclxuXHQgICAgc3BhbiB7XHJcblx0XHRcdCAgYm9yZGVyOiAwO1xyXG5cdFx0XHQgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcclxuXHRcdFx0ICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XHJcblx0XHRcdCAgaGVpZ2h0OiAxcHg7XHJcblx0XHRcdCAgbWFyZ2luOiAtMXB4O1xyXG5cdFx0XHQgIG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdCAgcGFkZGluZzogMDtcclxuXHRcdFx0ICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuXHRcdFx0ICB3aWR0aDogMXB4O1xyXG5cdFx0XHQgIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XHJcblxyXG5cdFx0ICAgICY6Zm9jdXMge1xyXG5cdFx0XHRcdCAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuXHRcdFx0XHQgIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcclxuXHRcdFx0XHQgIGNsaXAtcGF0aDogbm9uZTtcclxuXHRcdFx0XHQgIGNvbG9yOiAjNDQ0O1xyXG5cdFx0XHRcdCAgZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0ICBmb250LXNpemU6IDFlbTtcclxuXHRcdFx0XHQgIGhlaWdodDogYXV0bztcclxuXHRcdFx0XHQgIGxlZnQ6IDVweDtcclxuXHRcdFx0XHQgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcblx0XHRcdFx0ICBwYWRkaW5nOiA3cHggMTJweCA3cHg7XHJcblx0XHRcdFx0ICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdFx0ICB0b3A6IDJweDtcclxuXHRcdFx0XHQgIHdpZHRoOiBhdXRvO1xyXG5cdFx0XHRcdCAgei1pbmRleDogMTAwMDAwOyAvKiBBYm92ZSBXUCB0b29sYmFyLiAqL1xyXG5cdFx0ICAgIFxyXG5cdFx0ICAgIH1cclxuXHQgICAgfVxyXG5cclxuXHQgICAgJjphZnRlciB7XHJcblx0ICAgIFx0Y29udGVudDogJysnO1xyXG5cdFx0XHRmb250LXNpemU6IDIuNXZ3O1xyXG5cdFx0XHRsaW5lLWhlaWdodDoxO1xyXG5cdFx0XHR0b3A6IC0xLjV2dztcclxuICAgIFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ICAgIH1cclxuXHJcblx0ICAgICYub3I6YWZ0ZXIge1xyXG5cdCAgICBcdGNvbnRlbnQ6ICdPUic7XHJcblx0XHQgICAgZm9udC1zaXplOiAxLjI1dnc7XHJcblx0XHQgICAgbGluZS1oZWlnaHQ6IDE7XHJcblx0XHQgICAgdG9wOiAtMS43NXZ3O1xyXG5cdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdCAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnO1xyXG5cdCAgICB9XHJcbiAgICB9XHJcbn1cclxuIC5pbmNlbnRpdmUtY2xvc2VyIHtcclxuIFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcbiBcdHBhZGRpbmc6NXZ3O1xyXG4gXHRpbWcge1xyXG4gXHRcdHBhZGRpbmctdG9wOiA0dnc7XHJcbiBcdH1cclxuIH1cclxuXHJcblxyXG4gLnJlZmVyZW5jZS1ndWlkZXMge1xyXG4gXHRwYWRkaW5nLXRvcDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcclxuICAgIG1heC13aWR0aDogMTAwcmVtO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgLmNlbGwge1xyXG4gICAgXHRwYWRkaW5nOjF2dztcclxuICAgIH1cclxuXHJcbiBcdGgxIHtcclxuIFx0XHRjb2xvcjogJGJsYWNrO1xyXG5cdCAgICBmb250LXNpemU6IDIuOHJlbTtcclxuXHQgICAgbGluZS1oZWlnaHQ6IDE7XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG5cdCAgICB0ZXh0LXNoYWRvdzpub25lO1xyXG5cdCAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIFx0YmFja2dyb3VuZDpub25lO1xyXG5cdCAgICBwYWRkaW5nOiAwO1xyXG5cclxuXHQgICAgc3BhbiB7XHJcblx0ICAgIFx0Zm9udC1zaXplOiAxLjNyZW07XHJcblx0ICAgIH1cclxuXHJcbiBcdH1cclxuIFx0aDIge1xyXG4gXHRcdGNvbG9yOiAkYmxhY2s7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0ICAgIHRleHQtc2hhZG93Om5vbmU7XHJcblx0ICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiBcdH1cclxuIFx0aDMge1xyXG4gXHRcdGNvbG9yOiAkYmxhY2s7XHJcblx0XHRmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnLCBzYW4tc2VyaWY7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG5cdCAgICBsaW5lLWhlaWdodDogMS4zO1xyXG5cdCAgICBtYXJnaW4tbGVmdDogMDtcclxuXHQgICAgdGV4dC1zaGFkb3c6bm9uZTtcclxuXHQgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuIFx0fVxyXG5cclxuIFx0YSB7XHJcbiBcdFx0ZGlzcGxheTpibG9jaztcclxuICAgIFx0cGFkZGluZzoxdncgMXZ3IDA7XHJcbiBcdFx0Ym9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwKTtcclxuIFx0XHQmOmhvdmVyIHtcclxuIFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG4gXHRcdH1cclxuXHJcbiBcdFx0aW1nIHtcclxuIFx0XHRcdG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiBcdFx0fVxyXG5cclxuXHJcbiBcdH1cclxuXHJcblxyXG4gfVxyXG5cclxuXHJcbiAua2V5LWJlbmVmaXRzIHtcclxuIFx0cGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcclxuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XHJcbiAgICBtYXgtd2lkdGg6IDEwMHJlbTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgIC5jZWxsIHtcclxuICAgIFx0cGFkZGluZzoxdnc7XHJcbiAgICB9XHJcblxyXG4gXHRoMSB7XHJcbiBcdFx0Y29sb3I6ICRibGFjaztcclxuXHQgICAgZm9udC1zaXplOiA1Ljh2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDE7XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG5cdCAgICB0ZXh0LXNoYWRvdzpub25lO1xyXG5cdCAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIFx0YmFja2dyb3VuZDpub25lO1xyXG5cdCAgICBwYWRkaW5nOiAwO1xyXG5cclxuIFx0fVxyXG4gXHRoMiB7XHJcbiBcdFx0Y29sb3I6ICRibGFjaztcclxuXHQgICAgZm9udC1zaXplOiAxLjc1dnc7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG5cdCAgICB0ZXh0LXNoYWRvdzpub25lO1xyXG5cdCAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gXHR9XHJcbiBcdGgzIHtcclxuIFx0XHRjb2xvcjogJGJsYWNrO1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJywgc2FuLXNlcmlmO1xyXG5cdCAgICBmb250LXNpemU6IDEuMnJlbTtcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0ICAgIHRleHQtc2hhZG93Om5vbmU7XHJcblx0ICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiBcdH1cclxuXHJcbiBcdGEge1xyXG4gICAgXHRwYWRkaW5nOjF2dyAxdncgMDtcclxuIFx0XHRib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDApO1xyXG4gXHRcdCY6aG92ZXIge1xyXG4gXHRcdFx0Ym9yZGVyOiAycHggc29saWQgJHByaW1hcnktY29sb3I7XHJcbiBcdFx0fVxyXG5cclxuIFx0XHRpbWcge1xyXG4gXHRcdFx0bWFyZ2luLWJvdHRvbTogMnJlbTtcclxuIFx0XHR9XHJcblxyXG5cclxuIFx0fVxyXG5cclxuXHJcbiB9XHJcblxyXG5cclxuIC5nYXJhZ2Uge1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcclxuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG5cclxuICAgICYudmVoaWNsZS1zZWxlY3Qge1xyXG5cdCBcdHBhZGRpbmctdG9wOiAydnc7XHJcblx0ICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xyXG5cdCAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5jZWxsIHtcclxuICAgIFx0cGFkZGluZzoxdnc7XHJcblxyXG4gICAgXHQmLmZpbHRlci1jYXJ0IHtcclxuXHRcdCAgICBwYWRkaW5nOiAwO1xyXG5cclxuXHRcdCAgICAuYnV0dG9uLWdyb3VwIHtcclxuICAgIFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgXHRcdFx0LmJ1dHRvbiB7XHJcbiAgICBcdFx0XHRcdGJvcmRlcjogM3B4IHNvbGlkICMwNzc2QjY7XHJcbiAgICBcdFx0XHRcdGxpbmUtaGVpZ2h0OiA2dnc7XHJcblxyXG4gICAgXHRcdFx0XHRpbWcge1xyXG5cdFx0XHRcdFx0ICAgIHdpZHRoOiA2dnc7XHJcblx0XHRcdFx0XHQgICAgbWFyZ2luLWxlZnQ6IDJ2dztcclxuXHRcdFx0XHRcdH1cclxuICAgIFx0XHRcdH1cclxuICAgIFx0XHR9XHJcblx0XHR9XHJcbiAgICB9XHJcbiAgICAuZGV0YWlsLWljb24tc2hhcGUge1xyXG5cdCAgICB3aWR0aDogMjVweDtcclxuXHQgICAgaGVpZ2h0OiAyNXB4O1xyXG5cdCAgICBkaXNwbGF5OiBibG9jaztcclxuXHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdCAgICB0b3A6IDN2aDtcclxuXHQgICAgcmlnaHQ6IDN2aDtcclxuXHQgICAgei1pbmRleDogMjtcclxuXHQgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cdCAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XHJcblx0ICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XHJcblx0ICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY2xvc2UtaWNvbi5wbmcpO1xyXG5cdCAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdH1cclxuXHJcbiBcdGgxIHtcclxuIFx0XHRjb2xvcjogJGJsYWNrO1xyXG5cdCAgICBmb250LXNpemU6IDIuOHZ3O1xyXG5cdCAgICBsaW5lLWhlaWdodDogMTtcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0ICAgIHRleHQtc2hhZG93Om5vbmU7XHJcblx0ICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG5cclxuIFx0fVxyXG4gXHQmLnZlaGljbGUtc2VsZWN0LmxpZ2h0LXNlY3Rpb24gaDEge1xyXG4gXHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcbiBcdH1cclxuIFx0aDIge1xyXG4gXHRcdGNvbG9yOiAkYmxhY2s7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0ICAgIHRleHQtc2hhZG93Om5vbmU7XHJcblx0ICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiBcdH1cclxuIFx0aDMge1xyXG4gXHRcdGNvbG9yOiAkYmxhY2s7XHJcblx0XHRmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnLCBzYW4tc2VyaWY7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG5cdCAgICBsaW5lLWhlaWdodDogMS4zO1xyXG5cdCAgICBtYXJnaW4tbGVmdDogMDtcclxuXHQgICAgdGV4dC1zaGFkb3c6bm9uZTtcclxuXHQgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuIFx0fVxyXG4gXHRoNCB7XHJcblx0ICAgIGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XHJcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdCAgICBmb250LXNpemU6IDIuMXZ3O1xyXG5cdCAgICBsaW5lLWhlaWdodDogMS4xO1xyXG5cdCAgICBjb2xvcjogI2ZmZmZmZjtcclxuXHQgICAgbWFyZ2luOiAyLjY4dncgMCAwIDEuMXZ3O1xyXG5cdCAgICBwYWRkaW5nOiAxLjF2dztcclxuXHQgICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHQgICAgZGlzcGxheTogaW5saW5lO1xyXG5cdH1cclxuXHJcbiBcdGEudmVoaWNsZS1zZWxlY3QtaXRlbSB7XHJcbiBcdFx0ZGlzcGxheTpibG9jaztcclxuICAgIFx0cGFkZGluZzoxdncgMXZ3IDA7XHJcbiBcdFx0Ym9yZGVyOiAycHggc29saWQgJHdoaXRlO1xyXG4gXHRcdGJhY2tncm91bmQ6JHdoaXRlO1xyXG4gXHRcdGJvcmRlcjogMnB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuIFx0XHQmOmhvdmVyIHtcclxuIFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG4gXHRcdH1cclxuIFx0XHQmLmFjdGl2ZSB7XHJcbiBcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuIFx0XHRcdC8qIGJhY2tncm91bmQ6JG1lZGl1bS1ncmF5OyAgKi9cclxuIFx0XHR9XHJcblxyXG4gXHRcdGltZyB7XHJcbiBcdFx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gXHRcdFx0d2lkdGg6IDUwJTtcclxuIFx0XHR9XHJcblxyXG5cclxuIFx0fVxyXG5cdC5maWx0ZXItY29udGFpbmVyIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xyXG5cdFx0aDIge1xyXG5cdFx0XHRjb2xvcjogJHdoaXRlO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cdFx0fVxyXG5cdFx0LnJhZGlvLWNvbnRhaW5lciB7XHJcblx0XHQgICAgcGFkZGluZy1sZWZ0OiAyLjJ2dztcclxuXHRcdCAgICBtYXJnaW46IDA7XHJcblx0XHQgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMztcclxuXHRcdH1cclxuXHRcdGZpZWxkc2V0IHtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206MnJlbTtcclxuXHRcdH1cclxuXHRcdC5jZWxsIHtcclxuXHRcdFx0cGFkZGluZzowLjVyZW0gMDtcclxuXHRcdH1cclxuXHR9XHJcblx0LmNhcnQtY29udGFpbmVyIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xyXG5cdFx0cGFkZGluZy1ib3R0b206MnJlbTtcclxuXHRcdGgyIHtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRcdH1cclxuXHRcdC5jYWxsb3V0LmNhcnQtaXRlbSB7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdC5jZWxsIHtcclxuXHRcdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdH1cclxuXHRcdFx0ZGwge1xyXG5cdFx0XHRcdG1hcmdpbjowO1xyXG5cdFx0XHRcdHBhZGRpbmc6MS4zcmVtO1xyXG5cdFx0XHRcdGJvcmRlci1sZWZ0OjFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcblx0XHRcdH1cclxuXHRcdFx0ZHQge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTowLjg1cmVtO1xyXG5cdFx0XHRcdGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHR9XHJcblx0XHRcdGRkIHtcclxuXHRcdFx0XHRmb250LXNpemU6MC43NXJlbTtcclxuXHRcdFx0XHRjb2xvcjokYmxhY2s7XHJcblx0XHRcdH1cclxuXHRcdFx0aW1nIHtcclxuXHRcdFx0XHRwYWRkaW5nOjAuNXJlbTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmNsb3NlLWJ1dHRvbiB7XHJcblx0XHQgICAgcmlnaHQ6IDAuNXJlbTtcclxuXHRcdCAgICB0b3A6IDIwJTtcclxuXHRcdCAgICBmb250LXNpemU6IDNlbTtcclxuXHRcdCAgICBsaW5lLWhlaWdodDogMTtcclxuXHRcdFx0Y29sb3I6JHByaW1hcnktY29sb3I7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zYXZlZC1jb25maWdzIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xyXG5cdFx0cGFkZGluZy1ib3R0b206MnJlbTtcclxuXHRcdGgyIHtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRcdH1cclxuXHRcdC5zYXZlZC1zZXNzaW9ucyB7XHJcblx0XHRcdGxpIHtcclxuXHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRcdFx0XHQuY2xvc2UtYnV0dG9uIHtcclxuXHRcdFx0XHQgICAgcmlnaHQ6IDFyZW07XHJcblx0XHRcdFx0ICAgIHRvcDogLTAuM3JlbTtcclxuXHRcdFx0XHQgICAgZm9udC1zaXplOiAyZW07XHJcblx0XHRcdFx0ICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cdFx0XHRcdFx0Y29sb3I6JHdoaXRlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRhIHtcclxuXHRcdFx0XHRjb2xvcjokd2hpdGU7XHJcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuXHRcdFx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcclxuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuY2VsbC5tYWluLWdhcmFnZS1zaG9wIHtcclxuXHRcdHBhZGRpbmc6MnJlbSAxcmVtO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdFx0LmdhcmFnZS1zaG9wLWl0ZW0taG9sZGVyIHtcclxuXHQgXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0fVxyXG5cdFx0LmdhcmFnZS1zaG9wLWl0ZW0ge1xyXG5cdCBcdFx0ZGlzcGxheTpibG9jaztcclxuXHQgICAgXHRwYWRkaW5nOjA7XHJcblx0IFx0XHRib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XHJcblx0IFx0XHRiYWNrZ3JvdW5kOiR3aGl0ZTtcclxuXHQgXHRcdGJvcmRlcjogMnB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuXHQgXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdCBcdFx0ei1pbmRleDowO1xyXG5cdFx0XHR3aWR0aDoxMDAlO1xyXG5cdFx0XHRsZWZ0OjA7XHJcblx0XHRcdHRvcDowO1xyXG5cdCBcdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2U7XHJcblx0IFx0XHQmLmFjdGl2ZSB7XHJcblx0IFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cdCBcdFx0XHRiYWNrZ3JvdW5kOiRtZWRpdW0tZ3JheTtcclxuXHQgXHRcdH1cclxuXHQgXHRcdC5zaG9wLWl0ZW0taW1hZ2Uge1xyXG5cdFx0XHQgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuXHRcdFx0ICAgIGltZyB7XHJcblx0IFx0XHRcdFx0bWFyZ2luOjAgYXV0bztcclxuXHQgXHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdCBcdFx0XHRcdHdpZHRoOjE1MHB4O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHRcdC5zaG9wLWl0ZW0tZGVzYyB7XHJcblx0XHRcdFx0cGFkZGluZzoxcmVtO1xyXG5cdFx0XHRcdGgzIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZToxcmVtO1xyXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdCAgICBwYWRkaW5nOiAwIDFyZW0gMC41cmVtO1xyXG5cdFx0XHRcdCAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuXHRcdFx0XHQgICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1NZWRpdW0nLCBzYW4tc2VyaWY7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGg0IHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZToxcmVtO1xyXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdCAgICBwYWRkaW5nOiAwIDFyZW0gMC41cmVtO1xyXG5cdFx0XHRcdCAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuXHRcdFx0XHQgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgIFx0XHRcdFx0bWFyZ2luOiAwO1xyXG4gICAgXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbiAgICBcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdCAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLU1lZGl1bScsIHNhbi1zZXJpZjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cCB7XHJcblx0XHRcdFx0XHRmb250LXNpemU6MC44NzVyZW07XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC51cGZpdHRlci1sb2dvIHtcclxuXHRcdFx0XHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuYWNjb3JkaW9uLmRpc2NsYWltZXIgLmFjY29yZGlvbi10aXRsZSB7XHJcblx0XHRcdFx0ICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0b2wgbGkge1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAwLjc1cmVtO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuc2hvcC1pbmZvIHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDAuODVlbSAyZW07XHJcblx0XHRcdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdCAgICBjb250ZW50OiAnJztcclxuXHRcdFx0XHRcdCAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY29yZGlvbi1jYXJldC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG5cdFx0XHRcdFx0ICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuXHRcdFx0XHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHQgICAgd2lkdGg6IDEuMjExdnc7XHJcblx0XHRcdFx0XHQgICAgaGVpZ2h0OiAwLjV2dztcclxuXHRcdFx0XHRcdCAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xyXG5cdFx0XHRcdFx0ICAgIHRvcDogMDtcclxuXHRcdFx0XHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0ICAgICYuaXMtYWN0aXZlOmFmdGVyIHtcclxuXHRcdFx0XHQgICAgXHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblx0XHRcdFx0XHQgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblx0XHRcdFx0XHQgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdFx0XHQgICAgfVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR0YWJsZSB7XHJcblx0XHRcdFx0XHR0ZCB7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTowLjg3NXJlbTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdHRmb290IHtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCYucG9wb3V0IHtcclxuXHRcdFx0XHR6LWluZGV4OjI7XHJcblx0XHRcdFx0d2lkdGg6MTIwJTtcclxuXHRcdFx0XHRsZWZ0Oi0xMCU7XHJcblx0XHRcdFx0dG9wOi0ycmVtO1xyXG5cdFx0XHRcdC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAyNXB4IDBweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG5cdFx0XHRcdC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAyNXB4IDBweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG5cdFx0XHRcdGJveC1zaGFkb3c6IDBweCAwcHggMjVweCAwcHggcmdiYSgwLDAsMCwwLjc1KTtcclxuXHRcdCBcdFx0LnNob3AtaXRlbS1pbWFnZSB7XHJcblx0XHRcdFx0ICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cdH1cclxuXHQudG9wLWdhcmFnZS1kZXRhaWwge1xyXG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0XHR3aWR0aDoxMDAlO1xyXG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0XHRpbWcge1xyXG5cdFx0XHRtYXgtd2lkdGg6IDMwMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHR0YWJsZTpub3QoLmdhcmFnZS1zdWItdG90YWwpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRtaW4td2lkdGg6IDY3MHB4O1xyXG5cdFx0d2lkdGg6MTAwJTtcclxuXHR9XHJcblx0dGhlYWQge1xyXG5cdCAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdCAgICBjb2xvcjogJHdoaXRlO1xyXG5cdCAgICB0ZCB7XHJcblx0ICAgIFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0ICAgIFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHQgICAgXHRwYWRkaW5nOiAxcmVtIDJyZW0gMS4xMjVyZW07XHJcblx0ICAgIFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQgICAgXHQmOmZpcnN0LWNoaWxkIHtcclxuXHQgICAgXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0ICAgIFx0XHR3aWR0aDoyNSU7XHJcblx0ICAgIFx0fVxyXG5cdCAgICB9XHJcblx0fVxyXG5cdHRib2R5IHtcclxuXHRcdHRkIHtcclxuXHQgICAgXHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHQgICAgXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdCAgICBcdHBhZGRpbmc6IDFyZW0gMnJlbSAxLjEyNXJlbTtcclxuXHQgICAgXHR1bCB7XHJcblx0ICAgIFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdCAgICBcdFx0Zm9udC1zaXplOiAwLjc1cmVtO1xyXG5cdCAgICBcdH1cclxuXHRcdFx0LmJ1dHRvbiB7XHJcblx0XHRcdFx0bWFyZ2luOjVweDtcclxuXHRcdFx0fVxyXG5cdCAgICBcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdCAgICBcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHQgICAgXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xyXG5cdCAgICBcdH1cclxuXHQgICAgXHQmLmJ1dHRvbnMge1xyXG5cdCAgICBcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0ICAgIFx0fVxyXG5cdCAgICBcdGlucHV0W3R5cGU9bnVtYmVyXSB7XHJcblx0ICAgIFx0XHR3aWR0aDo2MHB4O1xyXG5cdFx0XHRcdG1hcmdpbjowIGF1dG87XHJcblx0ICAgIFx0fVxyXG5cdCAgICBcdC5yZW1vdmUtaXRlbSB7XHJcblx0ICAgIFx0XHRmb250LXNpemU6IDNyZW07XHJcblx0ICAgIFx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XHJcblx0ICAgIFx0fVxyXG5cdFx0fVxyXG5cclxuXHR9XHJcblx0LmdhcmFnZS1zdWItdG90YWwge1xyXG5cdFx0Zm9udC1zaXplOjAuODI1cmVtO1xyXG5cdCAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdCAgICB0Ym9keSB7XHJcblx0ICAgIFx0Ym9yZGVyLXdpZHRoOjA7XHJcblxyXG5cdCAgICB9XHJcblx0ICAgIHRmb290IHtcclxuXHQgICAgXHRib3JkZXItd2lkdGg6MXB4IDAgMCAwO1xyXG5cdCAgICBcdGJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG5cdCAgICBcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHJcblx0ICAgIH1cclxuXHQgICAgdHIge1xyXG5cdCAgICBcdGJvcmRlci13aWR0aDowO1xyXG5cclxuXHQgICAgfVxyXG5cdCAgICB0ZCB7XHJcblx0ICAgIFx0cGFkZGluZzogMC42cmVtIDFyZW0gMC42MjVyZW07XHJcblx0ICAgIH1cclxuXHR9XHJcblx0LnNlbmQtdG8tZGVhbGVyIHtcclxuXHQgICAgY29sb3I6ICR3aGl0ZTtcclxuXHQgICAgYmFja2dyb3VuZDogIzEwMmI0ZTtcclxuXHQgICAgcGFkZGluZzogMnJlbSAwIDA7XHJcblx0ICAgIGgzIHtcclxuXHRcdCAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmO1xyXG5cdFx0ICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHQgICAgZm9udC1zaXplOiAyLjV2dztcclxuXHRcdCAgICBjb2xvcjogI2ZmZmZmZjtcclxuXHRcdH1cclxuXHRcdGxhYmVsLCAuaGVscC10ZXh0IHtcclxuXHRcdCAgICBjb2xvcjogI2ZmZmZmZjtcclxuXHRcdH1cclxuXHRcdC5kZWFsZXItc2VhcmNoLWNhbGwge1xyXG5cdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdGR0IHtcclxuXHRcdFx0XHRmb250LXNpemU6IDAuNzVyZW07XHJcblx0XHRcdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHR9XHJcblx0XHRcdGRkIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDAuNzVyZW07XHJcblx0XHRcdFx0Y29sb3I6ICRibGFjaztcclxuXHRcdFx0fVxyXG5cdFx0XHQuY2hlY2stY29udGFpbmVyIHtcclxuXHRcdFx0ICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0XHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdCAgICBwYWRkaW5nOiAxcmVtO1xyXG5cdFx0XHQgICAgd2lkdGg6IDEwMCU7XHJcblx0XHRcdCAgICBtYXJnaW46IDA7XHJcblx0XHRcdCAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdCAgICBmb250LXNpemU6IDFyZW07XHJcblx0XHRcdCAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdFx0XHQgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuXHRcdFx0ICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuXHRcdFx0ICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5jaGVja21hcmsge1xyXG5cdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHQgICAgdG9wOiBhdXRvO1xyXG5cdFx0XHQgICAgYm90dG9tOiAwLjVyZW07XHJcblx0XHRcdCAgICByaWdodDogMC41cmVtO1xyXG5cdFx0XHQgICAgbGVmdDogYXV0bztcclxuXHRcdFx0ICAgIGhlaWdodDogMS41dnc7XHJcblx0XHRcdCAgICB3aWR0aDogMS41dnc7XHJcblx0XHRcdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcblx0XHRcdCAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0fVxyXG5cdFx0XHQuY2hlY2stY29udGFpbmVyIC5jaGVja21hcms6YWZ0ZXIge1xyXG5cdFx0XHQgICAgbGVmdDogMC40dnc7XHJcblx0XHRcdCAgICB0b3A6IDA7XHJcblx0XHRcdCAgICB3aWR0aDogMC42dnc7XHJcblx0XHRcdCAgICBoZWlnaHQ6IDEuMnZ3O1xyXG5cdFx0XHQgICAgYm9yZGVyOiBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0ICAgIGJvcmRlci13aWR0aDogMCAzcHggM3B4IDA7XHJcblx0XHRcdCAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHRcdFx0ICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0XHRcdCAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cclxuIH1cclxuIC5hY2MtY2FydCB7XHJcbiBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuIFx0cmlnaHQ6MDtcclxuIH1cclxuIGJ1dHRvbi50cmlnZ2VyLmJ1dHRvbi5zZWNvbmRhcnkuaG9sbG93LmV4cGFuZGVkIHtcclxuICAgIHBhZGRpbmctdG9wOiAycmVtO1xyXG59XHJcblxyXG4gLmRlYWxlci1mb3JtLXJlc3BvbnNlIHtcclxuIFx0Zm9udC1zaXplOiAydnc7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAzdncgMDtcclxuIH1cclxuXHJcbiBib2R5LmZpbmQtYW4tdXBmaXR0ZXIubG9jYXRvciB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5cclxuIC5maW5kLXVwZml0dGVyIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICBoZWlnaHQ6Y2FsYygxMDB2aCAtIDUuMjk2ODk5NjMyMTU5NzV2dyk7XHJcblxyXG4gICAgLmFzaWRlIHtcclxuICAgIFx0aGVpZ2h0OmNhbGMoMTAwdmggLSA1LjI5Njg5OTYzMjE1OTc1dncpO1xyXG4gICAgXHRvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgXHRtYXJnaW46MCAhaW1wb3J0YW50O1xyXG4gICAgXHRoMSB7XHJcbiAgICBcdFx0Y29sb3I6JHdoaXRlO1xyXG4gICAgXHRcdGZvbnQtc2l6ZTogMS42NXZ3O1xyXG5cdFx0ICAgIHBhZGRpbmc6IDA7XHJcblx0XHQgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIFx0fVxyXG4gICAgfVxyXG4gICAgLmFjY29yZGlvbi5maWx0ZXIgLmFjY29yZGlvbi10aXRsZSB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS40dnc7XHJcblx0fVxyXG5cdC5ncmlkLXggPiAuZmlsdGVyYmFyIHtcclxuXHQgICAgd2lkdGg6IDIwJTtcclxuXHR9XHJcblx0LmdyaWQteCA+IC5maWx0ZXJjYXJkcyB7XHJcblx0ICAgIHdpZHRoOiAyMCU7XHJcblx0fVxyXG5cdC5ncmlkLXggPiAuZmlsdGVybWFwIHtcclxuXHQgICAgd2lkdGg6IDYwJTtcclxuXHR9XHJcblxyXG4gICAgLmNlbGwge1xyXG4gICAgXHRwYWRkaW5nOjF2dztcclxuICAgIFx0Ji5maWx0ZXItY29sdW1uIHtcclxuICAgIFx0XHRwYWRkaW5nOjA7XHJcbiAgICBcdFx0Ji5maWx0ZXItYWN0aXZlIHtcclxuICAgIFx0XHRcdHBhZGRpbmc6MXZ3O1xyXG4gICAgXHRcdH1cclxuICAgIFx0fVxyXG4gICAgfVxyXG4gICAgI21hcC1jb250YWluZXIge1xyXG4gICAgXHRwYWRkaW5nOjA7XHJcbiAgICBcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICAjbWFwIHtcclxuICAgIFx0aGVpZ2h0OmNhbGMoMTAwdmggLSA1LjI5Njg5OTYzMjE1OTc1dncpO1xyXG4gICAgfVxyXG4gICAgLmxvY2F0aW9uLWxpc3Qge1xyXG4gICAgXHRoZWlnaHQ6Y2FsYygxMDB2aCAtIDUuMjk2ODk5NjMyMTU5NzV2dyk7XHJcbiAgICBcdG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICBcdG1hcmdpbjowICFpbXBvcnRhbnQ7XHJcbiAgICBcdGJhY2tncm91bmQ6JHdoaXRlO1xyXG4gICAgXHRwYWRkaW5nOjA7XHJcbiAgICBcdC5jYXJkIHtcclxuICAgIFx0XHRiYWNrZ3JvdW5kOiR3aGl0ZTtcclxuICAgIFx0XHRib3JkZXI6MXB4IHNvbGlkICRsaWdodC1ncmF5O1xyXG4gICAgXHRcdGZvbnQtc2l6ZToxcmVtO1xyXG4gICAgXHRcdGZvbnQtZmFtaWx5OiBcIkZvcmRBbnRlbm5hLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICBcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuICAgIFx0XHQuY2FyZC1zZWN0aW9uIHtcclxuXHRcdFx0ICAgIHBhZGRpbmc6IDAuNXJlbTtcclxuXHRcdFx0fVxyXG4gICAgXHRcdHAge1xyXG4gICAgXHRcdFx0ICAgIGZvbnQtc2l6ZTogMXZ3O1xyXG4gICAgXHRcdFx0ICAgIGxpbmUtaGVpZ2h0OjEuNTtcclxuICAgIFx0XHRcdCAgICBtYXJnaW4tYm90dG9tOjAuNXJlbTtcclxuICAgIFx0XHR9XHJcbiAgICBcdFx0c3Ryb25nIHtcclxuICAgIFx0XHRcdGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xyXG4gICAgXHRcdFx0Ly90ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbiAgICBcdFx0XHRmb250LWZhbWlseTogXCJGb3JkQW50ZW5uYS1NZWRpdW1cIiwgc2Fucy1zZXJpZjtcclxuICAgIFx0XHRcdGZvbnQtd2VpZ2h0Om5vcm1hbDtcclxuICAgIFx0XHR9XHJcblx0XHRcdC5idXR0b24ge1xyXG5cdFx0XHQgICAgZm9udC1zaXplOiAwLjg1dnc7XHJcblx0XHRcdCAgICBwYWRkaW5nOiAwLjY1dncgMC41dncgMC41dncgMC41dnc7XHJcblx0XHRcdCAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm9mZnNpdGUtY3RhIHtcclxuXHRcdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0ICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdFx0XHQgICAgYm90dG9tOiAwO1xyXG5cdFx0XHQgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHRcdCAgICB3aWR0aDogYXV0bztcclxuXHRcdFx0ICAgIHBhZGRpbmc6IDAuNjV2dyAxLjR2dyAwLjV2dyAwLjV2dztcclxuXHRcdFx0ICAgIGZvbnQtc2l6ZTogMC44NXZ3O1xyXG5cdFx0XHQgICAgYmFja2dyb3VuZDpub25lO1xyXG5cdFx0XHQgICAgJjphZnRlciB7XHJcblx0XHRcdFx0ICAgIHdpZHRoOiAxdnc7XHJcblx0XHRcdFx0ICAgIGhlaWdodDogMnZ3O1xyXG5cdFx0XHRcdCAgICByaWdodDogMDtcclxuXHRcdFx0XHQgICAgdG9wOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0ICAgICY6aG92ZXIsJjpmb2N1cyB7XHJcblx0XHRcdCAgICBcdHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdH1cclxuXHRcdFx0ZW0ge1xyXG5cdFx0XHQgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdFx0XHQgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcblx0XHRcdCAgICBmb250LWZhbWlseTogXCJGb3JkQW50ZW5uYS1Cb2xkXCIsIHNhbnMtc2VyaWY7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JG1lZGl1bS1ncmF5O1xyXG5cdFx0XHRcdHN0cm9uZyB7XHJcblx0XHRcdFx0IGNvbG9yOiRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5vZmZzaXRlLWN0YSB7XHJcblx0XHRcdFx0IGNvbG9yOiRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcbiAgICBcdH1cclxuICAgIH1cclxuXHJcbiBcdGgxIHtcclxuIFx0XHRjb2xvcjogJGJsYWNrO1xyXG5cdCAgICBmb250LXNpemU6IDIuOHZ3O1xyXG5cdCAgICBsaW5lLWhlaWdodDogMTtcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0ICAgIHRleHQtc2hhZG93Om5vbmU7XHJcblx0ICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG5cclxuIFx0fVxyXG4gXHRoMiB7XHJcbiBcdFx0Y29sb3I6ICRibGFjaztcclxuXHQgICAgZm9udC1zaXplOiAxLjc1dnc7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG5cdCAgICB0ZXh0LXNoYWRvdzpub25lO1xyXG5cdCAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gXHR9XHJcbiBcdGgzIHtcclxuIFx0XHRjb2xvcjogJGJsYWNrO1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1Cb2xkJywgc2FuLXNlcmlmO1xyXG5cdCAgICBmb250LXNpemU6IDEuMnJlbTtcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0ICAgIHRleHQtc2hhZG93Om5vbmU7XHJcblx0ICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiBcdH1cclxuIFx0aDQge1xyXG5cdCAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmO1xyXG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQgICAgZm9udC1zaXplOiAyLjF2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuXHQgICAgY29sb3I6ICNmZmZmZmY7XHJcblx0ICAgIG1hcmdpbjogMi42OHZ3IDAgMCAxLjF2dztcclxuXHQgICAgcGFkZGluZzogMS4xdnc7XHJcblx0ICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblx0ICAgIGRpc3BsYXk6IGlubGluZTtcclxuXHR9XHJcbiAgICAuZGV0YWlsLWljb24tc2hhcGUge1xyXG5cdCAgICB3aWR0aDogMjVweDtcclxuXHQgICAgaGVpZ2h0OiAyNXB4O1xyXG5cdCAgICBkaXNwbGF5OiBibG9jaztcclxuXHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdCAgICB0b3A6IDN2aDtcclxuXHQgICAgcmlnaHQ6IDN2aDtcclxuXHQgICAgei1pbmRleDogMjtcclxuXHQgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cdCAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XHJcblx0ICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XHJcblx0ICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY2xvc2UtaWNvbi5wbmcpO1xyXG5cdCAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdH1cclxuXHQucHJpbWFyeS1pbmZvLmRhcmstc2VjdGlvbiB7XHJcblx0ICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0ICAgIG1hcmdpbjogLTFyZW0gLTFyZW0gMXJlbTtcclxuXHQgICAgcGFkZGluZzogMnJlbTtcclxuXHQgICAgY29sb3I6ICR3aGl0ZTtcclxuXHQgICAgaDMge1xyXG5cdCAgICBcdGNvbG9yOiR3aGl0ZTtcclxuXHQgICAgXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ICAgIFx0Zm9udC1zaXplOjJyZW07XHJcblx0ICAgIFx0bWFyZ2luLWJvdHRvbTogMS4zcmVtO1xyXG5cdCAgICB9XHJcblx0ICAgIC5wcmltYXJ5LWRlZXRzIHtcclxuXHQgICAgXHRjb2xvcjokd2hpdGU7XHJcblx0ICAgIFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdCAgICBcdGZvbnQtc2l6ZToxLjNyZW07XHJcblx0ICAgIFx0bWFyZ2luLWJvdHRvbTogMS4zcmVtO1xyXG5cdCAgICB9XHJcblx0ICAgIGEge1xyXG5cdCAgICBcdGNvbG9yOiR3aGl0ZTtcclxuXHQgICAgXHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG5cdCAgICB9XHJcblx0ICAgIC51cGZpdHRlci1sb2dvIHtcclxuXHRcdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHQgICAgYmFja2dyb3VuZDogd2hpdGU7XHJcblx0XHQgICAgcGFkZGluZzogMXJlbTtcclxuXHRcdCAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0XHQgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBcdFx0d2lkdGg6IDEwMCU7XHJcbiAgICBcdFx0LmxvZ28taG9sZGVyIHtcclxuXHRcdFx0ICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcblx0XHRcdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdFx0XHQgICAgaW1nIHtcclxuXHRcdFx0ICAgIFx0bWF4LWhlaWdodDogOTZweCAhaW1wb3J0YW50O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQudXBmaXR0ZXItZGVldC10aXRsZSB7XHJcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0XHRmb250LXNpemU6MC43NXJlbTtcclxuXHRcdFx0Ly90ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zZWNvbmRhcnktaW5mbyB7XHJcblx0ICAgIG1hcmdpbjogLTFyZW0gLTFyZW0gMXJlbTtcclxuXHQgICAgcGFkZGluZzogMnJlbTtcclxuXHQgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuXHQgICAgZGQge1xyXG5cdFx0ICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcclxuXHRcdH1cclxuXHQgICAgbGksIHAge1xyXG5cdFx0ICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcclxuXHRcdCAgICAmLmNlbGwge1xyXG5cdCAgICBcdFx0cGFkZGluZzogMCAxdnc7XHJcblx0ICAgIFx0XHRtYXJnaW46IDA7XHJcblx0XHQgICAgfVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuc2Vjb25kYXJ5LWluZm8uZ3JheS1zZWN0aW9uIHtcclxuXHQgICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcblx0fVxyXG5cdC5jaGVjay1jb250YWluZXIge1xyXG5cdCAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQgICAgcGFkZGluZy1sZWZ0OiAyLjJ2dztcclxuXHQgICAgbWFyZ2luOiAwLjVyZW0gMDtcclxuXHQgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cdCAgICBmb250LXNpemU6IDAuODc1dnc7XHJcblx0ICAgIHdpZHRoOiAxMDAlO1xyXG5cdCAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdCAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdCAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0ICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG5cdCAgICBjb2xvcjogJHdoaXRlO1xyXG5cdH1cclxuXHQubWFwLWxhYmVsLWxpbmsge1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG5cdH1cclxuXHQuZ20tc3R5bGUgLmdtLXN0eWxlLWl3LWQgcCB7XHJcblx0XHRtYXJnaW4tYm90dG9tOjA7XHJcblx0fVxyXG5cdC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctYyB7XHJcblx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdH1cclxuXHQuZmlsdGVyLWNvbnRhaW5lciB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0bWFyZ2luLXRvcDogMS41dnc7XHJcblx0XHRoMiB7XHJcblx0XHRcdGNvbG9yOiAkd2hpdGU7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0XHR9XHJcblx0XHQucmFkaW8tY29udGFpbmVyIHtcclxuXHRcdCAgICBwYWRkaW5nLWxlZnQ6IDIuMnZ3O1xyXG5cdFx0ICAgIG1hcmdpbjogMDtcclxuXHRcdCAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdFx0XHRjb2xvcjogJHdoaXRlO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMS4zO1xyXG5cdFx0fVxyXG5cdFx0ZmllbGRzZXQge1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTowO1xyXG5cdFx0fVxyXG5cdFx0LmNlbGwge1xyXG5cdFx0XHRwYWRkaW5nOjAuNXJlbSAwO1xyXG5cdFx0fVxyXG5cdFx0LmlucHV0LWdyb3VwLWJ1dHRvbiB7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogNXB4O1xyXG5cdFx0XHRpbWcuc2VhcmNoLWxvY2F0aW9uIHtcclxuXHRcdFx0ICAgIHdpZHRoOiAydnc7XHJcblx0XHRcdH1cclxuXHRcdFx0LmJ1dHRvbi5ob2xsb3cge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDAuMmVtIDAuNGVtO1xyXG5cdFx0XHRcdGJvcmRlci13aWR0aDogMXB4O1xyXG5cdFx0XHRcdCY6aG92ZXIsICZmb2N1cyB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRtZWRpdW0tZ3JheTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5maWx0ZXJzZWN0aW9uIHtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ICAgIHBhZGRpbmctbGVmdDogMi4ydnc7XHJcblx0XHQgICAgbWFyZ2luOiAwLjVyZW0gMDtcclxuXHRcdCAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHQgICAgZm9udC1zaXplOiAxdnc7XHJcblx0XHQgICAgd2lkdGg6IDEwMCU7XHJcblx0XHQgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBcdFx0Y29sb3I6ICNmZmZmZmY7XHJcblx0XHR9XHJcblx0XHQubW9yZS1idXR0b24ge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQgICAgdG9wOiAwO1xyXG5cdFx0ICAgIGxlZnQ6IDA7XHJcblx0XHQgICAgaGVpZ2h0OiAxLjV2dztcclxuXHRcdCAgICB3aWR0aDogMS41dnc7XHJcblx0XHQgICAgYm9yZGVyLXJhZGl1czogMzNweDtcclxuXHRcdCAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcblx0XHQgICAgJjpiZWZvcmUge1xyXG5cdFx0XHQgICAgY29udGVudDogJyc7XHJcblx0XHRcdCAgICBoZWlnaHQ6IDF2dztcclxuXHRcdFx0ICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJHByaW1hcnktY29sb3I7XHJcblx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdCAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG5cdFx0XHQgICAgbGVmdDogMC43dnc7XHJcbiAgICBcdFx0XHR0b3A6IDAuMjV2dztcclxuXHRcdFx0ICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYuY2xvc2VkOmJlZm9yZSB7XHJcblx0XHRcdCAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG5cdFx0ICAgIH1cclxuXHRcdCAgICAmOmFmdGVyIHtcclxuXHRcdFx0ICAgIGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHQgICAgaGVpZ2h0OiAxdnc7XHJcblx0XHRcdCAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHQgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG5cdFx0XHQgICAgbGVmdDogMC43dnc7XHJcbiAgICBcdFx0XHR0b3A6IDAuMjV2dztcclxuXHRcdFx0ICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblx0XHQgICAgJi5jbG9zZWQ6YWZ0ZXIge1xyXG5cdFx0XHQgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0XHQgICAgfVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuY2FyZC1zdW1tYXJ5IHtcclxuXHQgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuXHQgICAgLmNoZWNrLWNvbnRhaW5lciB7XHJcblx0XHQgICAgcGFkZGluZy1sZWZ0OiAxLjR2dztcclxuXHRcdCAgICBtYXJnaW46IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XHJcblx0XHQgICAgZm9udC1zaXplOiAwLjY1dnc7XHJcblx0XHQgICAgLmNoZWNrbWFyayB7XHJcblx0XHRcdCAgICBoZWlnaHQ6IDF2dztcclxuXHRcdFx0ICAgIHdpZHRoOiAxdnc7XHJcblx0XHRcdCAgICAmOmFmdGVyIHtcclxuXHRcdFx0XHQgICAgbGVmdDogMC4ydnc7XHJcblx0XHRcdFx0ICAgIHRvcDogMDtcclxuXHRcdFx0XHQgICAgd2lkdGg6IDAuNHZ3O1xyXG5cdFx0XHRcdCAgICBoZWlnaHQ6IDAuNzV2dztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblx0XHQucGFnaW5hdGlvbiB7XHJcblx0XHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0XHQgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdH1cclxuXHRcdC5wYWdpbmF0aW9uIC5jdXJyZW50IHtcclxuXHRcdCAgICAgICAgcGFkZGluZzogMCAwLjEyNXJlbTtcclxuXHRcdFx0ICAgIG1hcmdpbjogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcclxuXHRcdFx0ICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHRcdCAgICBmb250LXNpemU6IDF2dztcclxuXHRcdH1cclxuXHRcdC5wYWdpbmF0aW9uIC5kaXNhYmxlZCB7XHJcblx0XHQgICAgcGFkZGluZzogMC4xODc1cmVtIDAuMjVyZW07XHJcblx0XHR9XHJcblx0XHQucGFnaW5hdGlvbiBsaSB7XHJcblx0XHQgICAgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW07XHJcblx0XHQgICAgZm9udC1zaXplOiAxdnc7XHJcblx0XHR9XHJcblx0XHQucGFnaW5hdGlvbiBhLCAucGFnaW5hdGlvbiBidXR0b24ge1xyXG5cdFx0ICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjI1cmVtO1xyXG5cdFx0ICAgIGNvbG9yOiAkd2hpdGU7XHJcblx0XHR9XHJcblx0XHQucGFnaW5hdGlvbiBhOmhvdmVyLCAucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xyXG5cdFx0ICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG5cdFx0fVxyXG5cdFx0LmNlbGwge1xyXG5cdFx0ICAgIHBhZGRpbmc6IDAuMjV2dyAxdnc7XHJcblx0XHR9XHJcblx0fVxyXG5cdHRhYmxlOm5vdCguZ2FyYWdlLXN1Yi10b3RhbCkge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdG1pbi13aWR0aDogNjcwcHg7XHJcblx0XHR3aWR0aDoxMDAlO1xyXG5cdH1cclxuXHR0aGVhZCB7XHJcblx0ICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0ICAgIGNvbG9yOiAkd2hpdGU7XHJcblx0ICAgIHRkIHtcclxuXHQgICAgXHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHQgICAgXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdCAgICBcdHBhZGRpbmc6IDFyZW0gMnJlbSAxLjEyNXJlbTtcclxuXHQgICAgXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdCAgICBcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdCAgICBcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHQgICAgXHRcdHdpZHRoOjI1JTtcclxuXHQgICAgXHR9XHJcblx0ICAgIH1cclxuXHR9XHJcblx0dGJvZHkge1xyXG5cdFx0dGQge1xyXG5cdCAgICBcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdCAgICBcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblx0ICAgIFx0cGFkZGluZzogMXJlbSAycmVtIDEuMTI1cmVtO1xyXG5cdCAgICBcdHVsIHtcclxuXHQgICAgXHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0ICAgIFx0XHRmb250LXNpemU6IDAuNzVyZW07XHJcblx0ICAgIFx0fVxyXG5cdFx0XHQuYnV0dG9uIHtcclxuXHRcdFx0XHRtYXJnaW46NXB4O1xyXG5cdFx0XHR9XHJcblx0ICAgIFx0JjpmaXJzdC1jaGlsZCB7XHJcblx0ICAgIFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdCAgICBcdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcblx0ICAgIFx0fVxyXG5cdCAgICBcdCYuYnV0dG9ucyB7XHJcblx0ICAgIFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHQgICAgXHR9XHJcblx0ICAgIFx0aW5wdXRbdHlwZT1udW1iZXJdIHtcclxuXHQgICAgXHRcdHdpZHRoOjYwcHg7XHJcblx0XHRcdFx0bWFyZ2luOjAgYXV0bztcclxuXHQgICAgXHR9XHJcblx0ICAgIFx0LnJlbW92ZS1pdGVtIHtcclxuXHQgICAgXHRcdGZvbnQtc2l6ZTogMnJlbTtcclxuXHQgICAgXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHQgICAgXHR9XHJcblx0XHR9XHJcblxyXG5cdH1cclxuXHJcblx0LnVwZml0dGVyLXRodW1iIHtcclxuXHRcdCAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgXHRcdCB3aWR0aDogY2FsYygyMy41dncgLSAycmVtKTtcclxuICAgIFx0XHQgaGVpZ2h0OiBjYWxjKDIzLjV2dyAtIDJyZW0pO1xyXG5cdFx0ICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0ICBpbWcge1xyXG5cdFx0XHQgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0ICBsZWZ0OiA1MCU7XHJcblx0XHRcdCAgdG9wOiA1MCU7XHJcblx0XHRcdCAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cdFx0XHQgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuXHRcdFx0ICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcblx0XHRcdCAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG5cdFx0XHQgICYubGFuZHNjYXBlIHtcclxuXHRcdFx0XHQgIGhlaWdodDogMTAwJTtcclxuXHQgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG5cdCAgICAgICAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xyXG5cdFx0XHQgIH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHJcbiB9XHJcblxyXG5wLnByaW1hcnktZGVldHMgYSB7XHJcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbiAuc3BlY2lhbC1hbm5vdW5jZSB7XHJcbiBcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuIFx0Zm9udC1zaXplOiAxLjV2dztcclxuIH1cclxuXHJcbiAuZG9udC1icmVhay1vdXQge1xyXG5cdCAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcclxuXHQgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuXHJcblx0ICAtbXMtd29yZC1icmVhazogYnJlYWstYWxsO1xyXG5cdCAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuXHQgIFxyXG5cdCAgLW1zLWh5cGhlbnM6IGF1dG87XHJcblx0ICAtbW96LWh5cGhlbnM6IGF1dG87XHJcblx0ICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XHJcblx0ICBoeXBoZW5zOiBhdXRvO1xyXG5cclxufVxyXG5cclxuXHJcbi5jYWxsb3V0LnVwZml0dGVyLWRldGFpbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XHJcbiAgICB6LWluZGV4OiA2MDtcclxuICAgIC51cGZpdHRlci1kaXJlY3Rvcnkge1xyXG5cdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbiBhc2lkZS5wcm9ncmFtLWludHJvLCAuYXNpZGUucHJvZ3JhbS1pbnRybyB7XHJcbiAgICBib3JkZXItYm90dG9tOiAwIHNvbGlkICNmZmZmZmY7XHJcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCA2MDBtcyBsaW5lYXIsIG1heC13aWR0aCA2MDBtcyBsaW5lYXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLmZpbHRlci1jb2x1bW4ge1xyXG5cdHdpZHRoOjUlO1xyXG5cdG1heC13aWR0aDo1NXB4O1xyXG5cdCNmaWx0ZXItYnV0dG9uIHtcclxuXHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0XHRmb250LXNpemU6IDAuNnZ3O1xyXG5cdCAgICBwYWRkaW5nOiA1cHg7XHJcblx0ICAgIG1heC13aWR0aDogNTVweDtcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuXHRcdHNwYW4ge1xyXG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0XHRwYWRkaW5nLXRvcDo1cHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5maWx0ZXItY29sdW1uLmZpbHRlci1hY3RpdmUge1xyXG5cdHdpZHRoOjI1JTtcclxuXHRtYXgtd2lkdGg6MjUlO1xyXG5cdCNmaWx0ZXItYnV0dG9uIHtcclxuXHRcdGRpc3BsYXk6bm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbiAuY29udGFjdC1pbmZvIHtcclxuIFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuIFx0Ym9yZGVyLWJvdHRvbToxcmVtIHNvbGlkICR3aGl0ZTtcclxuIFx0aDIge1xyXG5cdCAgICBmb250LXNpemU6IDEuNzVyZW07XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG5cdCAgICB0ZXh0LXNoYWRvdzpub25lO1xyXG5cdCAgICAvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG5cclxuIFx0fVxyXG5cclxuICAgIC5pbmZvLWhvbGRlciB7XHJcblx0IFx0cGFkZGluZy10b3A6IDJ2dztcclxuXHQgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XHJcblx0ICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XHJcblx0ICAgIG1heC13aWR0aDogMTAwcmVtO1xyXG5cdCAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcblx0ICAgIGR0IHtcclxuXHQgICAgXHRjb2xvcjokbWVkaXVtLWdyYXk7XHJcbiAgICBcdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1ib2xkJywgc2FuLXNlcmlmO1xyXG4gICAgXHRcdC8vIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBcdFx0Zm9udC1zaXplOiAxLjVyZW07XHJcblx0ICAgIH1cclxuXHQgICAgZGQge1xyXG5cdCAgICBcdGNvbG9yOiR3aGl0ZTtcclxuICAgIFx0XHRmb250LXNpemU6IDEuNXJlbTtcclxuICAgIFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cdCAgICB9XHJcblxyXG5cdCAgICBwIHtcclxuXHQgICAgXHRjb2xvcjokd2hpdGU7XHJcbiAgICBcdFx0Zm9udC1zaXplOiAxLjVyZW07XHJcblx0ICAgIH1cclxuICAgIH1cclxuICAgICY6bm90KC5ncmF5KSAuYnV0dG9uLmxhcmdlIHtcclxuICAgIFx0YmFja2dyb3VuZDokd2hpdGU7XHJcbiAgICBcdGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xyXG4gICAgXHRib3JkZXI6M3B4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgXHQmOmFmdGVyIHtcclxuXHRcdCAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2J1dHRvbi1jYXJldC1ibHVlLnBuZyk7XHJcblx0XHR9XHJcbiAgICBcdCY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgXHRcdGJhY2tncm91bmQ6JHNlY29uZGFyeS1jb2xvcjtcclxuICAgIFx0XHRjb2xvcjokd2hpdGU7XHJcbiAgICBcdFx0Ym9yZGVyOjNweCBzb2xpZCAkd2hpdGU7XHJcblx0ICAgIFx0JjphZnRlciB7XHJcblx0XHRcdCAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2J1dHRvbi1jYXJldC5wbmcpO1xyXG5cdFx0XHR9XHJcbiAgICBcdH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbiAuY29udGFjdC1pbmZvLmdyYXkge1xyXG4gXHRiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuIFx0Ym9yZGVyLWJvdHRvbToxcmVtIHNvbGlkICR3aGl0ZTtcclxuIFx0aDIge1xyXG4gXHRcdGNvbG9yOiRibGFjaztcclxuXHJcbiBcdH1cclxuXHJcbiAgICAuaW5mby1ob2xkZXIge1xyXG5cclxuXHQgICAgZHQge1xyXG5cdCAgICBcdGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xyXG5cdCAgICB9XHJcblx0ICAgIGRkIHtcclxuXHQgICAgXHRjb2xvcjokcHJpbWFyeS1jb2xvcjtcclxuXHQgICAgXHRcclxuXHQgICAgfVxyXG5cclxuXHQgICAgcCB7XHJcblx0ICAgIFx0Y29sb3I6JGJsYWNrO1xyXG5cdCAgICB9XHJcblx0ICAgIGltZyB7XHJcblx0ICAgIFx0Ym94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuNzUpLGluc2V0IDBweCAwcHggNXB4IDBweCByZ2JhKDAsMCwwLDAuNzUpOztcclxuXHQgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5kdCB7XHJcbiAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVNlbWlib2xkJywgc2FuLXNlcmlmO1xyXG59XHJcblxyXG5cclxuLmJ1c2luZXNzLWxpbmtzIHtcclxuXHRwYWRkaW5nLWJvdHRvbToycmVtO1xyXG59XHJcblxyXG4uZG93bmxvYWQtY3RhIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogIDAuMXZ3IDF2dyAwLjN2dyAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVNlbWlib2xkJywgc2FuLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxLjJ2dztcclxuXHJcblx0c3BhbiB7XHJcblx0XHRjb2xvcjogJHdoaXRlO1xyXG5cdFx0bGluZS1oZWlnaHQ6IDM5cHg7XHJcblx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRjb250ZW50OiAnJztcclxuXHRcdCAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2Rvd25sb2FkLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcblx0XHQgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHQgICAgdG9wOiAwdnc7XHJcblx0XHQgICAgd2lkdGg6IDJ2dztcclxuXHRcdCAgICBoZWlnaHQ6IDF2dztcclxuXHRcdCAgICBtYXJnaW4tdG9wOiAxdnc7XHJcblx0XHQgICAgbWFyZ2luLWxlZnQ6IDF2dztcclxuXHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR9XHJcblx0fVxyXG5cdFx0Jjpob3ZlciBzcGFuIHtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuXHRcdH1cclxufVxyXG4udXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvIC5kb3dubG9hZC1jdGEgc3BhbiB7XHJcbiAgICBcdGNvbG9yOiAkd2hpdGU7XHJcbiAgICBcdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdCAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2Rvd25sb2FkLWNhcmV0LXdoaXRlLnBuZyk7XHJcblx0XHQgICAgfVxyXG59XHJcbi5vZmZzaXRlLWN0YSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6ICAwLjF2dyAxdncgMC4zdncgMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1TZW1pYm9sZCcsIHNhbi1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogMS4ydnc7XHJcblxyXG5cdHNwYW4ge1xyXG5cdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAzOXB4O1xyXG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHQgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9vZmZzaXRlLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcblx0XHQgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHQgICAgdG9wOiAwLjI1dnc7XHJcblx0XHQgICAgd2lkdGg6IDEuNXZ3O1xyXG5cdFx0ICAgIGhlaWdodDogMS41dnc7XHJcblx0XHQgICAgbWFyZ2luLWxlZnQ6IDF2dztcclxuXHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uaW1wb3J0YW50IHtcclxuXHRjb2xvcjogJHByaW1hcnktY29sb3I7XHJcblx0Zm9udC1zaXplOjEuNzVyZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuMTtcclxufVxyXG5cclxuXHJcbi5jZXJ0aWZ5LXN0ZXBzIHtcclxuXHRiYWNrZ3JvdW5kOiRsaWdodC1ncmF5O1xyXG5cdGgxIHtcclxuXHRcdGNvbG9yOiAkYmxhY2s7XHJcblx0XHRmb250LXNpemU6IDJ2dztcclxuXHRcdGJhY2tncm91bmQ6bm9uZTtcclxuXHRcdHBhZGRpbmctbGVmdDogMDtcclxuICAgIFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0fVxyXG5cclxuXHRoMiB7XHJcblx0XHRjb2xvcjogJGJsYWNrO1xyXG5cdH1cclxuXHRoMyB7XHJcblx0XHRjb2xvcjogJGJsYWNrO1xyXG5cdFx0Zm9udC1zaXplOiAydnc7XHJcblx0fVxyXG5cclxuXHQuaW5mby1ob2xkZXIge1xyXG5cdCAgICBwYWRkaW5nLXRvcDogMnZ3O1xyXG5cdCAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcclxuXHQgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcclxuXHQgICAgbWF4LXdpZHRoOiAxMDByZW07XHJcblx0ICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cdH1cclxuXHQuY2FyZCB7XHJcblx0XHRib3JkZXI6MnB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuXHR9XHJcblx0LmNlcnRpZnktYW5ub3VuY2VtZW50LXRhYmxlIHtcclxuXHRcdGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblxyXG5cdFx0ZHQge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cdFx0XHRjb2xvcjokd2hpdGU7XHJcblx0XHRcdHBhZGRpbmc6IDFyZW0gMnJlbTtcclxuXHRcdH1cclxuXHRcdGRkIHtcclxuXHRcdFx0cGFkZGluZzogMXJlbTtcclxuXHRcdH1cclxuXHR9XHJcblx0LmVucm9sbC1hbm5vdW5jZW1lbnQtdGFibGUge1xyXG5cdFx0YmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHJcblx0XHRkdCB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdGNvbG9yOiR3aGl0ZTtcclxuXHRcdFx0cGFkZGluZzogMXJlbSAycmVtO1xyXG5cdFx0fVxyXG5cdFx0ZGQge1xyXG5cdFx0XHRwYWRkaW5nOiAxcmVtO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuc2VjdGlvbi5jb250YWN0LXVzIHtcclxuIFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuIFx0Ym9yZGVyLWJvdHRvbTo4cHggc29saWQgJHByaW1hcnktY29sb3I7XHJcbiBcdG1hcmdpbi1ib3R0b206MXJlbTtcclxuXHJcbiBcdC5pbnRyby1jdGEgLmJ1dHRvbiB7XHJcbiBcdFx0Ym9yZGVyOjJweCBzb2xpZCAkd2hpdGU7XHJcblx0fVxyXG5cclxuIFx0Ji5jb250YWN0LWNvbW1lcmNpYWwge1xyXG4gXHRcdGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiBcdH1cclxuIFx0Ji5jb250YWN0LWFjY2Vzc2liaWxpdHkge1xyXG4gXHRcdGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiBcdH1cclxuIFx0Ji5jb250YWN0LXJlY3JlYXRpb25hbCB7XHJcbiBcdFx0Ym9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuIFx0fVxyXG4gXHQmLmNvbnRhY3QtZmxlZXQge1xyXG4gXHRcdGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiBcdH1cclxuXHJcbiBcdGgyIHtcclxuIFx0XHRmb250LXNpemU6IDEuMjVyZW07XHJcbiBcdH1cclxuIFx0cCB7XHJcbiBcdFx0Y29sb3I6JHdoaXRlO1xyXG4gXHR9XHJcblxyXG4gXHQucmFkaW8tZ3JvdXAge1xyXG4gXHRcdHBhZGRpbmc6IDJyZW0gMCA0cmVtO1xyXG5cclxuIFx0XHRsYWJlbCB7XHJcbiBcdFx0XHRmb250LXNpemU6IDEuNXJlbTtcclxuIFx0XHR9XHJcbiBcdFx0LnJhZGlvIHtcclxuIFx0XHRcdHRvcDogN3B4O1xyXG4gXHRcdH1cclxuIFx0fVxyXG4gXHQuY29udGFjdC1yZXN1bHRzIHtcclxuXHQgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XHJcblx0ICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XHJcblx0ICAgIG1heC13aWR0aDogMTAwcmVtO1xyXG5cdCAgICBtYXJnaW46IDAgYXV0bztcclxuXHQgICAgaGVpZ2h0OjYwdmg7XHJcblxyXG5cdCAgICAuaW50cm8tY3RhIHtcclxuXHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQgICAgYm90dG9tOiA2dmg7XHJcblx0XHQgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xyXG5cdCAgICBcdG1heC13aWR0aDogY2FsYygxMDByZW0gLSAxLjI1cmVtKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG59XHJcblxyXG4uc2xpZGUtY29udGFpbmVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbGVmdDogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uc2xpZGUge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIGJvcmRlci1ib3R0b206IDlweCBzb2xpZCAjMDBBQ0Y2OyAgICBcclxufVxyXG5cclxuLnNsaWRlIC5zaXplZC1jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogNzVweCAyNXB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzEwMmI0ZTtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICBwYWRkaW5nLXRvcDogNTVweDtcclxuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgIzAwQUNGNjtcclxuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG59XHJcblxyXG5cclxuLnBhZ2luYXRpb24tY29udGFpbmVyIHtcclxuICBtYXJnaW4tdG9wOiAxMjBweDtcclxufVxyXG5cclxuXHJcblxyXG4ubmFtZS1pbmZvLWZvcm0ge1xyXG4gICAgZm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1SZWd1bGFyJzsgICAgICAgXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTAyYjRlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMThweDtcclxuICAgIHdpZHRoOiA1OHZ3O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcblxyXG5cclxuLmNvbnRhY3QtdXMgaDEgeyAgXHJcbiAgICBmb250LXNpemU6IDIuM3Z3O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgdGV4dC1zaGFkb3c6bm9uZTtcclxufVxyXG5cclxuLmRhcmstc2VjdGlvbiBsYWJlbCB7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG59XHJcblxyXG4uZmxlZXQtaW5jZW50aXZlcyB7XHJcblx0bWFyZ2luLXRvcDoxNHZ3O1xyXG5cdHBhZGRpbmc6IDF2dztcclxuXHRjb2xvcjogJHdoaXRlO1xyXG5cdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4uYWNjZXNzaWJpbGl0eS1pbmZvIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDFyZW0gc29saWQgJHdoaXRlO1xyXG5cdFx0cGFkZGluZzogMnJlbSAwO1xyXG5cclxuXHJcblx0LmNvbnRlbnQtYnVja2V0IHtcclxuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcdFxyXG5cdFx0cGFkZGluZzoxdncgMnZ3O1xyXG5cclxuXHRcdHAsIHVsIHtcclxuXHRcdFx0Zm9udC1zaXplOjEuMnJlbTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMnJlbTtcclxuXHRcdH1cclxuXHR9XHJcblx0LmNhbGxzLXRvLWFjdGlvbiB7XHJcblx0XHRwYWRkaW5nOiAzcmVtIDAgMXJlbTtcclxuXHR9XHJcblx0Lm9mZiB7XHJcblx0XHRkaXNwbGF5Om5vbmU7XHJcblx0fVxyXG5cclxuXHQuYmFja2dyb3VuZC1pbWcge1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHRvdmVyZmxvdzpoaWRkZW47XHJcblx0XHRoZWlnaHQ6aW5oZXJpdDtcclxuXHR9XHJcblxyXG5cdC5iYWNrZ3JvdW5kLWltZzIge1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHRvdmVyZmxvdzpoaWRkZW47XHJcblx0XHRoZWlnaHQ6aW5oZXJpdDtcclxuXHRcdG1pbi1oZWlnaHQ6IDIwdnc7XHJcblx0XHRib3JkZXItYm90dG9tOiAwLjVyZW0gc29saWQgJGFjY2Vzc2liaWxpdHktY29sb3I7XHJcblx0fVxyXG5cclxuXHJcblx0LnRhYnMge1xyXG5cdFx0Ym9yZGVyLXdpZHRoOiAwO1xyXG5cdFx0YmFja2dyb3VuZDpub25lO1xyXG5cdH1cclxuXHJcblxyXG5cdC50YWJzLXRpdGxlIHtcclxuXHQgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdCAgICBwYWRkaW5nOiAwLjUlO1xyXG5cdCAgICB3aWR0aDogMjQlO1xyXG5cclxuXHQgICAgPiBhIHtcclxuXHQgICAgXHRmb250LXNpemU6Ljl2dztcclxuXHQgICAgXHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuXHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHQgICAgXHRjb2xvcjogJHdoaXRlO1xyXG5cdCAgICBcdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XHJcblxyXG5cdCAgICBcdCY6Zm9jdXMsICY6aG92ZXIsICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcclxuXHRcdFx0ICAgIGJhY2tncm91bmQ6ICMzN2E5ZTg7XHJcblx0XHRcdCAgICBjb2xvcjogI2ZmZmZmZjtcclxuXHRcdFx0ICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xyXG5cdFx0XHR9XHJcblxyXG5cdCAgICB9XHJcblx0fVxyXG5cdC5vZmZzaXRlLWN0YSB7XHJcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHR9XHJcbn1cclxuLmFjY2Vzc2liaWxpdHktaW5mby52aWRlby1zdG9yeSB7XHJcblx0ZGlzcGxheTogaW5saW5lLXRhYmxlO1xyXG59XHJcbi5hY2Nlc3NpYmlsaXR5LWluZm8udmlkZW8tc3RvcnkgLmNvbnRlbnQtYnVja2V0IHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBwYWRkaW5nOiAxdncgNHZ3O1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuLmFjY2Vzc2liaWxpdHktaW5mbyAuYmFja2dyb3VuZC1pbWcudmlkZW8tc3RvcnktdmlkZW8ge1xyXG5cdGhlaWdodDogMzN2dztcclxuXHQgICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5hY2Nlc3NpYmlsaXR5LWluZm8gLmJhY2tncm91bmQtaW1nLnZpZGVvLXN0b3J5LXZpZGVvIC5iYW5uZXJfX3ZpZGVvIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgYmFja2dyb3VuZDogJGJsYWNrXHJcbn1cclxudmlkZW86OmN1ZSB7XHJcbiAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgIHotaW5kZXg6IDI7XHJcbiAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgIH1cclxuICAgdmlkZW86OmN1ZShiKSB7XHJcbiAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgfVxyXG5cclxubGkuY2VsbCBhIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5saS5kb3dubG9hZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktZG93bmxvYWQtaWNvbi5wbmcpIG5vLXJlcGVhdCAwIGNlbnRlcjtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIHBhZGRpbmc6MTBweCAwO1xyXG4gICAgYSB7XHJcbiAgICBcdHBhZGRpbmc6MTBweCAwIDEwcHggNTVweDtcclxuICAgIH1cclxufVxyXG5cclxubGkucXVlc3Rpb25zIHtcclxuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYWNjZXNzaWJpbGl0eS1xdWVzdGlvbi1pY29uLnBuZykgbm8tcmVwZWF0IDAgY2VudGVyO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgcGFkZGluZzoxMHB4IDA7XHJcbiAgICBhIHtcclxuICAgIFx0cGFkZGluZzoxMHB4IDAgMTBweCA1NXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5saS5taWxpdGFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktbWlsaXRhcnktaWNvbi5wbmcpIG5vLXJlcGVhdCAwIGNlbnRlcjtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIHBhZGRpbmc6MTBweCAwO1xyXG4gICAgYSB7XHJcbiAgICBcdHBhZGRpbmc6MTBweCAwIDEwcHggNTVweDtcclxuICAgIH1cclxufVxyXG5cclxubGkuZW1wbG95ZWUge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9hY2Nlc3NpYmlsaXR5LWVtcGxveWVlLWljb24ucG5nKSBuby1yZXBlYXQgMCBjZW50ZXI7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nOjEwcHggMDtcclxuICAgIGEge1xyXG4gICAgXHRwYWRkaW5nOjEwcHggMCAxMHB4IDU1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbnAuaW5mb2l0ZW0ge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9hY2Nlc3NpYmlsaXR5LWluZm9ybWF0aW9uLWljb24ucG5nKSBuby1yZXBlYXQgMCBjZW50ZXI7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nOjEwcHggMCAxMHB4IDcwcHg7XHJcbn1cclxuXHJcbnAuY2xhaW1pdGVtIHtcclxuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYWNjZXNzaWJpbGl0eS1jbGFpbS1pY29uLnBuZykgbm8tcmVwZWF0IDAgY2VudGVyO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgcGFkZGluZzoxMHB4IDAgMTBweCA3MHB4O1xyXG59XHJcblxyXG5saS50YXNraXRlbSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FjY2Vzc2liaWxpdHktdGFzay1pY29uLnBuZykgbm8tcmVwZWF0IDAgY2VudGVyO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgcGFkZGluZzoxMHB4IDA7XHJcbiAgICBzcGFuIHtcclxuICAgIFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbiAgICBcdHBhZGRpbmc6MTBweCAwIDEwcHggNzBweDtcclxuICAgIH1cclxufVxyXG5cclxuLnByb2dyYW0tc3RlcHMge1xyXG5cdG1hcmdpbjogMnJlbSAwO1xyXG5cclxuXHRkdCB7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0YmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiAgXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBcdFx0cGFkZGluZzogMC41cmVtIDAgMC41ZW07XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHR6LWluZGV4OiAxO1xyXG5cdFx0ICAgIGNvbnRlbnQ6IFwiXCI7XHJcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIGxlZnQ6IC0xcmVtO1xyXG5cdFx0ICAgIHRvcDogMDtcclxuXHRcdCAgICBoZWlnaHQ6IDEwMCU7XHJcblx0XHQgICAgd2lkdGg6IDJyZW07XHJcblx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0XHRcdC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcblx0XHRcdC1tb3otdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcblx0XHRcdC1tcy10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuXHRcdFx0dHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcblx0XHR9XHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0ei1pbmRleDogMTtcclxuXHRcdCAgICBjb250ZW50OiBcIlwiO1xyXG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICByaWdodDogLTFyZW07XHJcblx0XHQgICAgdG9wOiAwO1xyXG5cdFx0ICAgIGhlaWdodDogMTAwJTtcclxuXHRcdCAgICB3aWR0aDogMnJlbTtcclxuXHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuXHRcdFx0LW1vei10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuXHRcdFx0LW1zLXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuXHRcdH1cclxuXHR9XHJcblx0ZGQge1xyXG5cdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuICBcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIFx0XHRwYWRkaW5nOiAxcmVtIDAgMXJlbSAycmVtO1xyXG4gIFx0XHRtYXJnaW4tdG9wOiAtNXB4O1xyXG4gIFx0XHRmb250LXNpemU6MXZ3O1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0ei1pbmRleDogMTtcclxuXHRcdCAgICBjb250ZW50OiBcIlwiO1xyXG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICByaWdodDogMC41cmVtO1xyXG5cdFx0ICAgIHRvcDogLTMzJTtcclxuXHRcdCAgICBoZWlnaHQ6IDY2JTtcclxuXHRcdCAgICB3aWR0aDogMC41cmVtO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuXHRcdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuXHRcdFx0LW1vei10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuXHRcdFx0LW1zLXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuXHRcdH1cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHR6LWluZGV4OiAxO1xyXG5cdFx0ICAgIGNvbnRlbnQ6IFwiXCI7XHJcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIHJpZ2h0OiAwLjVyZW07XHJcblx0XHQgICAgdG9wOiAzMyU7XHJcblx0XHQgICAgaGVpZ2h0OiA2NiU7XHJcblx0XHQgICAgd2lkdGg6IDAuNXJlbTtcclxuXHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcblx0XHRcdC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMjBkZWcpO1xyXG5cdFx0XHQtbW96LXRyYW5zZm9ybTogc2tld1goLTIwZGVnKTtcclxuXHRcdFx0LW1zLXRyYW5zZm9ybTogc2tld1goLTIwZGVnKTtcclxuXHRcdFx0dHJhbnNmb3JtOiBza2V3WCgtMjBkZWcpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmxhbmRpbmcge1xyXG5cdGxlZ2VuZCB7XHJcblx0XHQvL2ZvbnQtc2l6ZToxLjJ2dztcclxuXHRcdHRleHQtYWxpZ246bGVmdDtcclxuXHRcdGxpbmUtaGVpZ2h0OjEuMTtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAxcmVtO1xyXG5cdFx0Ly90ZXh0LXNoYWRvdzogMHB4IDNweCAxMHB4ICMwMDAwMDAsIDBweCAzcHggMTBweCAjMDAwMDAwO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi5pbi1wYWdlLWp1bXAgYTphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY2lyY2xlLWNhcmV0LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdG9wOiAwLjV2dztcclxuICAgIHdpZHRoOiAxLjV2dztcclxuICAgIGhlaWdodDogMS41dnc7XHJcbiAgICBtYXJnaW4tbGVmdDogMXZ3O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5pbi1wYWdlLWp1bXAubm9ybWp1bXAgYTphZnRlciB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgIHRvcDogMC4yNXZ3O1xyXG5cdG1hcmdpbi1sZWZ0OiAwLjV2dztcclxufVxyXG4uaW4tcGFnZS1qdW1wLm5vcm1qdW1wIGxpLmNlbGwge1xyXG5cdGxpc3Qtc3R5bGU6bm9uZTtcclxuXHRtYXJnaW4tbGVmdDogMXJlbTtcclxuICAgIG1hcmdpbi1yaWdodDogLTFyZW07XHJcbn1cclxuLmluLXBhZ2UtanVtcC5saWdodCBhOmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY2lyY2xlLWNhcmV0LWJsdWUucG5nKTtcclxufVxyXG4uZ3JheSB7XHJcblx0YmFja2dyb3VuZDokbGlnaHQtZ3JheTtcclxuXHQuY29udGVudC1idWNrZXQge1xyXG5cdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JheTtcclxuXHR9XHJcblx0LnByb21vX19iYWNrZ3JvdW5kIHtcclxuXHRcdHotaW5kZXg6MTtcclxuXHR9XHJcbn1cclxuXHJcbi5yZWltYnVyc2VtZW50LXN0ZXBzIHtcclxuXHQucHJvbW9fX2JhY2tncm91bmQge1xyXG5cdCAgICBtaW4td2lkdGg6IDEwMCUhaW1wb3J0YW50O1xyXG5cdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ICAgIHRvcDogMDtcclxuXHQgICAgbGVmdDogNTAlO1xyXG5cdCAgICB3aWR0aDogYXV0bztcclxuXHQgICAgbWluLXdpZHRoOiAxMDElO1xyXG5cdCAgICBoZWlnaHQ6IGF1dG87XHJcblx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHQgICAgei1pbmRleDogMTtcclxuXHR9XHJcblx0aDQge1xyXG5cdFx0Y29sb3I6JGJsYWNrO1xyXG5cdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRcdHBhZGRpbmc6MCAwIDJyZW0gMDtcclxuXHRcdG1hcmdpbi1sZWZ0OjA7XHJcblx0fVxyXG59IFxyXG5cclxuLmFjY2Vzc2liaWxpdHktdGFibGUge1xyXG5cdG1pbi13aWR0aDogNDByZW07XHJcbn1cclxuLmFjY2Vzc2liaWxpdHktdGFibGUgdGhlYWQgdGgge1xyXG5cdGJhY2tncm91bmQ6JHNlY29uZGFyeS1jb2xvcjtcclxuXHRjb2xvcjokd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAxcmVtIDAuNjI1cmVtIDEuMTI1cmVtO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0Ym9yZGVyOjFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xyXG59XHJcblxyXG4uYWNjZXNzaWJpbGl0eS10YWJsZSB0Ym9keSB0ZCB7XHJcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcblx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1NZWRpdW0nLCBzYW4tc2VyaWY7XHJcblx0Ym9yZGVyOjFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cclxuXHQmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgIFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0fVxyXG59XHJcbi5hY2Nlc3NpYmlsaXR5LXRhYmxlIHRib2R5IHRyOmZpcnN0LWNoaWxkIHRkIHtcclxuICAgIGZvbnQtc2l6ZTowLjc1cmVtO1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIHRleHQtYWxpZ246bGVmdDtcclxufVxyXG4uYWNjZXNzaWJpbGl0eS10YWJsZSAueWVzIHtcclxuXHRmb250LXNpemU6MC4wMXB4O1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6Jyc7XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHRib3JkZXI6MDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiRzZWNvbmRhcnktY29sb3I7XHJcblx0XHR3aWR0aDoxcmVtO1xyXG5cdFx0aGVpZ2h0OjFyZW07XHJcblx0XHR0b3A6IC0wLjdyZW07XHJcbiAgICBcdGxlZnQ6IC0wLjVyZW07XHJcblxyXG5cdH1cclxufVxyXG4uZm9ybS1lcnJvciB7XHJcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuLmdpZnQtcmVzcG9uc2Uub2ZmIHtcclxuXHRkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcbi51bmRlcmxpbmUge1xyXG5cdHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcblx0Jjpob3ZlciB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246bm9uZTtcclxuXHR9XHJcbn1cclxuLmRhcmstc2VjdGlvbiBhLnVuZGVybGluZSB7XHJcblx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuXHRjb2xvcjokbWVkaXVtLWdyYXk7XHJcblx0Jjpob3ZlciwgJjpmb2N1cyB7XHJcblx0XHRjb2xvcjokd2hpdGU7XHJcblx0fVxyXG59XHJcbi5ub2JyIHtcclxuICAgIFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG4uaW1hZ2UtZGlzY2xhaW1lciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGJvdHRvbTogMDtcclxuXHRyaWdodDogMDtcclxuXHRmb250LXNpemU6IDAuNzVyZW07XHJcblx0XHRzcGFuIHtcclxuXHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcclxuXHRcdFx0cGFkZGluZzowLjVyZW07XHJcblx0XHRcdGNvbG9yOiR3aGl0ZTtcclxuXHR9XHJcbn1cclxuXHJcblxyXG5cclxuLmltYWdlLWxvYWRlci1zdmcge1xyXG4gICAgd2lkdGg6IDEzMHB4O1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlkWFJtTFRnaVB6NEtQQ0V0TFNCSFpXNWxjbUYwYjNJNklFRmtiMkpsSUVsc2JIVnpkSEpoZEc5eUlERTRMakF1TUN3Z1UxWkhJRVY0Y0c5eWRDQlFiSFZuTFVsdUlDNGdVMVpISUZabGNuTnBiMjQ2SURZdU1EQWdRblZwYkdRZ01Da2dJQzB0UGdvOElVUlBRMVJaVUVVZ2MzWm5JRkJWUWt4SlF5QWlMUzh2VnpOREx5OUVWRVFnVTFaSElERXVNUzh2UlU0aUlDSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OUhjbUZ3YUdsamN5OVRWa2N2TVM0eEwwUlVSQzl6ZG1jeE1TNWtkR1FpUGdvOGMzWm5JSFpsY25OcGIyNDlJakV1TVNJZ2FXUTlJa3hoZVdWeVh6RWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZzlJakJ3ZUNJZ2VUMGlNSEI0SWdvSklIWnBaWGRDYjNnOUlqQWdNQ0F6TURBZ01USXdJaUJsYm1GaWJHVXRZbUZqYTJkeWIzVnVaRDBpYm1WM0lEQWdNQ0F6TURBZ01USXdJaUI0Yld3NmMzQmhZMlU5SW5CeVpYTmxjblpsSWo0S1BHYytDZ2s4Wno0S0NRazhaejRLQ1FrSlBIQmhkR2dnWm1sc2JEMGlJMFpHUmtaR1JpSWdaRDBpVFRJek5TNDRMRFEwTGpKTU1qTTFMamdzTkRRdU1rTXlNelV1T0N3ME5DNHlMREl6TlM0NExEUTBMaklzTWpNMUxqZ3NORFF1TWtNeU16VXVPQ3cwTkM0eUxESXpOUzQ0TERRMExqSXNNak0xTGpnc05EUXVNbm9pTHo0S0NRa0pQSEJoZEdnZ1ptbHNiRDBpSTBaR1JrWkdSaUlnWkQwaVRURTVNaTQ1TERJNExqbGpNQ3d3TGpFc01DNHhMREF1TVN3d0xqRXNNQzR5UXpFNU15d3lPU3d4T1RJdU9Td3lPQzQ1TERFNU1pNDVMREk0TGpsNklpOCtDZ2tKUEM5blBnb0pQQzluUGdvSlBHUmxabk0rQ2dvSkNRazhJUzB0SUVSaElHZHlZV1JwWlc1MElDMHRQZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga2FXVnVkQ0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJd0pTSWdlVEk5SWpFd01DVWlQZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUR4emRHOXdJRzltWm5ObGREMGlNQ1VpSUhOMGVXeGxQU0p6ZEc5d0xXTnZiRzl5T2lNd01EQXdNREFnT3lJdlBnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHh6ZEc5d0lHOW1abk5sZEQwaU1qVWxJaUJ6ZEhsc1pUMGljM1J2Y0MxamIyeHZjam9qWTJOalkyTmpJRHNpTHo0S0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpVd0pTSWdjM1I1YkdVOUluTjBiM0F0WTI5c2IzSTZJMFpHUmtaR1JpQTdJaTgrQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1BITjBiM0FnYjJabWMyVjBQU0kzTlNVaUlITjBlV3hsUFNKemRHOXdMV052Ykc5eU9pTkdSa1pHUmtZZ095SXZQZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUR4emRHOXdJRzltWm5ObGREMGlNVEF3SlNJZ2MzUjViR1U5SW5OMGIzQXRZMjlzYjNJNkkwWkdSa1pHUmlBN0lpOCtDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQThMMnhwYm1WaGNrZHlZV1JwWlc1MFBnb0tJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEd2hMUzBnVTNScGRHTm9JRElnWjNKaFpHbGxiblJ6SUhSdloyVjBhR1Z5SUdadmNpQnpaV0Z0YkdWemN5QmhibWx0WVhScGIyNGdJQzB0UGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEhCaGRIUmxjbTRnYVdROUluQmhkSFJsY200aUlIZzlJakFpSUhrOUlqQWlJSGRwWkhSb1BTSXhNQ1VpSUdobGFXZG9kRDBpTXpBd0pTSWdjR0YwZEdWeWJsVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0krQ2dvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeHlaV04wSUhnOUlqQWlJSGs5SWpBaUlIZHBaSFJvUFNJeE1EQWxJaUJvWldsbmFIUTlJak13TUNVaUlHWnBiR3c5SW5WeWJDZ2paM0poWkdsbGJuUXBJajRLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQR0Z1YVcxaGRHVWdZWFIwY21saWRYUmxWSGx3WlQwaVdFMU1JZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmhkSFJ5YVdKMWRHVk9ZVzFsUFNKNUlnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbWNtOXRQU0l0TVRBd0pTSWdkRzg5SWpFd01DVWlDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHUjFjajBpTTNNaUNpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGNHVmhkRU52ZFc1MFBTSnBibVJsWm1sdWFYUmxJaTgrQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1BDOXlaV04wUGdvS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQThjbVZqZENCNFBTSXdJaUI1UFNJd0lpQjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l6TURBbElpQm1hV3hzUFNKMWNtd29JMmR5WVdScFpXNTBLU0krQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHhoYm1sdFlYUmxJR0YwZEhKcFluVjBaVlI1Y0dVOUlsaE5UQ0lLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZWFIwY21saWRYUmxUbUZ0WlQwaWVTSUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1puSnZiVDBpTVRBd0pTSWdkRzg5SWkweE1EQWxJZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmtkWEk5SWpOeklnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYQmxZWFJEYjNWdWREMGlhVzVrWldacGJtbDBaU0l2UGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEd3ZjbVZqZEQ0S0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBOEwzQmhkSFJsY200K0Nna0pQQzlrWldaelBnb0pQSEJoZEdnZ1ptbHNiRDBpZFhKc0tDTndZWFIwWlhKdUtTSWdaRDBpVFRFMU1TNHhMREV3Tnk0elF6YzJMREV3Tnk0ekxERTFMakVzT0RZdU1pd3hOUzR4TERZd1l6QXRNall1TVN3Mk1DNDVMVFEzTGpNc01UTTFMamt0TkRjdU0wTXlNall1TWl3eE1pNDNMREk0Tnl3ek15NDVMREk0Tnl3Mk1Bb0pDVU15T0Rjc09EWXVNaXd5TWpZdU1pd3hNRGN1TXl3eE5URXVNU3d4TURjdU0zb2dUVEUxTVM0eExERTJMamhETnpndU5pd3hOaTQ0TERFNUxqa3NNell1TWl3eE9TNDVMRFl3WXpBc01qTXVPU3cxT0M0M0xEUXpMaklzTVRNeExqSXNORE11TWdvSkNXTTNNaTQwTERBc01UTXhMakl0TVRrdU15d3hNekV1TWkwME15NHlRekk0TWk0ekxETTJMaklzTWpJekxqVXNNVFl1T0N3eE5URXVNU3d4Tmk0NGVpSXZQZ29KUEhCaGRHZ2dabWxzYkQwaWRYSnNLQ053WVhSMFpYSnVLU0lnWkQwaVRUSXpOUzQzTERRMExqVmpNQzR5TFRBdU15d3dMVEF1Tmkwd0xqUXRNQzQyWXkweUxqSXNNQzAxTERBdE55NHpMREJqTFRBdU5Td3dMVEF1T0N3d0xqRXRNUzR4TERBdU5tTXRNQzQ0TERFdU5pMHhNU3d4Tmk0NExURXlMamtzTVRrdU9Bb0pDV010TUM0ekxEQXVOUzB3TGpjc01DNDBMVEF1T0Mwd0xqRmpMVEF1TWkweExqZ3RNUzQzTFRNdU9DMDBMakV0TkM0M1l5MHhMamd0TUM0M0xUTXVOaTB3TGprdE5TNDFMVEF1Tm1NdE15NHpMREF1TkMwMkxqTXNNaTR5TFRndU9TdzBMakpqTFRRc015MDNMalFzTmk0NUxURXhMamdzT1M0NENna0pZeTB5TGpRc01TNDJMVFV1Tnl3eUxqa3ROeTQ1TERBdU9XTXRNaTB4TGpndE1TNDRMVFV1T1N3eExqTXRPUzR4WXpBdU15MHdMak1zTUM0M0xUQXVNU3d3TGpZc01DNHlZeTB3TGpNc01TNDBMREF1TVN3eUxqa3NNUzR5TERNdU9XTXhMak1zTVM0eUxETXVNaXd4TGpNc05DNDVMREF1TlFvSkNXTXhMamt0TVN3ekxqRXRNaTQ0TERNdU5DMDBMamxqTUM0MUxUTXVNaTB5TFRZdU1TMDFMakV0Tmk0ell5MHlMalV0TUM0eUxUVXNNQzQzTFRjdU15d3lMamRqTFRFdU1pd3hMVEV1T1N3eExqY3RNaTQ1TERNdU1tTXRNQzR5TERBdU5DMHdMallzTUM0MExUQXVOaTB3TGpFS0NRbGpNQzR4TFRRdU1TMHhMall0Tmk0MUxUVXROaTQyWXkweUxqY3RNQzR4TFRVdU5Td3hMalF0Tnk0M0xETXVNV010TWk0MExESXROQzQyTERRdU5TMDJMamdzTjJNdE1DNHpMREF1TXkwd0xqVXNNQzR6TFRBdU5pMHdMak5qTFRBdU1TMHlMamN0TUM0NExUVXVOQzB5TFRjdU13b0pDV010TUM0MUxUQXVOeTB4TGpRdE1TMHlMakl0TUM0MVl5MHdMalFzTUM0eUxURXVOaXd3TGpndE1pNDJMREV1TldNdE1DNDFMREF1TkMwd0xqWXNNQzQ1TFRBdU5Dd3hMalpqTVM0eUxEUXVNU3d4TERndU9DMHdMamNzTVRJdU4yTXRNUzQxTERNdU5pMDBMalVzTmk0NUxUZ3NPQW9KQ1dNdE1pNHpMREF1TnkwMExqY3NNQzQwTFRZdU1pMHhMamRqTFRJdE1pNDRMVEV1TWkwM0xqY3NNUzQ0TFRFeExqaGpNaTQzTFRNdU5pdzJMalV0TlM0NUxERXdMalF0Tnk0ell6QXVOUzB3TGpJc01DNDFMVEF1TlN3d0xqUXRNQzQ1WXkwd0xqSXRNQzQyTFRBdU5TMHhMalV0TUM0M0xURXVPUW9KQ1dNdE1DNDBMVEF1T1MweExqTXRNUzR4TFRJdU5pMHhZeTB5TGpnc01DNHpMVFV1TXl3eExqTXROeTQ0TERJdU5tTXROaTQxTERNdU5TMDVMamdzTVRBdU15MHhNUzR6TERFekxqbGpMVEF1Tnl3eExqY3RNUzR6TERJdU9DMHlMRE11T0dNdE1Td3hMak10TWk0ekxESXVOUzAwTGpjc05DNDJDZ2tKWXkwd0xqSXNNQzR5TFRBdU5Dd3dMall0TUM0eUxERmpNQzR5TERBdU5Td3hMalVzTWk0eUxERXVPQ3d5TGpSak1DNDBMREF1TWl3d0xqZ3RNQzR4TERFdE1DNHlZekV1TnkweExqRXNNeTQyTFRJdU9TdzBMall0TkM0eFl6QXVNeTB3TGpRc01DNDNMVEF1TWl3d0xqa3NNQzQwQ2drSll6QXVPU3d6TGpJc015NHpMRFV1T1N3MkxqVXNOMk0yTERJc01USXVNaTB3TGprc01UWXVPUzAyWXpNdE15NHlMRFF1TVMwMUxqTXNOUzR5TFRZdU4yTXhMamt0TWk0MExEVXVPQzAzTGpnc01UQXVNeTB4TVM0eVl6RXVOeTB4TGpNc015NDJMVEl1TWl3MExqWXRNUzQyQ2drSll6QXVPQ3d3TGpVc01TNHhMREV1Tnkwd0xqSXNOR010TkM0MkxEZ3VOUzB4TVM0MUxERTRMalF0TVRJdU55d3lNQzQ1WXkwd0xqSXNNQzQwTERBc01DNDNMREF1TkN3d0xqZGpNaTQwTERBc05DNDRMREFzTnl3d1l6QXVOQ3d3TERBdU5TMHdMaklzTUM0M0xUQXVOQW9KQ1dNekxqWXROUzQyTERZdU9TMHhNQzQ1TERFd0xqVXRNVFl1TkdNd0xqSXRNQzR6TERBdU5DMHdMakVzTUM0MExEQXVNV013TGpFc01TNHpMREF1TkN3ekxERXVNU3cwTGpKak1TNDBMREl1TVN3ekxqTXNNeXcxTGpRc00yTXhMamNzTUN3eUxqWXRNQzR5TERRdU5DMHdMamtLQ1Fsak1TNDFMVEF1Tml3eUxqY3RNUzR6TERNdU5pMHhMamxqTUM0MUxUQXVOQ3d3TGpZc01DNHpMREF1Tml3d0xqTmpMVEF1T0N3MExqUXNNQzR5TERrdU55dzBMallzTVRFdU9HTTFMak1zTWk0MkxERXhMakV0TVM0eExERTBMalF0TkM0ell6QXVNeTB3TGpNc01DNDNMVEF1TXl3d0xqY3NNQzQwQ2drSll6QXVNU3d4TGpNc01DNDJMREl1T0N3eExqY3NNeTQ0WXpJdU9Dd3lMamdzT0M0MExERXVOeXd4TkM0eExUSXVOMk16TGpZdE1pNDRMRGN1TkMwMkxqZ3NNVEF1T0MweE1DNDVZekF1TVMwd0xqSXNNQzR5TFRBdU5Dd3dMVEF1TjJNdE1DNDFMVEF1TlMweExqTXRNUzR5TFRFdU9DMHhMamNLQ1FsakxUQXVNaTB3TGpJdE1DNDJMVEF1TVMwd0xqZ3NNR010TXk0MUxETXVNeTAyTGpjc055NHlMVEV4TGpJc01UQXVNMk10TVM0MUxERXVNUzAwTERFdU9TMDFMakVzTUM0MVl5MHdMalF0TUM0MkxUQXVOQzB4TGpRc01DMHlMalFLQ1FsRE1qRXpMalVzTnpndU5pd3lNelF1Tml3ME5pNDBMREl6TlM0M0xEUTBMalY2SUUweU1EY3VPQ3czTVM0MVl6QXNNQzR5TERBdU5Dd3dMalVzTUM0M0xEQXVObU13TGpFc01Dd3dMaklzTUM0eExEQXNNQzQwWXkwd0xqa3NNUzQ1TFRFdU55d3pMVEl1T0N3MExqY0tDUWxqTFRFc01TNDFMVEl1TWl3eUxqY3RNeTQyTERNdU9XTXRNaTR4TERFdU9DMDFMakVzTXk0M0xUY3VOU3d5TGpSakxURXVNUzB3TGpZdE1TNDJMVEl1TVMweExqVXRNeTR6WXpBdU1TMHpMalVzTVM0MkxUY3NOQzQwTFRFd0xqVmpNeTQxTFRRdU15dzNMak10Tmk0MUxEa3VPQzAxTGpNS0NRbGpNaTQyTERFdU1pd3hMamdzTkM0eUxEQXVOaXcyTGpaRE1qQTNMamdzTnpFdU1pd3lNRGN1T0N3M01TNHpMREl3Tnk0NExEY3hMalY2SWk4K0NnazhjR0YwYUNCbWFXeHNQU0oxY213b0kzQmhkSFJsY200cElpQmtQU0pOT0RJdU55dzRPUzQ0WXkwM0xqa3NNQzR4TFRFMExqZ3ROQzQ0TFRFMUxqWXRNVE11TW1NdE1DNDBMVFF1Tnl3d0xqa3RPQzQ0TERNdU5TMHhNaTR5WXpJdU15MHpMakVzTmk0ekxUVXVOaXc1TGpjdE5pNHlDZ2tKWXpFdU1TMHdMaklzTWk0MkxUQXVNU3d6TGpJc01DNDNZekVzTVM0eExEQXVOeXd5TGpNdE1DNHpMREl1T0dNdE1pNDJMREV1TXkwMUxqWXNNeTQxTFRjdU1pdzJMalpqTFRFdU1pd3lMalV0TVM0MUxEVXVOU3d3TGpRc09DNDBZek11TWl3MExqZ3NNVElzTkM0NUxESXdMakl0TWk0M0Nna0pZekl0TVM0NUxETXVPQzB6TGpjc05TNDNMVFV1T0dNekxqWXROQzR4TERRdU9DMDFMallzT1M0MkxURXlMak5qTUM0eExUQXVNU3d3TGpFdE1DNHlMREF0TUM0eVl6QXRNQzR4TFRBdU1TMHdMakV0TUM0eUxUQXVNV010TXk0eUxEQXVNUzAyTERFdE9DNDNMRE11TVFvSkNXTXRNQzQ0TERBdU5pMHhMamtzTUM0MUxUSXVOQzB3TGpOakxUQXVOUzB3TGpndE1DNHlMVElzTUM0M0xUSXVObU0wTGpRdE15dzVMakV0TXk0MkxERTBMVFF1TkdNd0xEQXNNQzR6TERBc01DNDJMVEF1TkdNeUxUSXVOaXd6TGpVdE5DNDVMRFV1TmkwM0xqVUtDUWxqTWk0eExUSXVOaXcwTGprdE5TdzNMVFl1T1dNekxUSXVOU3cwTGprdE15NDBMRFl1T0MwMExqUmpNQzQxTFRBdU15MHdMakV0TUM0MkxUQXVNaTB3TGpaakxURXdMamd0TWkweU1TNDVMVFF1Tmkwek1pNDJMVEF1TjJNdE55NDBMREl1T0MweE1DNDJMRGd1TmkwNUxqRXNNVEl1TmdvSkNXTXhMakVzTWk0NExEUXVPQ3d6TGpJc09DNHlMREV1Tm1NeUxqZ3RNUzQwTERVdU5TMHpMallzTnk0ekxUWXVOV014TFRFdU5pd3pMakl0TUM0MExESXVNU3d5TGpOakxUTXVNU3czTGpNdE9TNHhMREV6TGpJdE1UWXVOQ3d4TXk0MFl5MDJMaklzTUM0eUxURXdMakl0TkM0MExURXdMakl0TVRBS0NRbGpNQzB4TVM0eExERXlMalF0TVRndU5Dd3lOUzR6TFRFNUxqVmpNVFV1TmkweExqTXNNekF1TkN3eUxqa3NORFV1T1N3MExqaGpNVEV1T1N3eExqUXNNak11TXl3eExqVXNNelV1TWkweExqTmpNUzQwTFRBdU15d3lMalFzTUM0MkxESXVNeXd5WXkwd0xqRXNNaTR4TFRFdU55dzBMVFV1Tml3MkxqSUtDUWxqTFRRdU5Td3lMalV0T1M0eUxETXVNaTB4TkN3ekxqSmpMVEV4TGpnc01DNHhMVEl5TGpndE5DNDFMVE0wTGpJdE4yTXdMREF1TlN3d0xqRXNNUzR4TFRBdU15d3hMalJqTFRZdU15dzBMamN0TVRJc09TNDBMVEUxTGpnc01UWmpMVEF1TVN3d0xqSXRNQzR4TERBdU15d3dMaklzTUM0ekNna0pZek11TXkwd0xqSXNOaTR6TFRBdU15dzVMalF0TUM0MVl6QXVOU3d3TERBdU5pMHdMaklzTUM0MUxUQXVObU10TUM0ekxUSXVNeXd3TGpRdE5DNDVMREl1TkMwMkxqZGpNaTR4TFRFdU9DdzBMall0TWk0eExEWXVNeTB3TGpkak1TNDVMREV1TlN3eExqZ3NOQzR5TERBdU55dzJMak1LQ1FsakxURXVNU3d5TGpFdE1pNDVMRE11TWkwMExqWXNNeTQzWXpBc01DMHdMalFzTUM0eExUQXVNeXd3TGpSak1DNHhMREF1TlN3eUxqUXNNUzQ0TERJdU5pd3lMakpqTUM0eUxEQXVNeXd3TGpFc01DNDRMVEF1TXl3eExqSmpMVEF1TWl3d0xqTXRNQzQyTERBdU5TMHhMakVzTUM0MUNna0pZeTB3TGpRc01DMHdMall0TUM0eExURXVNaTB3TGpSakxURXRNQzQyTFRJdU5DMHhMalV0TXk0eUxUSXVObU10TUM0ekxUQXVOQzB3TGpVdE1DNDBMVEV1TWkwd0xqTmpMVE11TXl3d0xqSXRPQzQyTERBdU55MHhNaTR4TERFdU1XTXRNQzQ1TERBdU1TMHhMREF1TXkweExqSXNNQzQyQ2drSll5MDFMallzT1M0ekxURXhMamNzTVRrdU15MHhPQzR6TERJMkxqRkRPVFF1T0N3NE55NDRMRGc0TGprc09Ea3VOeXc0TWk0M0xEZzVMamg2SUUweE16WXVOU3cwT0M0MFl6QXVNU3d3TGpVc01DNHpMREF1Tml3d0xqVXNNQzQxWXpFdU1TMHdMaklzTWk0ekxURXVNU3d5TGprdE1pNHhDZ2tKWXpBdU5pMHdMamtzTUM0NUxUSXVNeXd3TGpNdE1pNDRZeTB3TGpZdE1DNDFMVEV1TlMwd0xqTXRNaTR5TERBdU0wTXhNell1Tnl3ME5TNDFMREV6Tmk0ekxEUTNMaklzTVRNMkxqVXNORGd1TkV3eE16WXVOU3cwT0M0MElpOCtDand2Wno0S1BDOXpkbWMrQ2c9PSk7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi5hY2Nlc3NpYmlsaXR5LWluZm8gLmNvbnRlbnQtYnVja2V0IHAudGF4LXRhbGsge1xyXG5cdGZvbnQtc2l6ZTogMS41cmVtO1xyXG59XHJcblxyXG5cclxuXHRcdC5tYWluLWdhcmFnZS1zaG9wIGxpLmNlbGwgYSB7XHJcblx0XHQgICAgZm9udC1zaXplOiAxLjJ2dztcclxuXHRcdCAgICAgICAgcGFkZGluZzogMS4yNXZ3IDIuNXZ3O1xyXG5cdFx0fVxyXG5cclxuXHJcblx0XHQuYnV0dG9uLnNtYWxsLmFjYy1jYXJ0IGltZyB7XHJcblx0XHQgICAgd2lkdGg6NXZ3O1xyXG5cdFx0fVxyXG5cclxuXHJcbi50YWJsZS1vbi1kYXJrIHtcclxuICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbn1cclxuXHJcbi50YWJsZS1vbi1kYXJrIGxhYmVsIHtcclxuICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbn1cclxuXHJcbi50YWJsZS1vbi1kYXJrIHRoZWFkIHRoLCAudGFibGUtb24tZGFyayB0Ym9keSB0ZCB7XHJcbiAgICBwYWRkaW5nOiAwLjI1cmVtIDFyZW0gMC4yNXJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OjEuMTtcclxuICAgIGJvcmRlcjoxcHggc29saWQgJGRhcmstZ3JheTtcclxufVxyXG4udGFibGUtb24tZGFyayB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG59XHJcbi50YWJsZS1vbi1kYXJrIHRoZWFkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbn1cclxuLnRhYmxlLW9uLWRhcmsgdGhlYWQgdGgge1xyXG4gICAgYm9yZGVyOjFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICBjb2xvcjokd2hpdGVcclxufVxyXG4udGFibGUtb24tZGFyayB0aGVhZCB0aCBsYWJlbCB7XHJcbiAgICBjb2xvcjokd2hpdGVcclxufVxyXG4udGFibGUtb24tZGFyayAuY2hlY2stY29udGFpbmVyIHtcclxuICAgIG1hcmdpbjogMXJlbSAwLjVyZW0gMXJlbTtcclxuICAgIH1cclxuLnRhYmxlLW9uLWRhcmsgY2FwdGlvbiB7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi5iaWdnZXItdGV4dCBwIHtcclxuXHRmb250LXNpemU6IDEuMnJlbTtcclxuXHRsaW5lLWhlaWdodDogMS42O1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5hLmJ1dHRvbi5zcGVjaWFsbGluay5sYXJnZSB7XHJcbiAgICBwYWRkaW5nOiAxLjF2dyAydncgMS4xdnc7XHJcbiAgICBmb250LXNpemU6IDEuMnZ3O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgXHRoZWlnaHQ6IDEuMjV2dztcclxuICAgIH1cclxufVxyXG5cclxuLyogTWVkaWEgcXVlcmllcyAqL1xyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qIE1lZGl1bSBvbmx5ICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xyXG5cclxuXHJcblx0LmludHJvLXZpZGVvIHtcclxuXHRcdGhlaWdodDo4MHZoO1xyXG5cclxuXHRcdGgxIHtcclxuXHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHRcdHRvcDoxMHZoO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYuY29tbWVyY2lhbC1iYW5uZXIge1xyXG5cdFx0XHRoZWlnaHQ6NTV2dztcclxuXHJcblx0XHRcdGgxIHtcclxuXHRcdFx0XHR0b3A6NnZoO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cclxuXHJcblx0XHQmLnJlY3JlYXRpb25hbC1iYW5uZXIge1xyXG5cdFx0XHRoZWlnaHQ6NTV2dztcclxuXHJcblx0XHR9XHJcblxyXG5cclxuXHRcdCYuYWNjZXNzaWJpbGl0eS1iYW5uZXIge1xyXG5cdFx0XHRoZWlnaHQ6NTV2dztcclxuXHJcblx0XHRcdCYuZGV0YWlsLXBhZ2Uge1xyXG5cdFx0XHRcdGhlaWdodDozNXZ3O1xyXG5cdFx0XHRcdGgxIHtcclxuXHRcdFx0XHRcdHRvcDo2dmg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdCYuZmxlZXQtYmFubmVyIHtcclxuXHRcdFx0aGVpZ2h0OjU1dnc7XHJcblxyXG5cdFx0fVxyXG5cdFx0Ji5zdGFydC13aXRoLWJhbm5lciB7XHJcblx0XHRcdGgxIHtcclxuXHRcdFx0XHR0b3A6M3ZoO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHJcbiAgICAuaW50ZXJpb3ItcGFnZS5pbnRyby12aWRlbyBoMSB7XHJcblx0ICAgIHRvcDo1dmg7XHJcblx0fVxyXG5cdC5pbnRlcmlvci1wYWdlLmludHJvLXZpZGVvIC5pbnRyby1jdGEge1xyXG5cdCAgICBib3R0b206IDB2aDtcclxuXHR9XHJcblxyXG5cclxuXHQuZmxlZXQtYmFubmVyIC5iYW5uZXJfX3ZpZGVvLCAuY29tbWVyY2lhbC1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5hY2Nlc3NpYmlsaXR5LWJhbm5lciAuYmFubmVyX192aWRlbywgLnJlY3JlYXRpb25hbC1iYW5uZXIgLmJhbm5lcl9fdmlkZW8ge1xyXG5cdCAgd2lkdGg6IDEyMCU7XHJcblx0ICBoZWlnaHQ6IGF1dG87XHJcblx0fVxyXG5cclxuXHQuaW50cm8tY3RhIHtcclxuXHQgICAgYm90dG9tOiA2dmg7XHJcblx0ICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuXHRcdC5idXR0b24ge1xyXG5cdFx0ICAgIHdpZHRoOiA5MCU7XHJcblx0XHQgICAgZm9udC1zaXplOiAyLjA1M3Z3O1xyXG5cdFx0ICAgIHBhZGRpbmc6IDF2dyAwLjU0MnZ3IDAuNTI1dnc7XHJcblx0XHQgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHJcblx0XHQgICAgJjphZnRlciB7XHJcblx0XHRcdCAgICB3aWR0aDogMTAzJTtcclxuXHRcdFx0ICAgIGhlaWdodDogMC40dnc7XHJcblx0XHRcdCAgICBib3R0b206IC0xLjV2dztcclxuXHRcdFx0ICAgIGxlZnQ6IC0wLjZ2dztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHQuYWNjb3JkaW9uLXRpdGxlIHtcclxuXHQgICAgZm9udC1zaXplOiAyLjgyM3Z3O1xyXG5cclxuXHQgICAgJjphZnRlciB7XHJcblx0XHQgICAgd2lkdGg6IDMuMjExdnc7XHJcblx0XHQgICAgaGVpZ2h0OiAyLjR2dztcclxuXHRcdCAgICBtYXJnaW4tbGVmdDogMnJlbTtcclxuXHRcdCAgICB0b3A6IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHJcblx0LnByb21vdGlvbmFsLXNlY3Rpb24ge1xyXG5cdCAgICBwYWRkaW5nOiAxcmVtIDAgMDtcclxuXHR9XHJcblx0LnByb21vLXJvdyB7XHJcblx0ICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xyXG5cclxuXHQgICAgXHJcblx0fVxyXG5cdC5wcm9tb19fYmFja2dyb3VuZCB7XHJcblx0ICAgIG1pbi13aWR0aDogMTA1JTtcclxuXHR9XHJcblxyXG5cdFxyXG5cclxuXHRcdC5tZWdhLWZvb3RlciB7XHJcblx0XHQgICAgcGFkZGluZzogMXJlbTtcclxuXHRcdH1cclxuXHJcblxyXG5cdC5rZWVwLXVwZGF0ZWQgLmJhY2tncm91bmQtaW1nIC5wcm9tb19fYmFja2dyb3VuZCB7XHJcbiAgICBcdG1pbi13aWR0aDogMTMwJTtcclxuXHR9XHJcblxyXG5cdC5zZWNvbmRhcnktY3RhLXNlY3Rpb24gLnByb21vX19iYWNrZ3JvdW5kIHtcclxuXHQgICAgbWluLXdpZHRoOiAyMDAlO1xyXG5cdCAgICBsZWZ0OiA5MCU7XHJcblx0fVxyXG5cdC5zZWNvbmRhcnktY3RhLXNlY3Rpb24gLnByb21vX19iYWNrZ3JvdW5kMiB7XHJcblx0ICAgIG1pbi13aWR0aDogMjAwJTtcclxuXHQgICAgbGVmdDogNTAlO1xyXG5cdH1cclxuXHQudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLXRpdGxlIHtcclxuXHQgICAgd2lkdGg6IDMzJTtcclxuXHJcblx0ICAgID4gYSB7XHJcblx0XHQgICAgZm9udC1zaXplOiAydnc7XHJcbiAgICBcdFx0cGFkZGluZzogMS4yNXJlbSAwLjV2dztcclxuXHRcdH1cclxuXHR9XHJcblx0LnVwZml0LW9wdGlvbnMtc2VjdGlvbiBoNCB7XHJcblx0ICAgIG1hcmdpbjogMDtcclxuXHQgICAgcGFkZGluZzogMS41dncgMDtcclxuXHQgICAgZm9udC1zaXplOiAxLjVyZW07XHJcblx0fVxyXG5cdC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYnMtY29udGVudCBwIHtcclxuXHQgICAgZm9udC1zaXplOiAxLjc1dnc7XHJcblx0fVxyXG5cclxuXHQucmVmZXJlbmNlLWd1aWRlcyBoMSB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuXHQgICAgc3BhbiB7XHJcblx0ICAgIFx0Zm9udC1zaXplOiAxcmVtO1xyXG5cdCAgICB9XHJcblx0fVxyXG5cclxuXHQucmVmZXJlbmNlLWd1aWRlcyBoMiB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgfVxyXG4gICAgLnJlZmVyZW5jZS1ndWlkZXMgaDMge1xyXG4gICAgXHRmb250LXNpemU6IDFyZW07XHJcbiAgICB9XHJcbiAgICAuZG93bmxvYWQtY3RhIHtcclxuXHQgICAgZm9udC1zaXplOiAxcmVtO1xyXG5cdH1cclxuICAgIC5jb250YWN0LWluZm8gLmluZm8taG9sZGVyIGR0IHtcclxuICAgIFx0Zm9udC1zaXplOiAxcmVtO1xyXG5cdH1cclxuXHQuY29udGFjdC1pbmZvIC5pbmZvLWhvbGRlciBkZCB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuXHR9XHJcblx0LmNvbnRhY3QtaW5mbyAuaW5mby1ob2xkZXIgcCB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuXHR9XHJcblxyXG5cclxuXHJcblx0c2VjdGlvbi5jb250YWN0LXVzIHtcclxuXHJcblx0XHQuY2hlY2ttYXJrIHtcclxuXHQgICAgXHR0b3A6IDZweDtcclxuXHQgICAgfVxyXG5cdCAgICAucmFkaW8tY29udGFpbmVyIHtcclxuXHQgICAgXHRwYWRkaW5nLWxlZnQ6IDUuMnZ3O1xyXG5cdCAgICB9XHJcblx0ICAgIC5yYWRpbyB7XHJcblx0XHQgICAgaGVpZ2h0OiAzLjV2dztcclxuXHRcdCAgICB3aWR0aDogMy41dnc7XHJcblx0ICAgIH1cclxuXHQgICAgLnJhZGlvLWNvbnRhaW5lciAucmFkaW86YWZ0ZXIge1xyXG5cdFx0ICAgIHdpZHRoOiAzLjR2dztcclxuXHRcdCAgICBoZWlnaHQ6IDMuNHZ3O1xyXG5cdFx0ICAgIH1cclxuXHJcblxyXG5cdCBcdGgyIHtcclxuXHQgXHRcdGZvbnQtc2l6ZTogMS4yNXJlbTtcclxuXHQgXHR9XHJcblxyXG5cdCBcdC5yYWRpby1ncm91cCB7XHJcblx0IFx0XHRwYWRkaW5nOiAycmVtIDAgNHJlbTtcclxuXHJcblx0IFx0XHRsYWJlbCB7XHJcblx0IFx0XHRcdGZvbnQtc2l6ZTogMS41cmVtO1xyXG5cdCBcdFx0fVxyXG5cdCBcdFx0LnJhZGlvIHtcclxuXHQgXHRcdFx0dG9wOiA3cHg7XHJcblx0IFx0XHRcdGhlaWdodDogM3Z3O1xyXG4gICAgXHRcdFx0d2lkdGg6IDN2dztcclxuXHQgXHRcdH1cclxuXHQgXHR9XHJcblx0fVxyXG5cdC5wcm9ncmFtLXN0ZXBzIHtcclxuXHRcdG1hcmdpbjogMnJlbSAwO1xyXG5cclxuXHRcdGR0IHtcclxuXHQgIFx0XHRwYWRkaW5nOiAwLjVyZW0gMCAwLjVlbTtcclxuXHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0ICAgIGxlZnQ6IC0xcmVtO1xyXG5cdFx0XHQgICAgdG9wOiAwO1xyXG5cdFx0XHQgICAgaGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHQgICAgd2lkdGg6IDJyZW07XHJcblx0XHRcdH1cclxuXHRcdFx0JjphZnRlciB7XHJcblx0XHRcdCAgICByaWdodDogLTFyZW07XHJcblx0XHRcdCAgICB0b3A6IDA7XHJcblx0XHRcdCAgICBoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdCAgICB3aWR0aDogMnJlbTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0ZGQge1xyXG5cdCAgXHRcdHBhZGRpbmc6IDFyZW0gMCAxcmVtIDJyZW07XHJcblx0ICBcdFx0bWFyZ2luLXRvcDogLTVweDtcclxuXHQgIFx0XHRmb250LXNpemU6MnZ3O1xyXG5cclxuXHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHQgICAgcmlnaHQ6IDAuNXJlbTtcclxuXHRcdFx0ICAgIHRvcDogLTMzJTtcclxuXHRcdFx0ICAgIGhlaWdodDogNjYlO1xyXG5cdFx0XHQgICAgd2lkdGg6IDAuNXJlbTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0ICAgIHJpZ2h0OiAwLjVyZW07XHJcblx0XHRcdCAgICB0b3A6IDMzJTtcclxuXHRcdFx0ICAgIGhlaWdodDogNjYlO1xyXG5cdFx0XHQgICAgd2lkdGg6IDAuNXJlbTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmluLXBhZ2UtanVtcCBhOmFmdGVyIHtcclxuXHQgICAgdG9wOiAwLjV2dztcclxuXHQgICAgd2lkdGg6IDIuNXZ3O1xyXG5cdCAgICBoZWlnaHQ6IDIuNXZ3O1xyXG5cdCAgICBtYXJnaW4tbGVmdDogMXZ3O1xyXG5cdH1cclxuXHJcblx0LmZpbHRlci1jb2x1bW4gI2ZpbHRlci1idXR0b24ge1xyXG4gICAgXHRmb250LXNpemU6IDAuOHZ3O1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG5cdFx0LmFubm91bmNlIHtcclxuXHRcdFx0Zm9udC1zaXplOiAxLjVyZW07XHJcblx0XHR9XHJcblx0XHQuZW5yb2xsLXJlYXNvbnMgaDMge1xyXG5cdFx0XHRmb250LXNpemU6IDIuNXJlbTtcclxuXHRcdH1cclxuXHRcdC5hbm5vdW5jZS1tdWcge1xyXG5cdFx0XHRmb250LXNpemU6ICAycmVtO1xyXG5cdFx0XHRsaW5lLWhlaWdodDoxLjM7XHJcblx0XHR9XHJcblxyXG4ubGFuZGluZyBsZWdlbmQge1xyXG4gICAgZm9udC1zaXplOiAyLjJ2dztcclxufVxyXG5cclxuXHJcbn1cclxuXHJcblxyXG5cclxuLyogU21hbGwgb25seSAqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcclxuICAgIC5tb3RvcmhvbWUtaGVhZC1pbmZvIHtcclxuICAgICAgICAgY29sb3I6ICMwYzEyMTg7XHJcbiAgICAgICAgIGZvbnQtc2l6ZTogMy44dnchaW1wb3J0YW50O1xyXG4gICAgICAgICBwYWRkaW5nOiA0LjV2dztcclxuICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cdC5zdGlja3ktY29udGFpbmVyIHtcclxuXHRcdHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBsaW5lYXI7XHJcblx0fVxyXG5cdC5tb2JpbGUtaGVhZGVyLWxvZ28ge1xyXG5cdFx0dHJhbnNpdGlvbjogd2lkdGggNTAwbXMgbGluZWFyO1xyXG5cdFx0d2lkdGg6NjV2dztcclxuXHRcdG1heC13aWR0aDogMzQ3cHg7XHJcblx0fVxyXG5cdC5pcy1zdHVjayAubW9iaWxlLWhlYWRlci1sb2dvIHtcclxuXHRcdHdpZHRoOjQwdnc7XHJcblx0fVxyXG5cdC5uYXYtZGlzZ3Vpc2Uge1xyXG5cdFx0b3ZlcmZsb3c6aGlkZGVuO1xyXG5cdH1cclxuXHJcblx0bGkuYWRtaW4tbG9naW4ge1xyXG5cdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ICAgIHRvcDogMDtcclxuXHQgICAgcmlnaHQ6IDA7XHJcblx0fVxyXG5cclxuXHRpbWcuYWRtaW4taWNvbiB7XHJcblx0ICAgIHdpZHRoOiA3dnc7XHJcblx0ICAgIG1hcmdpbi10b3A6IC0wLjV2dztcclxuXHR9XHJcblxyXG5cclxuXHQuaW50cm8tdmlkZW8uYmFubmVyIHtcclxuXHQgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpIHVybCguLi9pbWcvdmlkZW8tYmFja2dyb3VuZC5qcGcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG5cdCAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHR9XHJcblxyXG4ubGFuZGluZyBsZWdlbmQge1xyXG4gICAgZm9udC1zaXplOiAzLjJ2dztcclxufVxyXG5cclxuXHQuY2hvc2VuLXZlaGljbGUge1xyXG5cdCAgICBwYWRkaW5nOiA2dnc7XHJcblx0fVxyXG5cclxuLmludHJvLXZpZGVvIHtcclxuXHRoZWlnaHQ6ODB2aDtcclxuXHJcblx0aDEge1xyXG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHR0b3A6MTB2aDtcclxuXHR9XHJcblxyXG5cdCYuY29tbWVyY2lhbC1iYW5uZXIge1xyXG5cdFx0aGVpZ2h0OjUzdnc7XHJcblxyXG5cdFx0aDEge1xyXG5cdFx0XHR0b3A6NnZoO1xyXG5cdFx0fVxyXG5cclxuXHR9XHJcblxyXG5cclxuXHQmLnJlY3JlYXRpb25hbC1iYW5uZXIge1xyXG5cdFx0aGVpZ2h0Ojkwdnc7XHJcblxyXG5cdH1cclxuXHJcblxyXG5cdCYuYWNjZXNzaWJpbGl0eS1iYW5uZXIge1xyXG5cdFx0aGVpZ2h0Ojkwdnc7XHJcblxyXG5cdFx0Ji5kZXRhaWwtcGFnZSB7XHJcblx0XHRcdGhlaWdodDo0OXZ3O1xyXG5cdFx0XHRoMSB7XHJcblx0XHRcdFx0dG9wOjZ2aDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblxyXG5cdCYuZmxlZXQtYmFubmVyIHtcclxuXHRcdGhlaWdodDo5MHZ3O1xyXG5cclxuXHR9XHJcblx0Ji5zdGFydC13aXRoLWJhbm5lciB7XHJcblx0XHRoMSB7XHJcblx0XHRcdHRvcDowdmg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLmZsZWV0LWJhbm5lciAuYmFubmVyX192aWRlbywgLmNvbW1lcmNpYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvLCAuYWNjZXNzaWJpbGl0eS1iYW5uZXIgLmJhbm5lcl9fdmlkZW8sIC5yZWNyZWF0aW9uYWwtYmFubmVyIC5iYW5uZXJfX3ZpZGVvIHtcclxuICB3aWR0aDogMTY4JTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcblxyXG4uZmxlZXQtYmFubmVyIC5iYW5uZXJfX3ZpZGVvIHtcclxuICB3aWR0aDogMjAwJTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAyMDAlO1xyXG59XHJcbi5hbGwtaW5jZW50aXZlLXZpZGVvIHtcclxuICAgIGhlaWdodDogNTIuNXZ3O1xyXG59XHJcblxyXG5cdC50b3AtYmFyIC5tZW51IGxpIHtcclxuXHQgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNmZmZmZmY7XHJcblx0ICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0ICAgIG1hcmdpbjogMCAxdnc7XHJcblx0ICAgIGZvbnQtc2l6ZTogNi4yNnZ3O1xyXG5cdH1cclxuXHRuYXYgLm1lbnUgYSwgbmF2IC5tZW51IC5idXR0b24ge1xyXG5cdCAgICBwYWRkaW5nOiAxLjd2dyAxdnc7XHJcblx0fVxyXG5cdC50aXRsZS1iYXItdGl0bGUge1xyXG5cdCAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuXHR9XHJcblxyXG5cdC5mb290ZXItbG9nbyBpbWcge1xyXG5cdCAgICB3aWR0aDogNDB2dztcclxuXHR9XHJcblx0XHJcblx0aDEge1xyXG5cdCAgICBmb250LXNpemU6IDguMjEwNXZ3O1xyXG5cdCAgICBsaW5lLWhlaWdodDogMC43O1xyXG5cdCAgICBwYWRkaW5nOjR2dyA0dnc7XHJcblxyXG5cdCAgICBzcGFuIHtcclxuXHRcdCAgICBmb250LXNpemU6IDQuNTc4OXZ3O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRoMiB7XHJcbiAgICBcdGZvbnQtc2l6ZTogNC4ydnc7XHJcblx0fVxyXG5cdGgzIHtcclxuXHQgICAgZm9udC1zaXplOiA2LjV2dztcclxuXHR9XHJcblx0aDQge1xyXG5cdCAgICBmb250LXNpemU6IDYuMXZ3O1xyXG5cdCAgICBsaW5lLWhlaWdodDogMS4xO1xyXG5cdCAgICBtYXJnaW46IDYuNjh2dyAwIDAgMy4xdnc7XHJcblx0ICAgIHBhZGRpbmc6IDEuMXZ3O1xyXG5cdH1cclxuXHQucmVjcmVhdGlvbmFsLXRpbGUgaDQ6YmVmb3JlIHtcclxuXHQgICAgdG9wOiAtNS43NXZ3O1xyXG5cdCAgICB3aWR0aDogMjN2dztcclxuXHQgICAgaGVpZ2h0OiA2dnc7XHJcblx0fVxyXG5cclxuXHJcblx0LmludHJvLWN0YSAuYnV0dG9uIHtcclxuXHQgICAgd2lkdGg6IDkwJTtcclxuXHQgICAgZm9udC1zaXplOiA0LjA1M3Z3O1xyXG5cdCAgICBwYWRkaW5nOiAydncgMC41NDJ2dyAxLjUyNXZ3O1xyXG5cclxuXHQgICAgJjphZnRlciB7XHJcblx0XHRcdHdpZHRoOiAxMDEuNCU7XHJcblx0XHQgICAgaGVpZ2h0OiAwLjh2dztcclxuXHRcdCAgICBib3R0b206IC0zLjV2dztcclxuXHRcdCAgICBsZWZ0OiAtMC42dnc7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHJcblx0LmFjY29yZGlvbi10aXRsZSB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMy44MjN2dztcclxuXHJcblx0ICAgICY6YWZ0ZXIge1xyXG5cdFx0ICAgIHdpZHRoOiAzLjV2dyAhaW1wb3J0YW50O1xyXG4gICAgXHRcdGhlaWdodDogMy40dncgIWltcG9ydGFudDtcclxuXHRcdCAgICBtYXJnaW4tbGVmdDogMXJlbTtcclxuXHRcdCAgICB0b3A6IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cdC50YWJzLXRpdGxlIHtcclxuXHQgICAgcGFkZGluZzogMC41cmVtO1xyXG5cdH1cclxuXHQudGFicy10aXRsZSA+IGEge1xyXG5cdCAgICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XHJcblx0ICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuXHR9XHJcblxyXG5cdC5rZWVwLXVwZGF0ZWQgbGFiZWwsIC5pbnRyby1jdGEgbGFiZWwge1xyXG5cdCAgICBmb250LXNpemU6IDIuNHZ3O1xyXG5cdH1cclxuXHQua2VlcC11cGRhdGVkIGxlZ2VuZCB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMy41dnc7XHJcblx0fVxyXG5cdC5jaGVja21hcmsge1xyXG5cdCAgICB0b3A6IDA7XHJcblx0ICAgIGxlZnQ6IDA7XHJcblx0ICAgIGhlaWdodDogMy41dnc7XHJcblx0ICAgIHdpZHRoOiAzLjV2dztcclxuXHR9XHJcblx0LmNoZWNrLWNvbnRhaW5lciB7XHJcblx0ICAgIHBhZGRpbmctbGVmdDogNS4ydnc7XHJcblx0fVxyXG5cdC5jaGVjay1jb250YWluZXIgLmNoZWNrbWFyazphZnRlciB7XHJcblx0ICAgIGxlZnQ6IDF2dztcclxuXHQgICAgd2lkdGg6IDEuMnZ3O1xyXG5cdCAgICBoZWlnaHQ6IDIuNnZ3O1xyXG5cdH1cclxuXHJcblx0c2VjdGlvbjpub3QoLmJhbm5lcikgLmJ1dHRvbi5sYXJnZSwgc2VjdGlvbi5iYW5uZXIgLnNwZWNpYWwtaG9tZS1hbm5vdW5jZSAuYnV0dG9uLmxhcmdlIHtcclxuXHQgICAgcGFkZGluZzogMi4zdncgNHZ3IDIuNXZ3O1xyXG5cdCAgICBmb250LXNpemU6IDMuOHZ3O1xyXG5cclxuXHQgICAgJjphZnRlciB7XHJcblx0XHQgICAgd2lkdGg6IDJ2dztcclxuXHRcdCAgICBoZWlnaHQ6IDR2dztcclxuXHRcdCAgICBsZWZ0OiAydnc7XHJcblx0XHQgICAgdG9wOiAwLjZ2dztcclxuXHRcdH1cclxuXHRcdCYuZG93bmxvYWQ6YWZ0ZXIge1xyXG5cdFx0ICAgIHdpZHRoOiA0dnc7XHJcblx0XHR9XHJcblx0fVxyXG5cdHNlY3Rpb246bm90KC5iYW5uZXIpIGlucHV0LmJ1dHRvbi5sYXJnZSwgaW5wdXQuYnV0dG9uLmxhcmdlIHtcclxuXHQgICAgYmFja2dyb3VuZC1zaXplOiAydncgNHZ3O1xyXG5cdCAgICBwYWRkaW5nOiAyLjV2dyA3dncgMi41dncgNHZ3O1xyXG5cdH1cclxuXHJcblx0LmxvY2F0ZS11cGZpdHRlciBwIHtcclxuXHQgICAgZm9udC1zaXplOiAzLjV2dztcclxuXHR9XHJcblx0LnNlYXJjaC11cGZpdHMge1xyXG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblx0ICAgIGhlaWdodDogaW5oZXJpdDtcclxuXHQgICAgaGVpZ2h0OiAyNXZoO1xyXG5cdH1cclxuXHQucHJvbW8tcm93IHtcclxuXHQgICAgcGFkZGluZy1ib3R0b206IDA7XHJcblx0fVxyXG5cclxuXHQucHJvbW8tdGlsZSB7XHJcblx0ICAgIGhlaWdodDogNTR2dztcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHR9XHJcblx0Lm1lZGl1bS0zLnByb21vLXRpbGUge1xyXG5cdCAgICBoZWlnaHQ6IDEwOHZ3O1xyXG5cdH1cclxuXHJcblx0LnByb21vLXRpbGUyIHtcclxuXHQgICAgaGVpZ2h0OiA0NXZ3O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cdH1cclxuXHQuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcclxuXHQgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xyXG5cdCAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xyXG5cdCAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxuXHR9XHJcblxyXG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTYge1xyXG5cdCAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XHJcblx0ICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xyXG5cdH1cclxuXHQuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XHJcblx0ICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcclxuXHQgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XHJcblx0fVxyXG5cclxuXHQucHJvbW8tY3RhIHtcclxuXHQgICAgcGFkZGluZzogMC4xdncgMnZ3IDAuM3Z3IDA7XHJcblx0ICAgIHJpZ2h0OiAwO1xyXG5cdCAgICBmb250LXNpemU6IDMuMnZ3O1xyXG5cclxuXHQgICAgc3BhbjphZnRlciB7XHJcblx0XHQgICAgdG9wOiAxLjV2dztcclxuXHRcdCAgICB3aWR0aDogNXZ3O1xyXG5cdFx0ICAgIGhlaWdodDogNXZ3O1xyXG5cdFx0ICAgIG1hcmdpbi1sZWZ0OiAzdnc7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQubWVnYS1mb290ZXIgdWwudmVydGljYWwubWVudSB7XHJcblx0ICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XHJcblx0fVxyXG5cdC5jb3B5cmlnaHQgLm1lbnUgbGkge1xyXG5cdCAgICB3aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cclxuXHQuYnV0dG9uLnBsYXktcGF1c2Uge1xyXG5cdFx0XHQgICAgd2lkdGg6IDl2dztcclxuXHRcdFx0ICAgIGhlaWdodDogOXZ3O1xyXG5cdFx0XHQgICAgdG9wOjAuNHZ3O1xyXG5cdFx0XHQgICAgcmlnaHQ6MC40dnc7XHJcblx0XHRcdCAgICB9XHJcblxyXG4gICAgLmludGVyaW9yLXBhZ2UuaW50cm8tdmlkZW8gaDEge1xyXG5cdCAgICB0b3A6M3ZoO1xyXG5cdH1cclxuXHQuaW50cm8tdmlkZW8gLmludHJvLWN0YSB7XHJcblx0ICAgIGJvdHRvbTogMHZoO1xyXG5cdH1cclxuXHJcbiAgICAuaW50ZXJpb3ItcGFnZSBoMSB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNC4yMTA1dnc7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiAxdnc7XHJcblx0fVxyXG5cdC5iYW5uZXItdGFnIGgyIHtcclxuXHQgICAgZm9udC1zaXplOiA0LjV2dztcclxuXHR9XHJcblx0LmludHJvLXZpZGVvLmNvbW1lcmNpYWwtYmFubmVyID4gLmNlbGwge1xyXG5cdCAgICBiYWNrZ3JvdW5kLXNpemU6IDEuNXZ3IDg1JTtcclxuXHR9XHJcblxyXG5cdC51cGZpdC1vcHRpb25zLXNlY3Rpb24gLnRhYnMtdGl0bGUge1xyXG5cdCAgICB3aWR0aDogNDglICFpbXBvcnRhbnQ7IFxyXG5cdCAgICA+IGEge1xyXG5cdFx0ICAgIGZvbnQtc2l6ZTogMi41dnc7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5iZXN0LWluLWNsYXNzIGxpLmJpYy1lbGVtZW50IHtcclxuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdCAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XHJcblx0ICAgIHBhZGRpbmc6IDFyZW0gMnZ3O1xyXG5cdCAgICBjb2xvcjogI2ZmZmZmZjtcclxuXHQgICAgZm9udC1zaXplOiA0dnc7XHJcbiAgICBcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHQuZXF1YXRpb24gLmVxLWVsZW1lbnQge1xyXG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgIHdpZHRoOiBhdXRvO1xyXG5cdCAgICBmb250LXNpemU6IDJ2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDI7XHJcblxyXG5cdCAgICBzcGFuIHtcclxuXHRcdCAgICBkaXNwbGF5OiBibG9jaztcclxuXHRcdCAgICBmb250LXNpemU6IDZ2dztcclxuXHRcdCAgICBsaW5lLWhlaWdodDogMTtcclxuXHRcdH1cclxuXHR9XHJcblx0LmdhcmFnZS1jdGEgcCB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNC4zdnc7XHJcblx0ICAgIHBhZGRpbmc6IDFyZW0gNHZ3IDA7XHJcblx0fVxyXG5cdC5kZWFsZXItZm9ybS1yZXNwb25zZSB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNXZ3O1xyXG5cdCAgICBwYWRkaW5nOiA2dncgMDtcclxuXHR9XHJcblx0LmdhcmFnZSAuc2VuZC10by1kZWFsZXIgLmRlYWxlci1zZWFyY2gtY2FsbCAuY2hlY2ttYXJrIHtcclxuXHQgICAgaGVpZ2h0OiA1LjV2dztcclxuXHQgICAgd2lkdGg6IDUuNXZ3O1xyXG5cdH1cclxuXHQuZ2FyYWdlIC5zZW5kLXRvLWRlYWxlciAuZGVhbGVyLXNlYXJjaC1jYWxsIC5jaGVjay1jb250YWluZXIgLmNoZWNrbWFyazphZnRlciB7XHJcblx0ICAgIGxlZnQ6IDEuNHZ3O1xyXG5cdCAgICB3aWR0aDogMi42dnc7XHJcblx0ICAgIGhlaWdodDogNC4ydnc7XHJcblx0fVxyXG5cdC5jYWxscy10by1hY3Rpb24ge1xyXG5cdCAgICBwYWRkaW5nOiAxcmVtIDA7XHJcblx0fVxyXG5cdC5zZWNvbmRhcnktY3RhLXNlY3Rpb24gLnByb21vX19iYWNrZ3JvdW5kIHtcclxuXHQgICAgbWluLXdpZHRoOiAzNTAlO1xyXG5cdCAgICBsZWZ0OiAxMDAlO1xyXG5cdH1cclxuXHQuc2Vjb25kYXJ5LWN0YS1zZWN0aW9uIC5wcm9tb19fYmFja2dyb3VuZDIge1xyXG5cdCAgICBtaW4td2lkdGg6IDM1MCU7XHJcblx0ICAgIGxlZnQ6IDUwJTtcclxuXHR9XHJcblx0LnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFicy1jb250ZW50IC51cGZpdC1zbGljZSB7XHJcblx0ICAgIGJvcmRlci13aWR0aDowO1xyXG5cdH1cclxuXHQudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xyXG5cdCAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHR9XHJcblx0LnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFiLWdhbGxlcnktaGVybyB7XHJcblx0XHRkaXNwbGF5Om5vbmU7XHJcblx0ICAgIGNvbG9yOiAjZmZmO1xyXG5cdCAgICBoZWlnaHQ6IDQ1dnc7XHJcblx0ICAgIG1hcmdpbjogMCAtMXJlbTtcclxuXHQgICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICNmYWI0MTg7XHJcblx0fVxyXG5cclxuXHQudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC5jb250ZW50LWJ1Y2tldCB7XHJcblx0ICAgIHBhZGRpbmc6IDFyZW0gMCAwO1xyXG5cdH1cclxuXHQudXBmaXQtb3B0aW9ucy1zZWN0aW9uIC50YWItZ2FsbGVyeS1oZXJvIHAge1xyXG5cdCAgICBmb250LXNpemU6IDEuNXJlbTtcclxuXHQgICAgcGFkZGluZzogMXZ3IDV2dztcclxuXHR9XHJcblx0LnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFiLWdhbGxlcnktaGVybyBwOmJlZm9yZSB7XHJcblx0ICAgIHdpZHRoOiA0dnc7XHJcblx0ICAgIGhlaWdodDogNC44NTJ2dztcclxuXHQgICAgbWFyZ2luLWxlZnQ6IC00LjF2dztcclxuXHQgICAgdG9wOiAwLjR2dztcclxuXHR9XHJcblx0LnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFiLWdhbGxlcnktaGVybyAuZ2FsbGVyeS1jdGEge1xyXG5cdCAgICBwYWRkaW5nOiAwLjF2dyAxdncgMC4zdncgMDtcclxuXHQgICAgZm9udC1zaXplOiAyLjJ2dztcclxuXHR9XHJcblx0LnVwZml0LW9wdGlvbnMtc2VjdGlvbiAudGFicy1jb250ZW50IHAge1xyXG5cdCAgICBmb250LXNpemU6IDFyZW07XHJcblx0fVxyXG5cclxuXHRwLmNvbW1lcmNpYWwtY3VwIHtcclxuXHRcdGRpc3BsYXk6bm9uZTtcclxuXHQgICAgZm9udC1zaXplOiA0dnc7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0ICAgIHRvcDogMzB2aDtcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDR2dztcclxuXHQgICAgaW1nIHtcclxuXHQgICAgXHR0b3A6IC0xNXZoO1xyXG5cdFx0ICAgIGxlZnQ6IDExdnc7XHJcblx0XHQgICAgd2lkdGg6IDE0dnc7XHJcblx0ICAgIH1cclxuXHR9XHJcblxyXG5cdC5yZWZlcmVuY2UtZ3VpZGVzIGgxIHtcclxuXHQgICAgZm9udC1zaXplOiAycmVtO1xyXG5cdCAgICBzcGFuIHtcclxuXHQgICAgZm9udC1zaXplOiAxLjJyZW07XHJcblx0ICAgIH1cclxuXHR9XHJcblx0LnJlZmVyZW5jZS1ndWlkZXMgaDIge1xyXG5cdCAgICBmb250LXNpemU6IDEuNXJlbTtcclxuXHR9XHJcblx0LnJlZmVyZW5jZS1ndWlkZXMgaDMge1xyXG5cdCAgICBmb250LXNpemU6IDFyZW07XHJcblx0fVxyXG5cdC5kb3dubG9hZC1jdGEge1xyXG5cdCAgICBmb250LXNpemU6IDMuMnZ3O1xyXG5cdCAgICBzcGFuIHtcclxuXHRcdCAgICBsaW5lLWhlaWdodDogMThweDtcclxuXHRcdCAgICAmOmFmdGVyIHtcclxuXHRcdFx0ICAgIHRvcDogMHZ3O1xyXG5cdFx0XHQgICAgd2lkdGg6IDR2dztcclxuXHRcdFx0ICAgIGhlaWdodDogMnZ3O1xyXG5cdFx0XHQgICAgbWFyZ2luLWxlZnQ6IDJ2dztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQub2Zmc2l0ZS1jdGEge1xyXG5cdCAgICBmb250LXNpemU6IDMuMnZ3O1xyXG5cdCAgICBzcGFuIHtcclxuXHRcdCAgICBsaW5lLWhlaWdodDogMThweDtcclxuXHRcdCAgICAmOmFmdGVyIHtcclxuXHRcdFx0ICAgIHRvcDogMDtcclxuXHRcdFx0ICAgIHdpZHRoOiAzdnc7XHJcblx0XHRcdCAgICBoZWlnaHQ6IDN2dztcclxuXHRcdFx0ICAgIG1hcmdpbi1sZWZ0OiAydnc7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5hbGwtZXF1YXRpb24gLmVxLWVsZW1lbnQge1xyXG5cdCAgICBmb250LXNpemU6IDJ2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuXHR9XHJcblx0LmFsbC1lcXVhdGlvbiAuZXEtZWxlbWVudCBzcGFuIHtcclxuXHQgICAgZm9udC1zaXplOiA0LjV2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDE7XHJcblx0fVxyXG5cdC5hbGwtZXF1YXRpb24gLmVxLW9wZXJhdG9yOmFmdGVyIHtcclxuXHQgICAgZm9udC1zaXplOiAzLjV2dztcclxuXHQgICAgdG9wOiAtMy41dnc7XHJcblx0fVxyXG5cdC5hbGwtZXF1YXRpb24gLmVxLW9wZXJhdG9yLm9yOmFmdGVyIHtcclxuXHQgICAgZm9udC1zaXplOiAyLjI1dnc7XHJcblx0ICAgIHRvcDogLTMuNzV2dztcclxuXHR9XHJcblx0LmFsbC1pbmNlbnRpdmUtbWF0aCBoMyB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMy4yNXZ3O1xyXG5cdH1cclxuXHJcblxyXG5cdHNlY3Rpb24uY29udGFjdC11cyB7XHJcblxyXG5cdFx0LmNoZWNrbWFyayB7XHJcblx0ICAgIFx0dG9wOiA2cHg7XHJcblx0ICAgIH1cclxuXHQgICAgLnJhZGlvLWNvbnRhaW5lciB7XHJcblx0ICAgIFx0cGFkZGluZy1sZWZ0OiAxMC4ydnc7XHJcblx0ICAgIH1cclxuXHQgICAgLnJhZGlvIHtcclxuXHRcdCAgICBoZWlnaHQ6IDYuNXZ3O1xyXG5cdFx0ICAgIHdpZHRoOiA2LjV2dztcclxuXHQgICAgfVxyXG5cdCAgICAucmFkaW8tY29udGFpbmVyIC5yYWRpbzphZnRlciB7XHJcblx0XHQgICAgd2lkdGg6IDYuNHZ3O1xyXG5cdFx0ICAgIGhlaWdodDogNi40dnc7XHJcblx0XHQgICAgfVxyXG5cclxuXHRcdGgxIHtcclxuXHRcdCAgICBmb250LXNpemU6IDYuMjEwNXZ3O1xyXG5cdFx0fVxyXG5cclxuXHJcblx0IFx0aDIge1xyXG5cdCBcdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xyXG5cdCBcdH1cclxuXHJcblx0IFx0LnJhZGlvLWdyb3VwIHtcclxuXHQgXHRcdHBhZGRpbmc6IDJyZW0gMCA0cmVtO1xyXG5cclxuXHQgXHRcdGxhYmVsIHtcclxuXHQgXHRcdFx0Zm9udC1zaXplOiAxLjVyZW07XHJcblx0IFx0XHR9XHJcblx0IFx0XHQucmFkaW8ge1xyXG5cdCBcdFx0XHR0b3A6IDE0cHg7XHJcblx0IFx0XHRcdGhlaWdodDogNnZ3O1xyXG4gICAgXHRcdFx0d2lkdGg6IDZ2dztcclxuXHQgXHRcdH1cclxuXHQgXHR9XHJcblx0fVxyXG5cdCBcdC5hY2Nlc3NpYmlsaXR5LWluZm8gLnRhYnMtdGl0bGUge1xyXG5cdFx0ICAgIHdpZHRoOiA0OCU7XHJcblx0XHQgICAgYSB7XHJcblx0XHQgICAgXHRmb250LXNpemU6NHZ3O1xyXG5cdFx0ICAgIH1cclxuXHRcdH1cclxuXHJcblx0c2VjdGlvbi5jb250YWN0LXVzIC5jb250YWN0LXJlc3VsdHMgLmludHJvLWN0YSB7XHJcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQgICAgYm90dG9tOiBhdXRvO1xyXG5cdCAgICB3aWR0aDogYXV0bztcclxuXHQgICAgbWF4LXdpZHRoOiBjYWxjKDEwMHJlbSAtIDEuMjVyZW0pO1xyXG5cdH1cclxuXHRzZWN0aW9uLmNvbnRhY3QtdXMgLmNvbnRhY3QtcmVzdWx0cyB7XHJcblx0ICAgIGhlaWdodDogYXV0bztcclxuXHR9XHJcblx0LnJlaW1idXJzZW1lbnQtc3RlcHMge1xyXG5cdFx0LnByb21vX19iYWNrZ3JvdW5kIHtcclxuXHRcdCAgICBtaW4td2lkdGg6IDEwMCUhaW1wb3J0YW50O1xyXG5cdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdCAgICB0b3A6IDA7XHJcblx0XHQgICAgbGVmdDogMDtcclxuXHRcdCAgICB3aWR0aDogYXV0bztcclxuXHRcdCAgICBtaW4td2lkdGg6IDEwMSU7XHJcblx0XHQgICAgaGVpZ2h0OiBhdXRvO1xyXG5cdFx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuXHRcdCAgICB6LWluZGV4OiAxO1xyXG5cdFx0fVxyXG5cdH0gXHJcblx0LnByb2dyYW0tc3RlcHMgZGQge1xyXG5cdCAgICBwYWRkaW5nOiAxcmVtIDAgMXJlbSAycmVtO1xyXG5cdCAgICBtYXJnaW4tdG9wOiAtNXB4O1xyXG5cdCAgICBmb250LXNpemU6IDQuNXZ3O1xyXG5cdH1cclxuXHJcblx0LmluLXBhZ2UtanVtcCBhOmFmdGVyIHtcclxuXHQgICAgdG9wOiAwLjV2dztcclxuXHQgICAgd2lkdGg6IDMuNXZ3O1xyXG5cdCAgICBoZWlnaHQ6IDMuNXZ3O1xyXG5cdCAgICBtYXJnaW4tbGVmdDogMXZ3O1xyXG5cdH1cclxuXHJcblx0LmNvbnRhY3QtaW5mbyBoMiB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNC4ydnc7XHJcblx0fVxyXG5cdC5jZXJ0aWZ5LXN0ZXBzIGgzIHtcclxuXHQgICAgZm9udC1zaXplOiA0dnc7XHJcblx0fVxyXG5cclxuXHQuZ2FyYWdlIGgxIHtcclxuXHQgICAgZm9udC1zaXplOiA0Ljh2dztcclxuXHR9XHJcblx0LmdhcmFnZSBoMiB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNC43NXZ3O1xyXG5cdH1cclxuXHQuZ2FyYWdlIC5zZW5kLXRvLWRlYWxlciBoMyB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNC41dnc7XHJcblx0fVxyXG5cdC5nYXJhZ2UgLnNlbmQtdG8tZGVhbGVyIHtcclxuXHQgICAgcGFkZGluZzogMnJlbTtcclxuXHR9XHJcblx0LmludHJvLXZpZGVvLmdhcmFnZS1iYW5uZXIge1xyXG5cdCAgICBkaXNwbGF5Om5vbmU7XHJcblx0fVxyXG5cdC5nYXJhZ2UgLmZpbHRlci1jb250YWluZXIgLnJhZGlvLWNvbnRhaW5lciB7XHJcblx0ICAgIHBhZGRpbmctbGVmdDogNi4ydnc7XHJcblx0fVxyXG5cdC5nYXJhZ2UgLmNlbGwubWFpbi1nYXJhZ2Utc2hvcCAuZ2FyYWdlLXNob3AtaXRlbS5wb3BvdXQge1xyXG5cdCAgICB3aWR0aDogMTEwJTtcclxuXHQgICAgbGVmdDogLTUlO1xyXG5cdH1cclxuXHQucmFkaW8ge1xyXG5cdCAgICBoZWlnaHQ6IDQuNXZ3O1xyXG5cdCAgICB3aWR0aDogNC41dnc7XHJcblx0fVxyXG5cdC5yYWRpby1jb250YWluZXIgLnJhZGlvOmFmdGVyIHtcclxuXHQgICAgd2lkdGg6IDR2dztcclxuXHQgICAgaGVpZ2h0OiA0dnc7XHJcblx0fVxyXG5cdGFzaWRlLmNlbGwubWVkaXVtLTQubGFyZ2UtMy5wcm9ncmFtLWludHJvLCAuYXNpZGUuY2VsbC5tZWRpdW0tNC5sYXJnZS0zLnByb2dyYW0taW50cm8ge1xyXG5cdCAgICBwYWRkaW5nOiAycmVtO1xyXG5cdH1cclxuXHQuZmlsdGVyLWNvbHVtbiB7XHJcblx0ICAgIHdpZHRoOiAwO1xyXG5cdCAgICBsZWZ0Oi0ycmVtO1xyXG5cdH1cclxuXHQuZmlsdGVyLWNvbHVtbi5maWx0ZXItYWN0aXZlIHtcclxuXHQgICAgd2lkdGg6IDEwMCU7XHJcblx0ICAgIG1heC13aWR0aDogMTAwJTtcclxuXHQgICAgbGVmdDowO1xyXG5cdH1cclxuXHQubW9iaWxlLWxvY2F0b3Ige1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjokbGlnaHQtZ3JheTtcclxuXHRcdHBhZGRpbmctdG9wOiAxcmVtO1xyXG5cdH1cclxuXHQubW9iaWxlLWxvY2F0b3IgLnNlYXJjaC1sb2NhdGlvbiB7XHJcblx0ICAgIHdpZHRoOiA3dnc7XHJcblx0fVxyXG5cdGJ1dHRvbi5idXR0b24uY2xlYXIge1xyXG5cdCAgICBwYWRkaW5nLXRvcDogLjNlbTtcclxuXHQgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcclxuXHR9XHJcblx0LmZpbmQtdXBmaXR0ZXIgLmFjY29yZGlvbi5maWx0ZXIgLmFjY29yZGlvbi10aXRsZSB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNS41dnc7XHJcblx0fVxyXG5cdC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIC5maWx0ZXJzZWN0aW9uIHtcclxuXHQgICAgcGFkZGluZy1sZWZ0OiA5LjJ2dztcclxuXHQgICAgbWFyZ2luOiAwLjVyZW0gMDtcclxuXHQgICAgZm9udC1zaXplOiA0dnc7XHJcblx0fVxyXG5cdC5maW5kLXVwZml0dGVyIC5maWx0ZXItY29udGFpbmVyIC5tb3JlLWJ1dHRvbiB7XHJcblx0ICAgIGhlaWdodDogNS41dnc7XHJcblx0ICAgIHdpZHRoOiA1LjV2dztcclxuXHR9XHJcblx0LmZpbmQtdXBmaXR0ZXIgLmZpbHRlci1jb250YWluZXIgLm1vcmUtYnV0dG9uOmJlZm9yZSB7XHJcblx0ICAgIGhlaWdodDogNHZ3O1xyXG5cdCAgICBsZWZ0OiAyLjR2dztcclxuXHQgICAgdG9wOiAwLjd2dztcclxuXHR9XHJcblx0LmZpbmQtdXBmaXR0ZXIgLmZpbHRlci1jb250YWluZXIgLm1vcmUtYnV0dG9uOmFmdGVyIHtcclxuXHQgICAgaGVpZ2h0OiA0dnc7XHJcblx0ICAgIGxlZnQ6IDIuNHZ3O1xyXG5cdCAgICB0b3A6IDAuN3Z3O1xyXG5cdH1cclxuXHQuZmluZC11cGZpdHRlciAuY2hlY2stY29udGFpbmVyIHtcclxuXHQgICAgcGFkZGluZy1sZWZ0OiA2LjJ2dztcclxuXHQgICAgbWFyZ2luOiAwLjVyZW0gMDtcclxuXHQgICAgZm9udC1zaXplOiAzLjV2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuXHR9XHJcblx0LmZpbmQtdXBmaXR0ZXIgLmFzaWRlIHtcclxuXHQgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzd2dyk7XHJcblx0ICAgIG92ZXJmbG93LXg6IGF1dG87XHJcblx0ICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBcdHotaW5kZXg6IDUwO1xyXG5cdH1cclxuXHQuYWNjb3JkaW9uLmZpbHRlciAuYWNjb3JkaW9uLXRpdGxlOmFmdGVyIHtcclxuXHRcdGRpc3BsYXk6bm9uZTtcclxuXHR9XHJcblx0LmZpbmQtdXBmaXR0ZXIgLmxvY2F0aW9uLWxpc3QgLmNhcmQgcCB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNHZ3O1xyXG5cdCAgICBsaW5lLWhlaWdodDogMS41O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0fVxyXG5cdC5maW5kLXVwZml0dGVyIC5sb2NhdGlvbi1saXN0IC5jYXJkIC5idXR0b24ge1xyXG5cdCAgICBmb250LXNpemU6IDMuODV2dztcclxuXHQgICAgcGFkZGluZzogMS42NXZ3IDIuNXZ3IDEuNXZ3IDIuNXZ3O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cdH1cclxuXHQuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCAuY2FyZCAub2Zmc2l0ZS1jdGEge1xyXG5cdCAgICBib3R0b206IDA7XHJcblx0ICAgIHBhZGRpbmc6IDEuNjV2dyA2LjR2dyAxLjV2dyAxLjV2dztcclxuXHQgICAgZm9udC1zaXplOiAzLjg1dnc7XHJcblx0fVxyXG5cdC5maW5kLXVwZml0dGVyIC5sb2NhdGlvbi1saXN0IC5jYXJkIC5vZmZzaXRlLWN0YTphZnRlciB7XHJcblx0ICAgIHdpZHRoOiA0dnc7XHJcblx0ICAgIGhlaWdodDogN3Z3O1xyXG5cdCAgICByaWdodDogMDtcclxuXHQgICAgdG9wOiAwO1xyXG5cdH1cclxuXHQuZmluZC11cGZpdHRlciAubG9jYXRpb24tbGlzdCB7XHJcblx0ICAgIGhlaWdodDogMTAwJTtcclxuXHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgXHR6LWluZGV4OiA0ODtcclxuICAgIFx0Ym90dG9tOiAwO1xyXG5cdH1cclxuXHQuZmluZC11cGZpdHRlciAuY2FyZC1zdW1tYXJ5IC5wYWdpbmF0aW9uIGxpIHtcclxuXHQgICAgbWFyZ2luLXJpZ2h0OiAxLjA2MjVyZW07XHJcblx0ICAgIGZvbnQtc2l6ZTogNXZ3O1xyXG5cdH1cclxuXHQuZmluZC11cGZpdHRlciAuY2FyZC1zdW1tYXJ5IC5wYWdpbmF0aW9uIC5jdXJyZW50IHtcclxuXHQgICAgcGFkZGluZzogMCAwLjEyNXJlbTtcclxuXHQgICAgbWFyZ2luOiAwLjVyZW0gMCAwLjVyZW0gMC41cmVtO1xyXG5cdCAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cdCAgICBmb250LXNpemU6IDV2dztcclxuXHR9XHJcblx0I2JveCB7XHJcblx0XHRoZWlnaHQ6IDQ1dnc7XHJcblx0XHR3aWR0aDoxMDAlO1xyXG5cdCAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHQgICAgYm90dG9tOiAwO1xyXG5cdCAgICBsZWZ0OjA7XHJcblx0XHRtYXgtaGVpZ2h0OiA4MHZoO1xyXG5cdFx0bWluLWhlaWdodDogMi4zcmVtO1xyXG5cdH1cclxuXHQjaGFuZGxlIHtcclxuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcblx0ICAgIHdpZHRoOiAxMDAlO1xyXG5cdCAgICBoZWlnaHQ6IDIuM3JlbTtcclxuXHQgICAgYm9yZGVyOiB3aGl0ZSBzb2xpZDtcclxuXHQgICAgYm9yZGVyLXdpZHRoOiAxcmVtIDQwdnc7XHJcblx0ICAgIGN1cnNvcjogc2UtcmVzaXplO1xyXG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ICAgIGxlZnQ6IDA7XHJcblx0ICAgIHRvcDogMDtcclxuXHR9XHJcblxyXG5cdCNnaG9zdGJhcntcclxuXHQgICAgaGVpZ2h0OjEwcHg7XHJcblx0ICAgIGJhY2tncm91bmQtY29sb3I6IzAwMDtcclxuXHQgICAgb3BhY2l0eTowLjU7XHJcblx0ICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdCAgICBjdXJzb3I6IHJvdy1yZXNpemU7XHJcblx0ICAgIHotaW5kZXg6OTk5XHJcblx0ICAgIH1cclxuXHQuZmluZC11cGZpdHRlciAjbWFwLWNvbnRhaW5lciB7XHJcblx0XHQgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNS4yOTY4OTk2MzIxNTk3NXZ3KTtcclxuXHRcdH1cclxuXHQuZmluZC11cGZpdHRlciAjbWFwIHtcclxuXHRcdCAgICBoZWlnaHQ6IDYxdmg7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDgwdmg7XHJcblx0XHRcdG1pbi1oZWlnaHQ6IDIuM3JlbTtcclxuXHRcdH1cclxuXHQuZmluZC11cGZpdHRlciAucHJpbWFyeS1pbmZvLmRhcmstc2VjdGlvbiB7XHJcblx0ICAgIHBhZGRpbmc6IDNyZW0gMnJlbTtcclxuXHRcdH1cclxuXHQuY2FsbG91dC51cGZpdHRlci1kZXRhaWwge1xyXG5cdCAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAzMS4yOTY5dncpXHJcblx0fVxyXG5cdC5maW5kLXVwZml0dGVyIC51cGZpdHRlci10aHVtYiB7XHJcblx0XHQgICAgd2lkdGg6IGNhbGMoNTIuNXZ3IC0gMnJlbSk7XHJcblx0XHQgICAgaGVpZ2h0OiBjYWxjKDUyLjV2dyAtIDJyZW0pO1xyXG5cdFx0fVxyXG5cclxuXHQgLnNwZWNpYWwtYW5ub3VuY2Uge1xyXG5cdCBcdGZvbnQtc2l6ZTogNHZ3O1xyXG5cdCB9XHJcblx0IC5hY2MtY2FydCB7XHJcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQgICAgcmlnaHQ6IGF1dG87XHJcblx0fVxyXG5cclxuXHRcdC5tYWluLWdhcmFnZS1zaG9wIGxpLmNlbGwgYSB7XHJcblx0XHQgICAgZm9udC1zaXplOiAyLjR2dztcclxuXHRcdCAgICBwYWRkaW5nOiAyLjI1dncgMy41dnc7XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC5idXR0b24uc21hbGwuYWNjLWNhcnQgaW1nIHtcclxuXHRcdCAgICB3aWR0aDoxMHZ3O1xyXG5cdFx0fVxyXG5cclxuXHJcblx0LmFjY2Vzc2liaWxpdHktaW5mby52aWRlby1zdG9yeSB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0cGFkZGluZzogMXJlbSAwO1xyXG5cdH1cclxuXHJcblx0LmFjY2Vzc2liaWxpdHktaW5mbyAuYmFja2dyb3VuZC1pbWcudmlkZW8tc3RvcnktdmlkZW8ge1xyXG5cdFx0aGVpZ2h0OiA2NnZ3O1xyXG5cdH1cclxuXHQuYWNjZXNzaWJpbGl0eS1pbmZvIC5jb250ZW50LWJ1Y2tldCBwLCAuYWNjZXNzaWJpbGl0eS1pbmZvIC5jb250ZW50LWJ1Y2tldCB1bCB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHR9XHJcblxyXG5cdC50ZWxlbWF0aWNzIC5wcm9ncmFtLWludHJvIHAsIC50ZWxlbWF0aWNzIC5iaWdnZXItdGV4dCBwIHtcclxuXHQgICAgZm9udC1zaXplOiAxcmVtO1xyXG5cdH1cclxuXHJcblx0LnNwbGl0aGVybyB7XHJcblx0ICAgIGhlaWdodDogYXV0bztcclxuXHQgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR9XHJcblx0LnNwbGl0aGVybzEge1xyXG5cdCAgICBoZWlnaHQ6IDU4dnc7XHJcbiAgICBcdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0ICAgIC5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4ge1xyXG5cdFx0ICAgIHBhZGRpbmctYm90dG9tOiA1OC43NSU7XHJcblx0XHQgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdCAgICB0b3A6IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5ib3R0b20tYnV0dG9uIHtcclxuXHQgICAgdG9wOiA3OSU7XHJcblx0fVxyXG5cdC5ib3R0b20tYnV0dG9uMiB7XHJcblx0ICAgIHRvcDogODUlO1xyXG5cdCAgICB3aWR0aDogY2FsYygxMDAlIC0gOHZ3KTtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHQgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0fVxyXG5cdC5jdnMtaG9tZS1sb2dvIHtcclxuXHQgICAgd2lkdGg6IDQydnc7XHJcblx0ICAgIG1hcmdpbi10b3A6IDJ2dztcclxuXHR9XHJcblx0LnNwbGl0aGVybzEgaDIge1xyXG5cdCAgICBsZWZ0OiAyOC43NSU7XHJcblx0fVxyXG5cdC5ncmlkLW1hcmdpbi14ID4gLmNlbGwuZGFya2ltYWdlYmFjayB7XHJcblx0ICAgIHBhZGRpbmc6IDN2dyA0dncgMDtcclxuXHR9XHJcblx0LmZvcmRmbGVldGxpdmUgaDMge1xyXG4gICAgXHRmb250LXNpemU6IDV2dztcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMi43NXZ3O1xyXG4gICAgfVxyXG4gICAgLmZvcmRmbGVldGxpdmUgcCB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMi44dnc7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDIuNzV2dztcclxuXHR9XHJcblx0LmZmbC1pbmZvZ3JhcGgge1xyXG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ICAgIGJvdHRvbTogMDtcclxuXHQgICAgbGVmdDogMDtcclxuXHQgICAgd2lkdGg6IDkwJTtcclxuXHR9XHJcblxyXG5cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qIE5ldyBTdHlsZXMgLSBOb3ZlbWJlciAxNSBSZWNyZWF0aW9uYWwgKi9cclxuLmhlYWRsaW5lLXJlYyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIGNvbG9yOiAjMGMxMjE4O1xyXG59XHJcbi5oZWFkbGluZS1hY2Nlc3Mge1xyXG4gICAgY29sb3I6ICMwYzEyMTg7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbn1cclxuLnNoZXJyb2Qtc2VsZWN0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNjc4YmM7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMnZ3O1xyXG59XHJcblxyXG4ud29uZGVyLXNlbGVjdCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMi41dnc7ICAgIFxyXG59XHJcblxyXG4udmVoaWNsZS1tb3RvcmhvbWUtdGl0bGUge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxufVxyXG5cclxuLm1vdG9yaG9tZS1oZWFkLWluZm8ge1xyXG4gICAgIGNvbG9yOiAjMGMxMjE4O1xyXG4gICAgIGZvbnQtc2l6ZTogMS43dnc7XHJcbiAgICAgcGFkZGluZzogMS42dnc7XHJcbn1cclxuLm1vdG9yLXNlY3Rpb24tbGluZSB7XHJcbiAgICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICMwNTUzNjAhaW1wb3J0YW50O1xyXG59XHJcbi5hY2Nlc3Mtc2VjdGlvbi1saW5lIHtcclxuICAgICBib3JkZXItYm90dG9tOiA4cHggc29saWQgJGFjY2Vzc2liaWxpdHktY29sb3IhaW1wb3J0YW50O1xyXG59XHJcbi5zZWxlY3Rpb24tZG93biB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbn1cclxuXHJcbi5zZWxlY3Rpb24tbW90b3ItcmlnaHQge1xyXG4gICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDY3OGJjO1xyXG4gICBwYWRkaW5nLXRvcDogNTBweDsgICAgXHJcbn1cclxuXHJcbi52ZWgtbW90b3ItdGl0bGUge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMS44dnc7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi52ZWgtbW90b3ItdGl0bGUtZmlyc3Qge1xyXG4gICAgY29sb3I6ICMwNjc4YmM7XHJcbiAgICBmb250LXNpemU6IDEuOHZ3O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyAgICBcclxufVxyXG4uc3d2LXBhZCB7XHJcblx0Ym9yZGVyLWJvdHRvbToxcmVtIHNvbGlkICR3aGl0ZTtcclxufSBcclxuXHJcbi5zZWxlY3QtdmVoaWNsZS1jb250ZW50IHtcclxuXHRjb2xvcjokd2hpdGU7XHJcblx0YmFja2dyb3VuZDogI2Y3ZjdmNztcclxuXHRib3JkZXItYm90dG9tOjFyZW0gc29saWQgJHdoaXRlO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGxpZ2h0Z3JleTtcclxuXHJcbiAgICAmLm9mZiB7XHJcbiAgIFx0XHRkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi52ZWhpY2xlLWluZm8td3JhcCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBoZWlnaHQ6IDYxNXB4O1xyXG4gICAgd2lkdGg6IDM0MHB4O1xyXG4gICAgYm94LXNoYWRvdzogMC42cHggMC42cHggMC42cHggMC42cHggbGlnaHRncmV5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweDsgICAgXHJcbn1cclxuXHJcbi5zZWxlY3QtaGVyby10b3AtY29tIHtcclxuICAgIGJvcmRlci1ib3R0b206IDlweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxufVxyXG5cclxuLnNlbGVjdC1oZXJvLXRvcC1mbGVldCB7XHJcbiAgICBib3JkZXItYm90dG9tOiA5cHggc29saWQgJHByaW1hcnktY29sb3I7XHJcbn1cclxuXHJcbi5zZWxlY3QtaGVyby10b3AtcmVjIHtcclxuICAgIGJvcmRlci1ib3R0b206IDlweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcclxufVxyXG5cclxuLnNlbGVjdC1oZXJvLXRvcC1hY2Nlc3Mge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogOXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG59XHJcblxyXG4uc2VsZWN0LXRleHQtd3JhcCB7XHJcbiAgICBjb2xvcjogJGFjY2Vzc2liaWxpdHktY29sb3I7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XHJcbn1cclxuXHJcbi5zZWxlY3QtdGV4dC13cmFwLWNvbiB7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDI4cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XHJcbn1cclxuXHJcbi5wcm9ncmFtLWN0YS1idG4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY2Vzc2liaWxpdHktY29sb3I7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHdpZHRoOiAyNDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi10b3A6IDEuNXZoO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYnV0dG9uLWNhcmV0LXNtYWxsLnBuZyk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTQlO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwNjc4QkM7ICAgICBcclxufVxyXG5cclxuLnByb2dyYW0tY3RhLWJ0bjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDY3OEJDOyBcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGNvbG9yOiAjMDY3OEJDO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHdpZHRoOiAyNDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi10b3A6IDEuNXZoO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYnV0dG9uLWNhcmV0LWJsdWUtc21hbGwucG5nKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NCU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xyXG59XHJcblxyXG4uYWNjZXNzLXRvcCB7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRncmV5O1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIHBhZGRpbmctdG9wOiA0MnB4OyBcclxuICAgIHBhZGRpbmctYm90dG9tOiA0MnB4O1xyXG59XHJcblxyXG4udmVoaWNsZXMtYm90dG9tIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbn1cclxuLyogTmV3IFN0eWxlcyAtIFdlZG5lc2RheSBOb3YgMjFzdCAqL1xyXG4uZW1haWwtdGFnIHtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG4uYWNjZXNzLWluZm9ybWVkIHtcclxuICAgIGNvbG9yOiAjMDY3OGJjO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgcGFkZGluZy10b3A6IDMwcHg7XHJcbn1cclxuLmZhcXMtYmFjayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xyXG59XHJcbi5oZWFkbGluZS1mYXFzIHtcclxuICAgIGNvbG9yOiBibGFjaztcclxufVxyXG4uZmFxcy1ib3JkZXIge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcclxuXHJcblx0JjpiZWZvcmUge1xyXG4gICBcdFx0ZGlzcGxheTpibG9jaztcclxuXHQgICAgdG9wOiA1MCU7XHJcblx0ICAgIHJpZ2h0OiBhdXRvO1xyXG5cdCAgICBsZWZ0OjA7XHJcblx0ICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XHJcblx0ICAgIGNvbnRlbnQ6ICcrJztcclxuXHQgICAgd2lkdGg6MS41cmVtO1xyXG5cdCAgICBoZWlnaHQ6MS41cmVtO1xyXG5cdCAgICBwYWRkaW5nOjAuMTVyZW0gMCAwIDAuMzVyZW07XHJcblx0ICAgIGNvbG9yOiR3aGl0ZTtcclxuXHQgICAgYmFja2dyb3VuZDokcHJpbWFyeS1jb2xvcjtcclxuXHQgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuXHR9XHJcblx0JjphZnRlciB7XHJcbiAgIFx0XHRkaXNwbGF5Om5vbmU7XHJcblx0fVxyXG59XHJcbi5jb250ZW50LWJhY2sge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBub25lIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMDY3OEJDIWltcG9ydGFudDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG4uaGVhZC1hY2Nlc3Mge1xyXG4gICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDY3OEJDO1xyXG4gICBjb2xvcjogJHdoaXRlO1xyXG4gICBwYWRkaW5nOiAxMHB4O1xyXG4gICBmb250LXdlaWdodDogYm9sZGVyO1xyXG4gICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG4ubGlnaHQtYmFja2dyb3VuZCB7XHJcblx0aDMge1xyXG5cdFx0Y29sb3I6JGJsYWNrO1xyXG5cdH1cclxufVxyXG4uYmx1ZS1iYWNrZ3JvdW5kIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiRzZWNvbmRhcnktY29sb3I7XHJcblx0aDMge1xyXG5cdFx0XHJcblx0fVxyXG59XHJcbi5kYXJrZ3JheS1iYWNrZ3JvdW5kIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiRkYXJrLWdyYXk7XHJcblx0cCB7XHJcblx0XHRjb2xvcjokd2hpdGU7XHJcblx0fVxyXG59XHJcbi53aGl0ZSB7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG5cdCY6aG92ZXIge1xyXG5cdFx0Y29sb3I6JHdoaXRlO1xyXG5cdH1cclxufVxyXG4ucGFkZGVkLWJ1Y2tldCB7XHJcblx0cGFkZGluZzoycmVtO1xyXG59XHJcbi5wYWQtYm90dG9tIHtcclxuXHRtYXJnaW4tYm90dG9tOjJyZW07XHJcbn1cclxuLmRhcmtncmF5LWJhY2tncm91bmQgbGkuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQsIC5kYXJrZ3JheS1iYWNrZ3JvdW5kIGxpLmFjY29yZGlvbi1pdGVtID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xyXG4gICAgYm9yZGVyOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMHB4O1xyXG4gICAgYmFja2dyb3VuZDogJGRhcmstZ3JheTtcclxufVxyXG4uZGFya2dyYXktYmFja2dyb3VuZCBsYWJlbCB7XHJcblx0Y29sb3I6JHdoaXRlO1xyXG59XHJcbi53c2wtYnVja2V0IHtcclxuXHRtYXJnaW4tdG9wOjEwJTtcclxufVxyXG5cclxuLmdhcmFnZSAuc2VuZC10by1kZWFsZXIgLmRlYWxlci1zZWFyY2gtY2FsbCBkaXYuY2hlY2stY29udGFpbmVyIHtcclxuXHQgICAgY3Vyc29yOiBhdXRvO1xyXG59XHJcblxyXG5cclxuXHJcbi8qIEV4dHJhIFNtYWxsIG9ubHkgKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjMuNzVlbSkge1xyXG5cdC5rZWVwLXVwZGF0ZWQgLmNoZWNrLWNvbnRhaW5lciB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMy41dnchaW1wb3J0YW50O1xyXG5cdCAgICBwYWRkaW5nLWxlZnQ6IDYuMnZ3O1xyXG5cdCAgICBtYXJnaW46IDFyZW0gMC41cmVtIDFyZW07XHJcblx0fVxyXG5cdC5rZWVwLXVwZGF0ZWQgZmllbGRzZXQuY2hlY2tib3gtZ3JvdXAge1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cdH1cclxuXHQua2VlcC11cGRhdGVkIC5jaGVja21hcmsge1xyXG5cdCAgICB0b3A6IDA7XHJcblx0ICAgIGxlZnQ6IC00cHg7XHJcblx0ICAgIGhlaWdodDogNC41dnc7XHJcblx0ICAgIHdpZHRoOiA0LjV2dztcclxuXHR9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xyXG5cdC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0zID4gLmNlbGwge1xyXG5cdCAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAycmVtKTtcclxuXHR9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi5tYWluLW1lbnUtZHJvcHBlciB7XHJcbiAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDowO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmxhY2s7XHJcbiAgb3BhY2l0eTogMDtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47IFxyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgMXMgZWFzZTtcclxuICB0cmFuc2l0aW9uOiBoZWlnaHQgMXMgZWFzZTsgIFxyXG5cclxuICBkdCB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xyXG4gICAgZm9udC1zaXplOiAxdnc7IFxyXG4gICAgfVxyXG5cclxuICBkZCB7XHJcbiAgICBmb250LXNpemU6IDAuNzV2dztcclxuICAgICAgcGFkZGluZzogMC41dncgMDsgXHJcblxyXG4gICAgYSB7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm1haW4tbWVudS12ZWhpY2xlcyB7XHJcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XHJcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcclxuICAgIC13ZWJraXQtZmxleC1mbG93OiByb3cgd3JhcDtcclxuICAgIC1tcy1mbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICBkdCB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gIH1cclxuICBkZCB7XHJcbiAgICB3aWR0aDoyNSU7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcclxuICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgYXV0bztcclxuICAgICAgLW1zLWZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgbWluLWhlaWdodDogMHB4O1xyXG4gICAgICBtaW4td2lkdGg6IDBweDtcclxuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgfVxyXG59XHJcbi5zdGlja3kuaXMtYW5jaG9yZWQge1xyXG4gIHotaW5kZXg6MjU7XHJcbn1cclxuXHJcblxyXG4vKiBPcGVuIG5hdmlnaWF0aW9uICovXHJcbi5tYWluLW1lbnUtZHJvcHBlci5pcy1hY3RpdmUge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxuICBvcGFjaXR5OiAxO1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGU7IFxyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcbi5tYWluLW5hdi1jb250ZW50cyB7XHJcblx0YmFja2dyb3VuZDogJHdoaXRlO1xyXG5cdHBhZGRpbmc6IDJ2dztcclxufVxyXG5cclxuXHJcblxyXG4vKiBNZWRpdW0gb25seSAqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcclxuXHQubWFpbi1tZW51LWRyb3BwZXIgZHQge1xyXG5cdCAgICBmb250LXNpemU6IDEuM3Z3O1xyXG5cdH1cclxuXHQubWFpbi1tZW51LWRyb3BwZXIgZGQge1xyXG5cdCAgICBmb250LXNpemU6IDF2dztcclxuXHQgICAgcGFkZGluZzogMC43NXZ3IDA7XHJcblx0fVxyXG59XHJcblxyXG5cclxuXHJcbi8qIFNtYWxsIG9ubHkgKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XHJcblx0XHJcblx0LmlzLWFjdGl2ZSAubWFpbi1uYXYtY29udGVudHMge1xyXG5cdCAgICBoZWlnaHQ6IDcwdmg7XHJcblx0ICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuXHR9XHJcblx0Lm1haW4tbWVudS1kcm9wcGVyIGR0IHtcclxuXHQgICAgZm9udC1zaXplOiA0dnc7XHJcblx0fVxyXG5cdC5tYWluLW1lbnUtZHJvcHBlciBkZCB7XHJcblx0ICAgIGZvbnQtc2l6ZTogM3Z3O1xyXG5cdCAgICBwYWRkaW5nOiAxLjc1dncgMDtcclxuXHR9XHJcblx0Lm1haW4tbWVudS12ZWhpY2xlcyBkZCB7XHJcbiAgICBcdHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcbiAgICAudmFuaXNoIHtcclxuICAgIFx0ZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLmJpZy1zdGF0ZW1lbnQge1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdGZvbnQtc2l6ZToxLjVyZW07XHJcblx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1NZWRpdW0nO1xyXG59XHJcblxyXG4uY29tbWVyY2lhbC10YXgtZ3VpZGVsaW5lcyAuYWNjZXNzaWJpbGl0eS1pbmZvIHtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uZmZsLXBhbmVsIHtcclxuXHRjb2xvcjogJHdoaXRlO1xyXG5cdG1hcmdpbi1ib3R0b206MXJlbTtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xyXG5cclxuXHQmLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xyXG5cdCAgICBwYWRkaW5nLXJpZ2h0OiAxdnc7XHJcblx0ICAgIHBhZGRpbmctbGVmdDogMXZ3O1xyXG5cdFx0Ji5mZmwtbWVzc2FnZSB7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMnZ3O1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogMnZ3O1xyXG5cdFx0fVxyXG5cdFx0Ji5mZmwtaW1hZ2Uge1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogM3Z3O1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuZmZsLWxvZ28ge1xyXG5cdCAgICB3aWR0aDogMTQuMXZ3O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAxdnc7XHJcblx0fVxyXG5cclxuXHRoMyB7XHJcblx0XHRmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJsYWNrJztcclxuXHQgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQgICAgZm9udC1zaXplOiAyLjV2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDE7XHJcblx0ICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDAuNXZ3O1xyXG5cdCAgICB3aWR0aDogMTMwJTtcclxuXHQgICAgbWFyZ2luLWxlZnQ6IC0xOS41JTtcclxuXHQgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdCAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHQgICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMC44NzV2dztcclxuXHQgICAgc21hbGwge1xyXG5cdFx0XHRmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLVJlZ3VsYXInO1xyXG5cdFx0XHRjb2xvcjogJHdoaXRlO1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHQgICAgd2lkdGg6IDEyMCU7XHJcblx0XHQgICAgbWFyZ2luLWxlZnQ6IC0xMiU7XHJcblx0XHQgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjgpO1xyXG5cdFx0ICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjgpO1xyXG5cdFx0ICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuOCk7XHJcblx0ICAgIH1cclxuXHR9XHJcblx0YSB7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdH1cclxuXHQuZmZsLWZlYXR1cmluZyB7XHJcblx0ICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0ICAgIGZvbnQtc2l6ZTogMS4ydnc7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cdCAgICBsZXR0ZXItc3BhY2luZzogNHB4O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAwLjV2dztcclxuXHQgICAgd2lkdGg6IDE0MCU7XHJcbiAgICBcdG1hcmdpbi1sZWZ0OiAtMjglO1xyXG5cdCAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDAuNik7XHJcblx0ICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjYpO1xyXG5cdCAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjYpO1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAwLjg3NXZ3O1xyXG5cdCAgICBhIHtcclxuXHQgICAgXHRjb2xvcjojMDBhNGU0O1xyXG5cdCAgICB9XHJcblxyXG5cdH1cclxuXHQuZmZsLWNvcHkgIHtcclxuXHRcdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XHJcblx0ICAgIGZvbnQtc2l6ZTogMC44NzV2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuXHQgICAgbGV0dGVyLXNwYWNpbmc6IDRweDtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMC41dnc7XHJcblx0ICAgIHdpZHRoOiAxMzAlO1xyXG4gICAgXHRtYXJnaW4tbGVmdDogLTE5LjUlO1xyXG5cdCAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XHJcblx0ICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdCAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAwLjg3NXZ3O1xyXG5cclxuXHR9XHJcblxyXG5cdC5mZmwtYmx1ZSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNGU0O1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdC5mZmwtYWxpZ24tc2VsZiB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICB0b3A6IDUwJTtcclxuXHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHQgICAgd2lkdGg6IDkwJTtcclxuXHRcdH1cclxuXHRcdGEge1xyXG5cdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjMDBhNGU0O1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0Jjpob3ZlciwgJjpmb2N1cyB7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkd2hpdGVcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0aW1nIHtcclxuXHRcdCAgICB3aWR0aDogNDAlO1xyXG5cdFx0ICAgIHBhZGRpbmc6IDAuNXZ3IDA7XHJcblx0XHR9XHJcblx0XHRzcGFuLmZmbC1leHBsb3JlIHtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1MaWdodCcsIHNhbi1zZXJpZjtcclxuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHQgICAgZm9udC1zaXplOiAxLjJ2dztcclxuXHRcdCAgICBsaW5lLWhlaWdodDogMS4yO1xyXG5cdFx0ICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XHJcblx0XHQgICAgbWFyZ2luLWJvdHRvbTogMC41dnc7XHJcblx0XHQgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRcdCAgICBwYWRkaW5nLXRvcDogMXZ3O1xyXG5cdFx0ICAgIHdpZHRoOiAxMzAlO1xyXG5cdCAgICBcdG1hcmdpbi1sZWZ0OiAtMTUlO1xyXG5cdFx0ICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHRcdCAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHRcdCAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdFx0fVxyXG5cdFx0c3Bhbi5mZmwtZXZlbnRzIHtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1CbGFjaycsIHNhbi1zZXJpZjtcclxuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHQgICAgZm9udC1zaXplOiA0LjV2dztcclxuXHRcdCAgICBsaW5lLWhlaWdodDogMS4yO1xyXG5cdFx0ICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XHJcblx0XHQgICAgd2lkdGg6IDEzMCU7XHJcblx0ICAgIFx0bWFyZ2luLWxlZnQ6IC0xNSU7XHJcblx0ICAgIFx0bWFyZ2luLXRvcDogLTAuNXZ3O1xyXG5cdFx0ICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHRcdCAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHRcdCAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQuZmZsLWRpc2NsYWltZXIge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0Zm9udC1zaXplOiAwLjV2dztcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR6LWluZGV4OjEwO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi5iZXYtcGFuZWwge1xyXG5cdGNvbG9yOiAkd2hpdGU7XHJcblx0bWFyZ2luLWJvdHRvbToxcmVtO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAtOXZ3ICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0Ji5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcclxuXHQgICAgcGFkZGluZy1yaWdodDogMXZ3O1xyXG5cdCAgICBwYWRkaW5nLWxlZnQ6IDF2dztcclxuXHRcdCYuZmZsLW1lc3NhZ2Uge1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDJ2dztcclxuXHRcdFx0cGFkZGluZy10b3A6IDJ2dztcclxuXHRcdH1cclxuXHRcdCYuZmZsLWltYWdlIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IDN2dztcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmJldi1sb2dvIHtcclxuXHQgICAgd2lkdGg6IDMwdnc7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDN2dztcclxuXHR9XHJcblxyXG5cdGgzIHtcclxuXHRcdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtUmVndWxhcic7XHJcblx0ICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0ICAgIGZvbnQtc2l6ZTogMi41dnc7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cdCAgICBsZXR0ZXItc3BhY2luZzogNnB4O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAwLjV2dztcclxuXHQgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdCAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHQgICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMi44NzV2dztcclxuXHQgICAgbWFyZ2luLXRvcDogMS44NzV2dztcclxuXHQgICAgY29sb3I6IzAwYTRlNDtcclxuXHQgICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCByZ2JhKDQzLCAxNzUsIDI0NCwgMSk7XHJcblx0ICAgIHNtYWxsIHtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICdGb3JkQW50ZW5uYS1SZWd1bGFyJztcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0ICAgIHdpZHRoOiAxMjAlO1xyXG5cdFx0ICAgIG1hcmdpbi1sZWZ0OiAtMTIlO1xyXG5cdFx0ICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcclxuXHRcdCAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcclxuXHRcdCAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjgpO1xyXG5cdCAgICB9XHJcblx0ICAgIHNwYW4ge1xyXG5cdFx0XHRmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUJvbGQnO1xyXG5cdCAgICBcdGNvbG9yOiNmZmY7XHJcblx0ICAgIFx0dGV4dC1zaGFkb3c6IDBweCAwcHggMTVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xyXG5cdCAgICB9XHJcblx0fVxyXG5cdGEge1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHR9XHJcblx0LmJldi1mZWF0dXJpbmcge1xyXG5cdCAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdCAgICBmb250LXNpemU6IDJ2dztcclxuXHQgICAgbGluZS1oZWlnaHQ6IDE7XHJcblx0ICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDAuNXZ3O1xyXG5cdCAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XHJcblx0ICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdCAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAyLjg3NXZ3O1xyXG5cdCAgICBcdHRleHQtc2hhZG93OiAwcHggMHB4IDE1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcclxuXHQgICAgYSB7XHJcblx0ICAgIFx0Y29sb3I6IzAwYTRlNDtcclxuXHQgICAgXHR0ZXh0LXNoYWRvdzogMHB4IDBweCAxNXB4IHJnYmEoNDMsIDE3NSwgMjQ0LCAxKTtcclxuXHQgICAgfVxyXG5cclxuXHR9XHJcblx0LmJldi1jb3B5ICB7XHJcblx0XHRmb250LWZhbWlseTogJ0ZvcmRBbnRlbm5hLUxpZ2h0Jywgc2FuLXNlcmlmO1xyXG5cdCAgICBmb250LXNpemU6IDAuODc1dnc7XHJcblx0ICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcblx0ICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDAuNXZ3O1xyXG5cdCAgICB3aWR0aDogMTMwJTtcclxuICAgIFx0bWFyZ2luLWxlZnQ6IC0xOS41JTtcclxuXHQgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwLjcpO1xyXG5cdCAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHQgICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMC44NzV2dztcclxuXHJcblx0fVxyXG5cclxuXHQuYmV2LWJsdWUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwYTRlNDtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHQuYmV2LWFsaWduLXNlbGYge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQgICAgdG9wOiA1MCU7XHJcblx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0ICAgIHdpZHRoOiA5MCU7XHJcblx0XHR9XHJcblx0XHRhIHtcclxuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgIzAwYTRlNDtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdCY6aG92ZXIsICY6Zm9jdXMge1xyXG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJHdoaXRlXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGltZyB7XHJcblx0XHQgICAgd2lkdGg6IDQwJTtcclxuXHRcdCAgICBwYWRkaW5nOiAwLjV2dyAwO1xyXG5cdFx0fVxyXG5cdFx0c3Bhbi5iZXYtZXhwbG9yZSB7XHJcblx0XHRcdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtTGlnaHQnLCBzYW4tc2VyaWY7XHJcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0ICAgIGZvbnQtc2l6ZTogMS4ydnc7XHJcblx0XHQgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuXHRcdCAgICBsZXR0ZXItc3BhY2luZzogNHB4O1xyXG5cdFx0ICAgIG1hcmdpbi1ib3R0b206IDAuNXZ3O1xyXG5cdFx0ICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0XHQgICAgcGFkZGluZy10b3A6IDF2dztcclxuXHRcdCAgICB3aWR0aDogMTMwJTtcclxuXHQgICAgXHRtYXJnaW4tbGVmdDogLTE1JTtcclxuXHRcdCAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XHJcblx0XHQgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XHJcblx0XHQgICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHRcdH1cclxuXHRcdHNwYW4uYmV2LWV2ZW50cyB7XHJcblx0XHRcdGZvbnQtZmFtaWx5OiAnRm9yZEFudGVubmEtQmxhY2snLCBzYW4tc2VyaWY7XHJcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0ICAgIGZvbnQtc2l6ZTogNC41dnc7XHJcblx0XHQgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuXHRcdCAgICBsZXR0ZXItc3BhY2luZzogOHB4O1xyXG5cdFx0ICAgIHdpZHRoOiAxMzAlO1xyXG5cdCAgICBcdG1hcmdpbi1sZWZ0OiAtMTUlO1xyXG5cdCAgICBcdG1hcmdpbi10b3A6IC0wLjV2dztcclxuXHRcdCAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XHJcblx0XHQgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKDAuNyk7XHJcblx0XHQgICAgdHJhbnNmb3JtOiBzY2FsZVgoMC43KTtcclxuXHRcdH1cclxuXHR9XHJcblx0LmJldi1kaXNjbGFpbWVyIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGZvbnQtc2l6ZTogMC41dnc7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0ei1pbmRleDoxMDtcclxuXHR9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2NC45OTRlbSkge1xyXG5cclxuXHRcdC5mZmwtcGFuZWwgLmZmbC1ibHVlIHNwYW4uZmZsLWV4cGxvcmUge1xyXG5cdFx0ICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcblx0XHR9XHJcblx0XHQuZmZsLXBhbmVsIC5mZmwtYmx1ZSBzcGFuLmZmbC1ldmVudHMge1xyXG5cdFx0ICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XHJcblx0XHR9XHJcblxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcclxuXHJcblx0LmZmbC1wYW5lbCAuZmZsLWxvZ28ge1xyXG5cdCAgICB3aWR0aDogNTB2dztcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogM3Z3O1xyXG5cdH1cclxuXHQuZmZsLXBhbmVsIGgzIHtcclxuICAgIFx0Zm9udC1zaXplOiA1LjV2dztcclxuICAgIFx0bWFyZ2luLWJvdHRvbTogMi44NzV2dztcclxuICAgIH1cclxuICAgIC5mZmwtcGFuZWwgLmZmbC1mZWF0dXJpbmcge1xyXG5cdCAgICBmb250LXNpemU6IDQuMnZ3O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiAyLjg3NXZ3O1xyXG5cdH1cclxuXHQuZmZsLXBhbmVsIC5mZmwtY29weSB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMy44NzV2dztcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogMi44NzV2dztcclxuXHR9XHJcblx0LmZmbC1wYW5lbCAuZmZsLWJsdWUgaW1nIHtcclxuXHQgICAgd2lkdGg6IDE1JTtcclxuXHQgICAgcGFkZGluZzogMi41dncgMDtcclxuXHR9XHJcblx0LmZmbC1wYW5lbCAuZmZsLWJsdWUgc3Bhbi5mZmwtZXhwbG9yZSB7XHJcblx0ICAgIGZvbnQtc2l6ZTogNC4ydnc7XHJcblx0fVxyXG5cdC5mZmwtcGFuZWwgLmZmbC1ibHVlIHNwYW4uZmZsLWV2ZW50cyB7XHJcblx0ICAgIGZvbnQtc2l6ZTogMTYuNXZ3O1xyXG5cdCAgICBtYXJnaW4tdG9wOiAtMi41dnc7XHJcblx0fVxyXG5cdC5mZmwtcGFuZWwuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5mZmwtbWVzc2FnZSB7XHJcblx0ICAgIHBhZGRpbmctbGVmdDogNXZ3O1xyXG5cdCAgICBwYWRkaW5nLXRvcDogNXZ3O1xyXG5cdH1cclxuXHQuZmZsLXBhbmVsIHtcclxuXHQgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGxlZnQhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQuZmZsLXBhbmVsLmdyaWQtcGFkZGluZy14ID4gLmNlbGwuZmZsLWltYWdlIHtcclxuXHQgICAgcGFkZGluZy10b3A6IDN2dztcclxuXHQgICAgcGFkZGluZy1yaWdodDogM3Z3O1xyXG5cdCAgICBwYWRkaW5nLWxlZnQ6IDN2dztcclxuXHR9XHJcblx0LmZmbC1wYW5lbCAuZmZsLWRpc2NsYWltZXIge1xyXG5cdCAgICBmb250LXNpemU6IDEuNXZ3O1xyXG5cdCAgICBsZWZ0OiA0dnc7XHJcblx0fVxyXG5cdC5mZmwtcGFuZWwgLmZmbC1ibHVlIC5mZmwtYWxpZ24tc2VsZiB7XHJcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQgICAgdG9wOiAwO1xyXG5cdCAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHQgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdCAgICB3aWR0aDogMTAwJTtcclxuXHR9XHJcblx0LmJldi1wYW5lbCB7XHJcblx0ICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04dncgLTR2dyAhaW1wb3J0YW50O1xyXG5cdCAgICBiYWNrZ3JvdW5kLXNpemU6IDE1MCUgIWltcG9ydGFudDtcclxuXHR9XHJcblx0LmJldi1wYW5lbCBoMyB7XHJcbiAgICBcdGZvbnQtc2l6ZTogNS41dnc7XHJcbiAgICBcdG1hcmdpbi1ib3R0b206IDUuODc1dnc7XHJcbiAgICBcdG1hcmdpbi10b3A6IDQuODc1dnc7XHJcbiAgICBcdH1cclxuICAgIC5iZXYtcGFuZWwgLmJldi1sb2dvIHtcclxuXHQgICAgd2lkdGg6IDgwdnc7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDZ2dztcclxuXHR9XHJcblx0LmJldi1wYW5lbCAuYmV2LWZlYXR1cmluZyB7XHJcbiAgICBcdGZvbnQtc2l6ZTogNXZ3O1xyXG4gICAgXHRtYXJnaW4tYm90dG9tOiA1Ljg3NXZ3O1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG5cclxuIl19 */
