@charset "UTF-8";
@font-face {
  font-family: "Museo Sans Rounded";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.eot"), url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.woff") format("woff"), url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.ttf") format("truetype"), url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.svg#museo_sans_rounded_300regular") format("svg");
}

@font-face {
  font-family: "Museo Sans Rounded";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.eot"), url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.woff") format("woff"), url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.ttf") format("truetype"), url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.svg#museo_sans_rounded_500regular") format("svg");
}

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

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

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

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

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

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px;
}

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */
hr {
  -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-small=30em&medium=40em&medium-large=50em&large-medium=64em&large=72.25em&xlarge=81.25em&xxlarge=87.5em";
}

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: "Museo Sans Rounded", Helvetica, Roboto, Arial, sans-serif;
  font-weight: 300;
  line-height: 1.375rem;
  color: #231f20;
  -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 {
  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;
}

[data-whatinput='mouse'] button {
  outline: 0;
}

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

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

.row {
  max-width: 72.25rem;
  margin-right: auto;
  margin-left: auto;
}

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

.row::after {
  clear: both;
}

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

.row .row {
  margin-right: -0.3125rem;
  margin-left: -0.3125rem;
}

@media print, screen and (min-width: 30em) {
  .row .row {
    margin-right: -0.3125rem;
    margin-left: -0.3125rem;
  }
}

@media print, screen and (min-width: 40em) {
  .row .row {
    margin-right: -0.21875rem;
    margin-left: -0.21875rem;
  }
}

@media screen and (min-width: 64em) {
  .row .row {
    margin-right: -0.21875rem;
    margin-left: -0.21875rem;
  }
}

@media screen and (min-width: 72.25em) {
  .row .row {
    margin-right: -0.21875rem;
    margin-left: -0.21875rem;
  }
}

@media screen and (min-width: 81.25em) {
  .row .row {
    margin-right: -0.21875rem;
    margin-left: -0.21875rem;
  }
}

@media screen and (min-width: 87.5em) {
  .row .row {
    margin-right: -0.21875rem;
    margin-left: -0.21875rem;
  }
}

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

.row.expanded {
  max-width: none;
}

.row.expanded .row {
  margin-right: auto;
  margin-left: auto;
}

.row.gutter-small > .column, .row.gutter-small > .columns {
  padding-right: 0.3125rem;
  padding-left: 0.3125rem;
}

.row.gutter-medium > .column, .row.gutter-medium > .columns {
  padding-right: 0.21875rem;
  padding-left: 0.21875rem;
}

.column, .columns {
  width: 100%;
  float: left;
  padding-right: 0.3125rem;
  padding-left: 0.3125rem;
}

@media print, screen and (min-width: 40em) {
  .column, .columns {
    padding-right: 0.21875rem;
    padding-left: 0.21875rem;
  }
}

.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: 3.125%;
}

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

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

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

.small-2 {
  width: 6.25%;
}

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

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

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

.small-3 {
  width: 9.375%;
}

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

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

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

.small-4 {
  width: 12.5%;
}

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

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

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

.small-5 {
  width: 15.625%;
}

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

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

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

.small-6 {
  width: 18.75%;
}

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

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

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

.small-7 {
  width: 21.875%;
}

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

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

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

.small-8 {
  width: 25%;
}

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

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

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

.small-9 {
  width: 28.125%;
}

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

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

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

.small-10 {
  width: 31.25%;
}

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

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

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

.small-11 {
  width: 34.375%;
}

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

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

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

.small-12 {
  width: 37.5%;
}

.small-push-12 {
  position: relative;
  left: 37.5%;
}

.small-pull-12 {
  position: relative;
  left: -37.5%;
}

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

.small-13 {
  width: 40.625%;
}

.small-push-13 {
  position: relative;
  left: 40.625%;
}

.small-pull-13 {
  position: relative;
  left: -40.625%;
}

.small-offset-12 {
  margin-left: 37.5%;
}

.small-14 {
  width: 43.75%;
}

.small-push-14 {
  position: relative;
  left: 43.75%;
}

.small-pull-14 {
  position: relative;
  left: -43.75%;
}

.small-offset-13 {
  margin-left: 40.625%;
}

.small-15 {
  width: 46.875%;
}

.small-push-15 {
  position: relative;
  left: 46.875%;
}

.small-pull-15 {
  position: relative;
  left: -46.875%;
}

.small-offset-14 {
  margin-left: 43.75%;
}

.small-16 {
  width: 50%;
}

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

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

.small-offset-15 {
  margin-left: 46.875%;
}

.small-17 {
  width: 53.125%;
}

.small-push-17 {
  position: relative;
  left: 53.125%;
}

.small-pull-17 {
  position: relative;
  left: -53.125%;
}

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

.small-18 {
  width: 56.25%;
}

.small-push-18 {
  position: relative;
  left: 56.25%;
}

.small-pull-18 {
  position: relative;
  left: -56.25%;
}

.small-offset-17 {
  margin-left: 53.125%;
}

.small-19 {
  width: 59.375%;
}

.small-push-19 {
  position: relative;
  left: 59.375%;
}

.small-pull-19 {
  position: relative;
  left: -59.375%;
}

.small-offset-18 {
  margin-left: 56.25%;
}

.small-20 {
  width: 62.5%;
}

.small-push-20 {
  position: relative;
  left: 62.5%;
}

.small-pull-20 {
  position: relative;
  left: -62.5%;
}

.small-offset-19 {
  margin-left: 59.375%;
}

.small-21 {
  width: 65.625%;
}

.small-push-21 {
  position: relative;
  left: 65.625%;
}

.small-pull-21 {
  position: relative;
  left: -65.625%;
}

.small-offset-20 {
  margin-left: 62.5%;
}

.small-22 {
  width: 68.75%;
}

.small-push-22 {
  position: relative;
  left: 68.75%;
}

.small-pull-22 {
  position: relative;
  left: -68.75%;
}

.small-offset-21 {
  margin-left: 65.625%;
}

.small-23 {
  width: 71.875%;
}

.small-push-23 {
  position: relative;
  left: 71.875%;
}

.small-pull-23 {
  position: relative;
  left: -71.875%;
}

.small-offset-22 {
  margin-left: 68.75%;
}

.small-24 {
  width: 75%;
}

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

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

.small-offset-23 {
  margin-left: 71.875%;
}

.small-25 {
  width: 78.125%;
}

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

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

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

.small-26 {
  width: 81.25%;
}

.small-push-26 {
  position: relative;
  left: 81.25%;
}

.small-pull-26 {
  position: relative;
  left: -81.25%;
}

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

.small-27 {
  width: 84.375%;
}

.small-push-27 {
  position: relative;
  left: 84.375%;
}

.small-pull-27 {
  position: relative;
  left: -84.375%;
}

.small-offset-26 {
  margin-left: 81.25%;
}

.small-28 {
  width: 87.5%;
}

.small-push-28 {
  position: relative;
  left: 87.5%;
}

.small-pull-28 {
  position: relative;
  left: -87.5%;
}

.small-offset-27 {
  margin-left: 84.375%;
}

.small-29 {
  width: 90.625%;
}

.small-push-29 {
  position: relative;
  left: 90.625%;
}

.small-pull-29 {
  position: relative;
  left: -90.625%;
}

.small-offset-28 {
  margin-left: 87.5%;
}

.small-30 {
  width: 93.75%;
}

.small-push-30 {
  position: relative;
  left: 93.75%;
}

.small-pull-30 {
  position: relative;
  left: -93.75%;
}

.small-offset-29 {
  margin-left: 90.625%;
}

.small-31 {
  width: 96.875%;
}

.small-push-31 {
  position: relative;
  left: 96.875%;
}

.small-pull-31 {
  position: relative;
  left: -96.875%;
}

.small-offset-30 {
  margin-left: 93.75%;
}

.small-32 {
  width: 100%;
}

.small-offset-31 {
  margin-left: 96.875%;
}

.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.3125rem;
  padding-left: 0.3125rem;
}

.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: 30em) {
  .medium-small-1 {
    width: 3.125%;
  }
  .medium-small-push-1 {
    position: relative;
    left: 3.125%;
  }
  .medium-small-pull-1 {
    position: relative;
    left: -3.125%;
  }
  .medium-small-offset-0 {
    margin-left: 0%;
  }
  .medium-small-2 {
    width: 6.25%;
  }
  .medium-small-push-2 {
    position: relative;
    left: 6.25%;
  }
  .medium-small-pull-2 {
    position: relative;
    left: -6.25%;
  }
  .medium-small-offset-1 {
    margin-left: 3.125%;
  }
  .medium-small-3 {
    width: 9.375%;
  }
  .medium-small-push-3 {
    position: relative;
    left: 9.375%;
  }
  .medium-small-pull-3 {
    position: relative;
    left: -9.375%;
  }
  .medium-small-offset-2 {
    margin-left: 6.25%;
  }
  .medium-small-4 {
    width: 12.5%;
  }
  .medium-small-push-4 {
    position: relative;
    left: 12.5%;
  }
  .medium-small-pull-4 {
    position: relative;
    left: -12.5%;
  }
  .medium-small-offset-3 {
    margin-left: 9.375%;
  }
  .medium-small-5 {
    width: 15.625%;
  }
  .medium-small-push-5 {
    position: relative;
    left: 15.625%;
  }
  .medium-small-pull-5 {
    position: relative;
    left: -15.625%;
  }
  .medium-small-offset-4 {
    margin-left: 12.5%;
  }
  .medium-small-6 {
    width: 18.75%;
  }
  .medium-small-push-6 {
    position: relative;
    left: 18.75%;
  }
  .medium-small-pull-6 {
    position: relative;
    left: -18.75%;
  }
  .medium-small-offset-5 {
    margin-left: 15.625%;
  }
  .medium-small-7 {
    width: 21.875%;
  }
  .medium-small-push-7 {
    position: relative;
    left: 21.875%;
  }
  .medium-small-pull-7 {
    position: relative;
    left: -21.875%;
  }
  .medium-small-offset-6 {
    margin-left: 18.75%;
  }
  .medium-small-8 {
    width: 25%;
  }
  .medium-small-push-8 {
    position: relative;
    left: 25%;
  }
  .medium-small-pull-8 {
    position: relative;
    left: -25%;
  }
  .medium-small-offset-7 {
    margin-left: 21.875%;
  }
  .medium-small-9 {
    width: 28.125%;
  }
  .medium-small-push-9 {
    position: relative;
    left: 28.125%;
  }
  .medium-small-pull-9 {
    position: relative;
    left: -28.125%;
  }
  .medium-small-offset-8 {
    margin-left: 25%;
  }
  .medium-small-10 {
    width: 31.25%;
  }
  .medium-small-push-10 {
    position: relative;
    left: 31.25%;
  }
  .medium-small-pull-10 {
    position: relative;
    left: -31.25%;
  }
  .medium-small-offset-9 {
    margin-left: 28.125%;
  }
  .medium-small-11 {
    width: 34.375%;
  }
  .medium-small-push-11 {
    position: relative;
    left: 34.375%;
  }
  .medium-small-pull-11 {
    position: relative;
    left: -34.375%;
  }
  .medium-small-offset-10 {
    margin-left: 31.25%;
  }
  .medium-small-12 {
    width: 37.5%;
  }
  .medium-small-push-12 {
    position: relative;
    left: 37.5%;
  }
  .medium-small-pull-12 {
    position: relative;
    left: -37.5%;
  }
  .medium-small-offset-11 {
    margin-left: 34.375%;
  }
  .medium-small-13 {
    width: 40.625%;
  }
  .medium-small-push-13 {
    position: relative;
    left: 40.625%;
  }
  .medium-small-pull-13 {
    position: relative;
    left: -40.625%;
  }
  .medium-small-offset-12 {
    margin-left: 37.5%;
  }
  .medium-small-14 {
    width: 43.75%;
  }
  .medium-small-push-14 {
    position: relative;
    left: 43.75%;
  }
  .medium-small-pull-14 {
    position: relative;
    left: -43.75%;
  }
  .medium-small-offset-13 {
    margin-left: 40.625%;
  }
  .medium-small-15 {
    width: 46.875%;
  }
  .medium-small-push-15 {
    position: relative;
    left: 46.875%;
  }
  .medium-small-pull-15 {
    position: relative;
    left: -46.875%;
  }
  .medium-small-offset-14 {
    margin-left: 43.75%;
  }
  .medium-small-16 {
    width: 50%;
  }
  .medium-small-push-16 {
    position: relative;
    left: 50%;
  }
  .medium-small-pull-16 {
    position: relative;
    left: -50%;
  }
  .medium-small-offset-15 {
    margin-left: 46.875%;
  }
  .medium-small-17 {
    width: 53.125%;
  }
  .medium-small-push-17 {
    position: relative;
    left: 53.125%;
  }
  .medium-small-pull-17 {
    position: relative;
    left: -53.125%;
  }
  .medium-small-offset-16 {
    margin-left: 50%;
  }
  .medium-small-18 {
    width: 56.25%;
  }
  .medium-small-push-18 {
    position: relative;
    left: 56.25%;
  }
  .medium-small-pull-18 {
    position: relative;
    left: -56.25%;
  }
  .medium-small-offset-17 {
    margin-left: 53.125%;
  }
  .medium-small-19 {
    width: 59.375%;
  }
  .medium-small-push-19 {
    position: relative;
    left: 59.375%;
  }
  .medium-small-pull-19 {
    position: relative;
    left: -59.375%;
  }
  .medium-small-offset-18 {
    margin-left: 56.25%;
  }
  .medium-small-20 {
    width: 62.5%;
  }
  .medium-small-push-20 {
    position: relative;
    left: 62.5%;
  }
  .medium-small-pull-20 {
    position: relative;
    left: -62.5%;
  }
  .medium-small-offset-19 {
    margin-left: 59.375%;
  }
  .medium-small-21 {
    width: 65.625%;
  }
  .medium-small-push-21 {
    position: relative;
    left: 65.625%;
  }
  .medium-small-pull-21 {
    position: relative;
    left: -65.625%;
  }
  .medium-small-offset-20 {
    margin-left: 62.5%;
  }
  .medium-small-22 {
    width: 68.75%;
  }
  .medium-small-push-22 {
    position: relative;
    left: 68.75%;
  }
  .medium-small-pull-22 {
    position: relative;
    left: -68.75%;
  }
  .medium-small-offset-21 {
    margin-left: 65.625%;
  }
  .medium-small-23 {
    width: 71.875%;
  }
  .medium-small-push-23 {
    position: relative;
    left: 71.875%;
  }
  .medium-small-pull-23 {
    position: relative;
    left: -71.875%;
  }
  .medium-small-offset-22 {
    margin-left: 68.75%;
  }
  .medium-small-24 {
    width: 75%;
  }
  .medium-small-push-24 {
    position: relative;
    left: 75%;
  }
  .medium-small-pull-24 {
    position: relative;
    left: -75%;
  }
  .medium-small-offset-23 {
    margin-left: 71.875%;
  }
  .medium-small-25 {
    width: 78.125%;
  }
  .medium-small-push-25 {
    position: relative;
    left: 78.125%;
  }
  .medium-small-pull-25 {
    position: relative;
    left: -78.125%;
  }
  .medium-small-offset-24 {
    margin-left: 75%;
  }
  .medium-small-26 {
    width: 81.25%;
  }
  .medium-small-push-26 {
    position: relative;
    left: 81.25%;
  }
  .medium-small-pull-26 {
    position: relative;
    left: -81.25%;
  }
  .medium-small-offset-25 {
    margin-left: 78.125%;
  }
  .medium-small-27 {
    width: 84.375%;
  }
  .medium-small-push-27 {
    position: relative;
    left: 84.375%;
  }
  .medium-small-pull-27 {
    position: relative;
    left: -84.375%;
  }
  .medium-small-offset-26 {
    margin-left: 81.25%;
  }
  .medium-small-28 {
    width: 87.5%;
  }
  .medium-small-push-28 {
    position: relative;
    left: 87.5%;
  }
  .medium-small-pull-28 {
    position: relative;
    left: -87.5%;
  }
  .medium-small-offset-27 {
    margin-left: 84.375%;
  }
  .medium-small-29 {
    width: 90.625%;
  }
  .medium-small-push-29 {
    position: relative;
    left: 90.625%;
  }
  .medium-small-pull-29 {
    position: relative;
    left: -90.625%;
  }
  .medium-small-offset-28 {
    margin-left: 87.5%;
  }
  .medium-small-30 {
    width: 93.75%;
  }
  .medium-small-push-30 {
    position: relative;
    left: 93.75%;
  }
  .medium-small-pull-30 {
    position: relative;
    left: -93.75%;
  }
  .medium-small-offset-29 {
    margin-left: 90.625%;
  }
  .medium-small-31 {
    width: 96.875%;
  }
  .medium-small-push-31 {
    position: relative;
    left: 96.875%;
  }
  .medium-small-pull-31 {
    position: relative;
    left: -96.875%;
  }
  .medium-small-offset-30 {
    margin-left: 93.75%;
  }
  .medium-small-32 {
    width: 100%;
  }
  .medium-small-offset-31 {
    margin-left: 96.875%;
  }
  .medium-small-up-1 > .column, .medium-small-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .medium-small-up-1 > .column:nth-of-type(1n), .medium-small-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-small-up-1 > .column:nth-of-type(1n+1), .medium-small-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .medium-small-up-1 > .column:last-child, .medium-small-up-1 > .columns:last-child {
    float: left;
  }
  .medium-small-up-2 > .column, .medium-small-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .medium-small-up-2 > .column:nth-of-type(1n), .medium-small-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-small-up-2 > .column:nth-of-type(2n+1), .medium-small-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .medium-small-up-2 > .column:last-child, .medium-small-up-2 > .columns:last-child {
    float: left;
  }
  .medium-small-up-3 > .column, .medium-small-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .medium-small-up-3 > .column:nth-of-type(1n), .medium-small-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-small-up-3 > .column:nth-of-type(3n+1), .medium-small-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .medium-small-up-3 > .column:last-child, .medium-small-up-3 > .columns:last-child {
    float: left;
  }
  .medium-small-up-4 > .column, .medium-small-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .medium-small-up-4 > .column:nth-of-type(1n), .medium-small-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-small-up-4 > .column:nth-of-type(4n+1), .medium-small-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .medium-small-up-4 > .column:last-child, .medium-small-up-4 > .columns:last-child {
    float: left;
  }
  .medium-small-up-5 > .column, .medium-small-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .medium-small-up-5 > .column:nth-of-type(1n), .medium-small-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-small-up-5 > .column:nth-of-type(5n+1), .medium-small-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .medium-small-up-5 > .column:last-child, .medium-small-up-5 > .columns:last-child {
    float: left;
  }
  .medium-small-up-6 > .column, .medium-small-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .medium-small-up-6 > .column:nth-of-type(1n), .medium-small-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-small-up-6 > .column:nth-of-type(6n+1), .medium-small-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .medium-small-up-6 > .column:last-child, .medium-small-up-6 > .columns:last-child {
    float: left;
  }
  .medium-small-up-7 > .column, .medium-small-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .medium-small-up-7 > .column:nth-of-type(1n), .medium-small-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-small-up-7 > .column:nth-of-type(7n+1), .medium-small-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .medium-small-up-7 > .column:last-child, .medium-small-up-7 > .columns:last-child {
    float: left;
  }
  .medium-small-up-8 > .column, .medium-small-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .medium-small-up-8 > .column:nth-of-type(1n), .medium-small-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-small-up-8 > .column:nth-of-type(8n+1), .medium-small-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .medium-small-up-8 > .column:last-child, .medium-small-up-8 > .columns:last-child {
    float: left;
  }
  .medium-small-collapse > .column, .medium-small-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .medium-small-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .medium-small-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .medium-small-uncollapse > .column, .medium-small-uncollapse > .columns {
    padding-right: 0.3125rem;
    padding-left: 0.3125rem;
  }
  .medium-small-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .medium-small-centered, .medium-small-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .medium-small-uncentered,
  .medium-small-push-0,
  .medium-small-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media print, screen and (min-width: 40em) {
  .medium-1 {
    width: 3.125%;
  }
  .medium-push-1 {
    position: relative;
    left: 3.125%;
  }
  .medium-pull-1 {
    position: relative;
    left: -3.125%;
  }
  .medium-offset-0 {
    margin-left: 0%;
  }
  .medium-2 {
    width: 6.25%;
  }
  .medium-push-2 {
    position: relative;
    left: 6.25%;
  }
  .medium-pull-2 {
    position: relative;
    left: -6.25%;
  }
  .medium-offset-1 {
    margin-left: 3.125%;
  }
  .medium-3 {
    width: 9.375%;
  }
  .medium-push-3 {
    position: relative;
    left: 9.375%;
  }
  .medium-pull-3 {
    position: relative;
    left: -9.375%;
  }
  .medium-offset-2 {
    margin-left: 6.25%;
  }
  .medium-4 {
    width: 12.5%;
  }
  .medium-push-4 {
    position: relative;
    left: 12.5%;
  }
  .medium-pull-4 {
    position: relative;
    left: -12.5%;
  }
  .medium-offset-3 {
    margin-left: 9.375%;
  }
  .medium-5 {
    width: 15.625%;
  }
  .medium-push-5 {
    position: relative;
    left: 15.625%;
  }
  .medium-pull-5 {
    position: relative;
    left: -15.625%;
  }
  .medium-offset-4 {
    margin-left: 12.5%;
  }
  .medium-6 {
    width: 18.75%;
  }
  .medium-push-6 {
    position: relative;
    left: 18.75%;
  }
  .medium-pull-6 {
    position: relative;
    left: -18.75%;
  }
  .medium-offset-5 {
    margin-left: 15.625%;
  }
  .medium-7 {
    width: 21.875%;
  }
  .medium-push-7 {
    position: relative;
    left: 21.875%;
  }
  .medium-pull-7 {
    position: relative;
    left: -21.875%;
  }
  .medium-offset-6 {
    margin-left: 18.75%;
  }
  .medium-8 {
    width: 25%;
  }
  .medium-push-8 {
    position: relative;
    left: 25%;
  }
  .medium-pull-8 {
    position: relative;
    left: -25%;
  }
  .medium-offset-7 {
    margin-left: 21.875%;
  }
  .medium-9 {
    width: 28.125%;
  }
  .medium-push-9 {
    position: relative;
    left: 28.125%;
  }
  .medium-pull-9 {
    position: relative;
    left: -28.125%;
  }
  .medium-offset-8 {
    margin-left: 25%;
  }
  .medium-10 {
    width: 31.25%;
  }
  .medium-push-10 {
    position: relative;
    left: 31.25%;
  }
  .medium-pull-10 {
    position: relative;
    left: -31.25%;
  }
  .medium-offset-9 {
    margin-left: 28.125%;
  }
  .medium-11 {
    width: 34.375%;
  }
  .medium-push-11 {
    position: relative;
    left: 34.375%;
  }
  .medium-pull-11 {
    position: relative;
    left: -34.375%;
  }
  .medium-offset-10 {
    margin-left: 31.25%;
  }
  .medium-12 {
    width: 37.5%;
  }
  .medium-push-12 {
    position: relative;
    left: 37.5%;
  }
  .medium-pull-12 {
    position: relative;
    left: -37.5%;
  }
  .medium-offset-11 {
    margin-left: 34.375%;
  }
  .medium-13 {
    width: 40.625%;
  }
  .medium-push-13 {
    position: relative;
    left: 40.625%;
  }
  .medium-pull-13 {
    position: relative;
    left: -40.625%;
  }
  .medium-offset-12 {
    margin-left: 37.5%;
  }
  .medium-14 {
    width: 43.75%;
  }
  .medium-push-14 {
    position: relative;
    left: 43.75%;
  }
  .medium-pull-14 {
    position: relative;
    left: -43.75%;
  }
  .medium-offset-13 {
    margin-left: 40.625%;
  }
  .medium-15 {
    width: 46.875%;
  }
  .medium-push-15 {
    position: relative;
    left: 46.875%;
  }
  .medium-pull-15 {
    position: relative;
    left: -46.875%;
  }
  .medium-offset-14 {
    margin-left: 43.75%;
  }
  .medium-16 {
    width: 50%;
  }
  .medium-push-16 {
    position: relative;
    left: 50%;
  }
  .medium-pull-16 {
    position: relative;
    left: -50%;
  }
  .medium-offset-15 {
    margin-left: 46.875%;
  }
  .medium-17 {
    width: 53.125%;
  }
  .medium-push-17 {
    position: relative;
    left: 53.125%;
  }
  .medium-pull-17 {
    position: relative;
    left: -53.125%;
  }
  .medium-offset-16 {
    margin-left: 50%;
  }
  .medium-18 {
    width: 56.25%;
  }
  .medium-push-18 {
    position: relative;
    left: 56.25%;
  }
  .medium-pull-18 {
    position: relative;
    left: -56.25%;
  }
  .medium-offset-17 {
    margin-left: 53.125%;
  }
  .medium-19 {
    width: 59.375%;
  }
  .medium-push-19 {
    position: relative;
    left: 59.375%;
  }
  .medium-pull-19 {
    position: relative;
    left: -59.375%;
  }
  .medium-offset-18 {
    margin-left: 56.25%;
  }
  .medium-20 {
    width: 62.5%;
  }
  .medium-push-20 {
    position: relative;
    left: 62.5%;
  }
  .medium-pull-20 {
    position: relative;
    left: -62.5%;
  }
  .medium-offset-19 {
    margin-left: 59.375%;
  }
  .medium-21 {
    width: 65.625%;
  }
  .medium-push-21 {
    position: relative;
    left: 65.625%;
  }
  .medium-pull-21 {
    position: relative;
    left: -65.625%;
  }
  .medium-offset-20 {
    margin-left: 62.5%;
  }
  .medium-22 {
    width: 68.75%;
  }
  .medium-push-22 {
    position: relative;
    left: 68.75%;
  }
  .medium-pull-22 {
    position: relative;
    left: -68.75%;
  }
  .medium-offset-21 {
    margin-left: 65.625%;
  }
  .medium-23 {
    width: 71.875%;
  }
  .medium-push-23 {
    position: relative;
    left: 71.875%;
  }
  .medium-pull-23 {
    position: relative;
    left: -71.875%;
  }
  .medium-offset-22 {
    margin-left: 68.75%;
  }
  .medium-24 {
    width: 75%;
  }
  .medium-push-24 {
    position: relative;
    left: 75%;
  }
  .medium-pull-24 {
    position: relative;
    left: -75%;
  }
  .medium-offset-23 {
    margin-left: 71.875%;
  }
  .medium-25 {
    width: 78.125%;
  }
  .medium-push-25 {
    position: relative;
    left: 78.125%;
  }
  .medium-pull-25 {
    position: relative;
    left: -78.125%;
  }
  .medium-offset-24 {
    margin-left: 75%;
  }
  .medium-26 {
    width: 81.25%;
  }
  .medium-push-26 {
    position: relative;
    left: 81.25%;
  }
  .medium-pull-26 {
    position: relative;
    left: -81.25%;
  }
  .medium-offset-25 {
    margin-left: 78.125%;
  }
  .medium-27 {
    width: 84.375%;
  }
  .medium-push-27 {
    position: relative;
    left: 84.375%;
  }
  .medium-pull-27 {
    position: relative;
    left: -84.375%;
  }
  .medium-offset-26 {
    margin-left: 81.25%;
  }
  .medium-28 {
    width: 87.5%;
  }
  .medium-push-28 {
    position: relative;
    left: 87.5%;
  }
  .medium-pull-28 {
    position: relative;
    left: -87.5%;
  }
  .medium-offset-27 {
    margin-left: 84.375%;
  }
  .medium-29 {
    width: 90.625%;
  }
  .medium-push-29 {
    position: relative;
    left: 90.625%;
  }
  .medium-pull-29 {
    position: relative;
    left: -90.625%;
  }
  .medium-offset-28 {
    margin-left: 87.5%;
  }
  .medium-30 {
    width: 93.75%;
  }
  .medium-push-30 {
    position: relative;
    left: 93.75%;
  }
  .medium-pull-30 {
    position: relative;
    left: -93.75%;
  }
  .medium-offset-29 {
    margin-left: 90.625%;
  }
  .medium-31 {
    width: 96.875%;
  }
  .medium-push-31 {
    position: relative;
    left: 96.875%;
  }
  .medium-pull-31 {
    position: relative;
    left: -96.875%;
  }
  .medium-offset-30 {
    margin-left: 93.75%;
  }
  .medium-32 {
    width: 100%;
  }
  .medium-offset-31 {
    margin-left: 96.875%;
  }
  .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.21875rem;
    padding-left: 0.21875rem;
  }
  .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 screen and (min-width: 64em) {
  .large-medium-1 {
    width: 3.125%;
  }
  .large-medium-push-1 {
    position: relative;
    left: 3.125%;
  }
  .large-medium-pull-1 {
    position: relative;
    left: -3.125%;
  }
  .large-medium-offset-0 {
    margin-left: 0%;
  }
  .large-medium-2 {
    width: 6.25%;
  }
  .large-medium-push-2 {
    position: relative;
    left: 6.25%;
  }
  .large-medium-pull-2 {
    position: relative;
    left: -6.25%;
  }
  .large-medium-offset-1 {
    margin-left: 3.125%;
  }
  .large-medium-3 {
    width: 9.375%;
  }
  .large-medium-push-3 {
    position: relative;
    left: 9.375%;
  }
  .large-medium-pull-3 {
    position: relative;
    left: -9.375%;
  }
  .large-medium-offset-2 {
    margin-left: 6.25%;
  }
  .large-medium-4 {
    width: 12.5%;
  }
  .large-medium-push-4 {
    position: relative;
    left: 12.5%;
  }
  .large-medium-pull-4 {
    position: relative;
    left: -12.5%;
  }
  .large-medium-offset-3 {
    margin-left: 9.375%;
  }
  .large-medium-5 {
    width: 15.625%;
  }
  .large-medium-push-5 {
    position: relative;
    left: 15.625%;
  }
  .large-medium-pull-5 {
    position: relative;
    left: -15.625%;
  }
  .large-medium-offset-4 {
    margin-left: 12.5%;
  }
  .large-medium-6 {
    width: 18.75%;
  }
  .large-medium-push-6 {
    position: relative;
    left: 18.75%;
  }
  .large-medium-pull-6 {
    position: relative;
    left: -18.75%;
  }
  .large-medium-offset-5 {
    margin-left: 15.625%;
  }
  .large-medium-7 {
    width: 21.875%;
  }
  .large-medium-push-7 {
    position: relative;
    left: 21.875%;
  }
  .large-medium-pull-7 {
    position: relative;
    left: -21.875%;
  }
  .large-medium-offset-6 {
    margin-left: 18.75%;
  }
  .large-medium-8 {
    width: 25%;
  }
  .large-medium-push-8 {
    position: relative;
    left: 25%;
  }
  .large-medium-pull-8 {
    position: relative;
    left: -25%;
  }
  .large-medium-offset-7 {
    margin-left: 21.875%;
  }
  .large-medium-9 {
    width: 28.125%;
  }
  .large-medium-push-9 {
    position: relative;
    left: 28.125%;
  }
  .large-medium-pull-9 {
    position: relative;
    left: -28.125%;
  }
  .large-medium-offset-8 {
    margin-left: 25%;
  }
  .large-medium-10 {
    width: 31.25%;
  }
  .large-medium-push-10 {
    position: relative;
    left: 31.25%;
  }
  .large-medium-pull-10 {
    position: relative;
    left: -31.25%;
  }
  .large-medium-offset-9 {
    margin-left: 28.125%;
  }
  .large-medium-11 {
    width: 34.375%;
  }
  .large-medium-push-11 {
    position: relative;
    left: 34.375%;
  }
  .large-medium-pull-11 {
    position: relative;
    left: -34.375%;
  }
  .large-medium-offset-10 {
    margin-left: 31.25%;
  }
  .large-medium-12 {
    width: 37.5%;
  }
  .large-medium-push-12 {
    position: relative;
    left: 37.5%;
  }
  .large-medium-pull-12 {
    position: relative;
    left: -37.5%;
  }
  .large-medium-offset-11 {
    margin-left: 34.375%;
  }
  .large-medium-13 {
    width: 40.625%;
  }
  .large-medium-push-13 {
    position: relative;
    left: 40.625%;
  }
  .large-medium-pull-13 {
    position: relative;
    left: -40.625%;
  }
  .large-medium-offset-12 {
    margin-left: 37.5%;
  }
  .large-medium-14 {
    width: 43.75%;
  }
  .large-medium-push-14 {
    position: relative;
    left: 43.75%;
  }
  .large-medium-pull-14 {
    position: relative;
    left: -43.75%;
  }
  .large-medium-offset-13 {
    margin-left: 40.625%;
  }
  .large-medium-15 {
    width: 46.875%;
  }
  .large-medium-push-15 {
    position: relative;
    left: 46.875%;
  }
  .large-medium-pull-15 {
    position: relative;
    left: -46.875%;
  }
  .large-medium-offset-14 {
    margin-left: 43.75%;
  }
  .large-medium-16 {
    width: 50%;
  }
  .large-medium-push-16 {
    position: relative;
    left: 50%;
  }
  .large-medium-pull-16 {
    position: relative;
    left: -50%;
  }
  .large-medium-offset-15 {
    margin-left: 46.875%;
  }
  .large-medium-17 {
    width: 53.125%;
  }
  .large-medium-push-17 {
    position: relative;
    left: 53.125%;
  }
  .large-medium-pull-17 {
    position: relative;
    left: -53.125%;
  }
  .large-medium-offset-16 {
    margin-left: 50%;
  }
  .large-medium-18 {
    width: 56.25%;
  }
  .large-medium-push-18 {
    position: relative;
    left: 56.25%;
  }
  .large-medium-pull-18 {
    position: relative;
    left: -56.25%;
  }
  .large-medium-offset-17 {
    margin-left: 53.125%;
  }
  .large-medium-19 {
    width: 59.375%;
  }
  .large-medium-push-19 {
    position: relative;
    left: 59.375%;
  }
  .large-medium-pull-19 {
    position: relative;
    left: -59.375%;
  }
  .large-medium-offset-18 {
    margin-left: 56.25%;
  }
  .large-medium-20 {
    width: 62.5%;
  }
  .large-medium-push-20 {
    position: relative;
    left: 62.5%;
  }
  .large-medium-pull-20 {
    position: relative;
    left: -62.5%;
  }
  .large-medium-offset-19 {
    margin-left: 59.375%;
  }
  .large-medium-21 {
    width: 65.625%;
  }
  .large-medium-push-21 {
    position: relative;
    left: 65.625%;
  }
  .large-medium-pull-21 {
    position: relative;
    left: -65.625%;
  }
  .large-medium-offset-20 {
    margin-left: 62.5%;
  }
  .large-medium-22 {
    width: 68.75%;
  }
  .large-medium-push-22 {
    position: relative;
    left: 68.75%;
  }
  .large-medium-pull-22 {
    position: relative;
    left: -68.75%;
  }
  .large-medium-offset-21 {
    margin-left: 65.625%;
  }
  .large-medium-23 {
    width: 71.875%;
  }
  .large-medium-push-23 {
    position: relative;
    left: 71.875%;
  }
  .large-medium-pull-23 {
    position: relative;
    left: -71.875%;
  }
  .large-medium-offset-22 {
    margin-left: 68.75%;
  }
  .large-medium-24 {
    width: 75%;
  }
  .large-medium-push-24 {
    position: relative;
    left: 75%;
  }
  .large-medium-pull-24 {
    position: relative;
    left: -75%;
  }
  .large-medium-offset-23 {
    margin-left: 71.875%;
  }
  .large-medium-25 {
    width: 78.125%;
  }
  .large-medium-push-25 {
    position: relative;
    left: 78.125%;
  }
  .large-medium-pull-25 {
    position: relative;
    left: -78.125%;
  }
  .large-medium-offset-24 {
    margin-left: 75%;
  }
  .large-medium-26 {
    width: 81.25%;
  }
  .large-medium-push-26 {
    position: relative;
    left: 81.25%;
  }
  .large-medium-pull-26 {
    position: relative;
    left: -81.25%;
  }
  .large-medium-offset-25 {
    margin-left: 78.125%;
  }
  .large-medium-27 {
    width: 84.375%;
  }
  .large-medium-push-27 {
    position: relative;
    left: 84.375%;
  }
  .large-medium-pull-27 {
    position: relative;
    left: -84.375%;
  }
  .large-medium-offset-26 {
    margin-left: 81.25%;
  }
  .large-medium-28 {
    width: 87.5%;
  }
  .large-medium-push-28 {
    position: relative;
    left: 87.5%;
  }
  .large-medium-pull-28 {
    position: relative;
    left: -87.5%;
  }
  .large-medium-offset-27 {
    margin-left: 84.375%;
  }
  .large-medium-29 {
    width: 90.625%;
  }
  .large-medium-push-29 {
    position: relative;
    left: 90.625%;
  }
  .large-medium-pull-29 {
    position: relative;
    left: -90.625%;
  }
  .large-medium-offset-28 {
    margin-left: 87.5%;
  }
  .large-medium-30 {
    width: 93.75%;
  }
  .large-medium-push-30 {
    position: relative;
    left: 93.75%;
  }
  .large-medium-pull-30 {
    position: relative;
    left: -93.75%;
  }
  .large-medium-offset-29 {
    margin-left: 90.625%;
  }
  .large-medium-31 {
    width: 96.875%;
  }
  .large-medium-push-31 {
    position: relative;
    left: 96.875%;
  }
  .large-medium-pull-31 {
    position: relative;
    left: -96.875%;
  }
  .large-medium-offset-30 {
    margin-left: 93.75%;
  }
  .large-medium-32 {
    width: 100%;
  }
  .large-medium-offset-31 {
    margin-left: 96.875%;
  }
  .large-medium-up-1 > .column, .large-medium-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .large-medium-up-1 > .column:nth-of-type(1n), .large-medium-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-medium-up-1 > .column:nth-of-type(1n+1), .large-medium-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .large-medium-up-1 > .column:last-child, .large-medium-up-1 > .columns:last-child {
    float: left;
  }
  .large-medium-up-2 > .column, .large-medium-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .large-medium-up-2 > .column:nth-of-type(1n), .large-medium-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-medium-up-2 > .column:nth-of-type(2n+1), .large-medium-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .large-medium-up-2 > .column:last-child, .large-medium-up-2 > .columns:last-child {
    float: left;
  }
  .large-medium-up-3 > .column, .large-medium-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .large-medium-up-3 > .column:nth-of-type(1n), .large-medium-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-medium-up-3 > .column:nth-of-type(3n+1), .large-medium-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .large-medium-up-3 > .column:last-child, .large-medium-up-3 > .columns:last-child {
    float: left;
  }
  .large-medium-up-4 > .column, .large-medium-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .large-medium-up-4 > .column:nth-of-type(1n), .large-medium-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-medium-up-4 > .column:nth-of-type(4n+1), .large-medium-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .large-medium-up-4 > .column:last-child, .large-medium-up-4 > .columns:last-child {
    float: left;
  }
  .large-medium-up-5 > .column, .large-medium-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .large-medium-up-5 > .column:nth-of-type(1n), .large-medium-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-medium-up-5 > .column:nth-of-type(5n+1), .large-medium-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .large-medium-up-5 > .column:last-child, .large-medium-up-5 > .columns:last-child {
    float: left;
  }
  .large-medium-up-6 > .column, .large-medium-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .large-medium-up-6 > .column:nth-of-type(1n), .large-medium-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-medium-up-6 > .column:nth-of-type(6n+1), .large-medium-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .large-medium-up-6 > .column:last-child, .large-medium-up-6 > .columns:last-child {
    float: left;
  }
  .large-medium-up-7 > .column, .large-medium-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .large-medium-up-7 > .column:nth-of-type(1n), .large-medium-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-medium-up-7 > .column:nth-of-type(7n+1), .large-medium-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .large-medium-up-7 > .column:last-child, .large-medium-up-7 > .columns:last-child {
    float: left;
  }
  .large-medium-up-8 > .column, .large-medium-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .large-medium-up-8 > .column:nth-of-type(1n), .large-medium-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-medium-up-8 > .column:nth-of-type(8n+1), .large-medium-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .large-medium-up-8 > .column:last-child, .large-medium-up-8 > .columns:last-child {
    float: left;
  }
  .large-medium-collapse > .column, .large-medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .large-medium-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .large-medium-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .large-medium-uncollapse > .column, .large-medium-uncollapse > .columns {
    padding-right: 0.21875rem;
    padding-left: 0.21875rem;
  }
  .large-medium-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .large-medium-centered, .large-medium-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .large-medium-uncentered,
  .large-medium-push-0,
  .large-medium-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (min-width: 72.25em) {
  .large-1 {
    width: 3.125%;
  }
  .large-push-1 {
    position: relative;
    left: 3.125%;
  }
  .large-pull-1 {
    position: relative;
    left: -3.125%;
  }
  .large-offset-0 {
    margin-left: 0%;
  }
  .large-2 {
    width: 6.25%;
  }
  .large-push-2 {
    position: relative;
    left: 6.25%;
  }
  .large-pull-2 {
    position: relative;
    left: -6.25%;
  }
  .large-offset-1 {
    margin-left: 3.125%;
  }
  .large-3 {
    width: 9.375%;
  }
  .large-push-3 {
    position: relative;
    left: 9.375%;
  }
  .large-pull-3 {
    position: relative;
    left: -9.375%;
  }
  .large-offset-2 {
    margin-left: 6.25%;
  }
  .large-4 {
    width: 12.5%;
  }
  .large-push-4 {
    position: relative;
    left: 12.5%;
  }
  .large-pull-4 {
    position: relative;
    left: -12.5%;
  }
  .large-offset-3 {
    margin-left: 9.375%;
  }
  .large-5 {
    width: 15.625%;
  }
  .large-push-5 {
    position: relative;
    left: 15.625%;
  }
  .large-pull-5 {
    position: relative;
    left: -15.625%;
  }
  .large-offset-4 {
    margin-left: 12.5%;
  }
  .large-6 {
    width: 18.75%;
  }
  .large-push-6 {
    position: relative;
    left: 18.75%;
  }
  .large-pull-6 {
    position: relative;
    left: -18.75%;
  }
  .large-offset-5 {
    margin-left: 15.625%;
  }
  .large-7 {
    width: 21.875%;
  }
  .large-push-7 {
    position: relative;
    left: 21.875%;
  }
  .large-pull-7 {
    position: relative;
    left: -21.875%;
  }
  .large-offset-6 {
    margin-left: 18.75%;
  }
  .large-8 {
    width: 25%;
  }
  .large-push-8 {
    position: relative;
    left: 25%;
  }
  .large-pull-8 {
    position: relative;
    left: -25%;
  }
  .large-offset-7 {
    margin-left: 21.875%;
  }
  .large-9 {
    width: 28.125%;
  }
  .large-push-9 {
    position: relative;
    left: 28.125%;
  }
  .large-pull-9 {
    position: relative;
    left: -28.125%;
  }
  .large-offset-8 {
    margin-left: 25%;
  }
  .large-10 {
    width: 31.25%;
  }
  .large-push-10 {
    position: relative;
    left: 31.25%;
  }
  .large-pull-10 {
    position: relative;
    left: -31.25%;
  }
  .large-offset-9 {
    margin-left: 28.125%;
  }
  .large-11 {
    width: 34.375%;
  }
  .large-push-11 {
    position: relative;
    left: 34.375%;
  }
  .large-pull-11 {
    position: relative;
    left: -34.375%;
  }
  .large-offset-10 {
    margin-left: 31.25%;
  }
  .large-12 {
    width: 37.5%;
  }
  .large-push-12 {
    position: relative;
    left: 37.5%;
  }
  .large-pull-12 {
    position: relative;
    left: -37.5%;
  }
  .large-offset-11 {
    margin-left: 34.375%;
  }
  .large-13 {
    width: 40.625%;
  }
  .large-push-13 {
    position: relative;
    left: 40.625%;
  }
  .large-pull-13 {
    position: relative;
    left: -40.625%;
  }
  .large-offset-12 {
    margin-left: 37.5%;
  }
  .large-14 {
    width: 43.75%;
  }
  .large-push-14 {
    position: relative;
    left: 43.75%;
  }
  .large-pull-14 {
    position: relative;
    left: -43.75%;
  }
  .large-offset-13 {
    margin-left: 40.625%;
  }
  .large-15 {
    width: 46.875%;
  }
  .large-push-15 {
    position: relative;
    left: 46.875%;
  }
  .large-pull-15 {
    position: relative;
    left: -46.875%;
  }
  .large-offset-14 {
    margin-left: 43.75%;
  }
  .large-16 {
    width: 50%;
  }
  .large-push-16 {
    position: relative;
    left: 50%;
  }
  .large-pull-16 {
    position: relative;
    left: -50%;
  }
  .large-offset-15 {
    margin-left: 46.875%;
  }
  .large-17 {
    width: 53.125%;
  }
  .large-push-17 {
    position: relative;
    left: 53.125%;
  }
  .large-pull-17 {
    position: relative;
    left: -53.125%;
  }
  .large-offset-16 {
    margin-left: 50%;
  }
  .large-18 {
    width: 56.25%;
  }
  .large-push-18 {
    position: relative;
    left: 56.25%;
  }
  .large-pull-18 {
    position: relative;
    left: -56.25%;
  }
  .large-offset-17 {
    margin-left: 53.125%;
  }
  .large-19 {
    width: 59.375%;
  }
  .large-push-19 {
    position: relative;
    left: 59.375%;
  }
  .large-pull-19 {
    position: relative;
    left: -59.375%;
  }
  .large-offset-18 {
    margin-left: 56.25%;
  }
  .large-20 {
    width: 62.5%;
  }
  .large-push-20 {
    position: relative;
    left: 62.5%;
  }
  .large-pull-20 {
    position: relative;
    left: -62.5%;
  }
  .large-offset-19 {
    margin-left: 59.375%;
  }
  .large-21 {
    width: 65.625%;
  }
  .large-push-21 {
    position: relative;
    left: 65.625%;
  }
  .large-pull-21 {
    position: relative;
    left: -65.625%;
  }
  .large-offset-20 {
    margin-left: 62.5%;
  }
  .large-22 {
    width: 68.75%;
  }
  .large-push-22 {
    position: relative;
    left: 68.75%;
  }
  .large-pull-22 {
    position: relative;
    left: -68.75%;
  }
  .large-offset-21 {
    margin-left: 65.625%;
  }
  .large-23 {
    width: 71.875%;
  }
  .large-push-23 {
    position: relative;
    left: 71.875%;
  }
  .large-pull-23 {
    position: relative;
    left: -71.875%;
  }
  .large-offset-22 {
    margin-left: 68.75%;
  }
  .large-24 {
    width: 75%;
  }
  .large-push-24 {
    position: relative;
    left: 75%;
  }
  .large-pull-24 {
    position: relative;
    left: -75%;
  }
  .large-offset-23 {
    margin-left: 71.875%;
  }
  .large-25 {
    width: 78.125%;
  }
  .large-push-25 {
    position: relative;
    left: 78.125%;
  }
  .large-pull-25 {
    position: relative;
    left: -78.125%;
  }
  .large-offset-24 {
    margin-left: 75%;
  }
  .large-26 {
    width: 81.25%;
  }
  .large-push-26 {
    position: relative;
    left: 81.25%;
  }
  .large-pull-26 {
    position: relative;
    left: -81.25%;
  }
  .large-offset-25 {
    margin-left: 78.125%;
  }
  .large-27 {
    width: 84.375%;
  }
  .large-push-27 {
    position: relative;
    left: 84.375%;
  }
  .large-pull-27 {
    position: relative;
    left: -84.375%;
  }
  .large-offset-26 {
    margin-left: 81.25%;
  }
  .large-28 {
    width: 87.5%;
  }
  .large-push-28 {
    position: relative;
    left: 87.5%;
  }
  .large-pull-28 {
    position: relative;
    left: -87.5%;
  }
  .large-offset-27 {
    margin-left: 84.375%;
  }
  .large-29 {
    width: 90.625%;
  }
  .large-push-29 {
    position: relative;
    left: 90.625%;
  }
  .large-pull-29 {
    position: relative;
    left: -90.625%;
  }
  .large-offset-28 {
    margin-left: 87.5%;
  }
  .large-30 {
    width: 93.75%;
  }
  .large-push-30 {
    position: relative;
    left: 93.75%;
  }
  .large-pull-30 {
    position: relative;
    left: -93.75%;
  }
  .large-offset-29 {
    margin-left: 90.625%;
  }
  .large-31 {
    width: 96.875%;
  }
  .large-push-31 {
    position: relative;
    left: 96.875%;
  }
  .large-pull-31 {
    position: relative;
    left: -96.875%;
  }
  .large-offset-30 {
    margin-left: 93.75%;
  }
  .large-32 {
    width: 100%;
  }
  .large-offset-31 {
    margin-left: 96.875%;
  }
  .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.21875rem;
    padding-left: 0.21875rem;
  }
  .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;
  }
}

@media screen and (min-width: 81.25em) {
  .xlarge-1 {
    width: 3.125%;
  }
  .xlarge-push-1 {
    position: relative;
    left: 3.125%;
  }
  .xlarge-pull-1 {
    position: relative;
    left: -3.125%;
  }
  .xlarge-offset-0 {
    margin-left: 0%;
  }
  .xlarge-2 {
    width: 6.25%;
  }
  .xlarge-push-2 {
    position: relative;
    left: 6.25%;
  }
  .xlarge-pull-2 {
    position: relative;
    left: -6.25%;
  }
  .xlarge-offset-1 {
    margin-left: 3.125%;
  }
  .xlarge-3 {
    width: 9.375%;
  }
  .xlarge-push-3 {
    position: relative;
    left: 9.375%;
  }
  .xlarge-pull-3 {
    position: relative;
    left: -9.375%;
  }
  .xlarge-offset-2 {
    margin-left: 6.25%;
  }
  .xlarge-4 {
    width: 12.5%;
  }
  .xlarge-push-4 {
    position: relative;
    left: 12.5%;
  }
  .xlarge-pull-4 {
    position: relative;
    left: -12.5%;
  }
  .xlarge-offset-3 {
    margin-left: 9.375%;
  }
  .xlarge-5 {
    width: 15.625%;
  }
  .xlarge-push-5 {
    position: relative;
    left: 15.625%;
  }
  .xlarge-pull-5 {
    position: relative;
    left: -15.625%;
  }
  .xlarge-offset-4 {
    margin-left: 12.5%;
  }
  .xlarge-6 {
    width: 18.75%;
  }
  .xlarge-push-6 {
    position: relative;
    left: 18.75%;
  }
  .xlarge-pull-6 {
    position: relative;
    left: -18.75%;
  }
  .xlarge-offset-5 {
    margin-left: 15.625%;
  }
  .xlarge-7 {
    width: 21.875%;
  }
  .xlarge-push-7 {
    position: relative;
    left: 21.875%;
  }
  .xlarge-pull-7 {
    position: relative;
    left: -21.875%;
  }
  .xlarge-offset-6 {
    margin-left: 18.75%;
  }
  .xlarge-8 {
    width: 25%;
  }
  .xlarge-push-8 {
    position: relative;
    left: 25%;
  }
  .xlarge-pull-8 {
    position: relative;
    left: -25%;
  }
  .xlarge-offset-7 {
    margin-left: 21.875%;
  }
  .xlarge-9 {
    width: 28.125%;
  }
  .xlarge-push-9 {
    position: relative;
    left: 28.125%;
  }
  .xlarge-pull-9 {
    position: relative;
    left: -28.125%;
  }
  .xlarge-offset-8 {
    margin-left: 25%;
  }
  .xlarge-10 {
    width: 31.25%;
  }
  .xlarge-push-10 {
    position: relative;
    left: 31.25%;
  }
  .xlarge-pull-10 {
    position: relative;
    left: -31.25%;
  }
  .xlarge-offset-9 {
    margin-left: 28.125%;
  }
  .xlarge-11 {
    width: 34.375%;
  }
  .xlarge-push-11 {
    position: relative;
    left: 34.375%;
  }
  .xlarge-pull-11 {
    position: relative;
    left: -34.375%;
  }
  .xlarge-offset-10 {
    margin-left: 31.25%;
  }
  .xlarge-12 {
    width: 37.5%;
  }
  .xlarge-push-12 {
    position: relative;
    left: 37.5%;
  }
  .xlarge-pull-12 {
    position: relative;
    left: -37.5%;
  }
  .xlarge-offset-11 {
    margin-left: 34.375%;
  }
  .xlarge-13 {
    width: 40.625%;
  }
  .xlarge-push-13 {
    position: relative;
    left: 40.625%;
  }
  .xlarge-pull-13 {
    position: relative;
    left: -40.625%;
  }
  .xlarge-offset-12 {
    margin-left: 37.5%;
  }
  .xlarge-14 {
    width: 43.75%;
  }
  .xlarge-push-14 {
    position: relative;
    left: 43.75%;
  }
  .xlarge-pull-14 {
    position: relative;
    left: -43.75%;
  }
  .xlarge-offset-13 {
    margin-left: 40.625%;
  }
  .xlarge-15 {
    width: 46.875%;
  }
  .xlarge-push-15 {
    position: relative;
    left: 46.875%;
  }
  .xlarge-pull-15 {
    position: relative;
    left: -46.875%;
  }
  .xlarge-offset-14 {
    margin-left: 43.75%;
  }
  .xlarge-16 {
    width: 50%;
  }
  .xlarge-push-16 {
    position: relative;
    left: 50%;
  }
  .xlarge-pull-16 {
    position: relative;
    left: -50%;
  }
  .xlarge-offset-15 {
    margin-left: 46.875%;
  }
  .xlarge-17 {
    width: 53.125%;
  }
  .xlarge-push-17 {
    position: relative;
    left: 53.125%;
  }
  .xlarge-pull-17 {
    position: relative;
    left: -53.125%;
  }
  .xlarge-offset-16 {
    margin-left: 50%;
  }
  .xlarge-18 {
    width: 56.25%;
  }
  .xlarge-push-18 {
    position: relative;
    left: 56.25%;
  }
  .xlarge-pull-18 {
    position: relative;
    left: -56.25%;
  }
  .xlarge-offset-17 {
    margin-left: 53.125%;
  }
  .xlarge-19 {
    width: 59.375%;
  }
  .xlarge-push-19 {
    position: relative;
    left: 59.375%;
  }
  .xlarge-pull-19 {
    position: relative;
    left: -59.375%;
  }
  .xlarge-offset-18 {
    margin-left: 56.25%;
  }
  .xlarge-20 {
    width: 62.5%;
  }
  .xlarge-push-20 {
    position: relative;
    left: 62.5%;
  }
  .xlarge-pull-20 {
    position: relative;
    left: -62.5%;
  }
  .xlarge-offset-19 {
    margin-left: 59.375%;
  }
  .xlarge-21 {
    width: 65.625%;
  }
  .xlarge-push-21 {
    position: relative;
    left: 65.625%;
  }
  .xlarge-pull-21 {
    position: relative;
    left: -65.625%;
  }
  .xlarge-offset-20 {
    margin-left: 62.5%;
  }
  .xlarge-22 {
    width: 68.75%;
  }
  .xlarge-push-22 {
    position: relative;
    left: 68.75%;
  }
  .xlarge-pull-22 {
    position: relative;
    left: -68.75%;
  }
  .xlarge-offset-21 {
    margin-left: 65.625%;
  }
  .xlarge-23 {
    width: 71.875%;
  }
  .xlarge-push-23 {
    position: relative;
    left: 71.875%;
  }
  .xlarge-pull-23 {
    position: relative;
    left: -71.875%;
  }
  .xlarge-offset-22 {
    margin-left: 68.75%;
  }
  .xlarge-24 {
    width: 75%;
  }
  .xlarge-push-24 {
    position: relative;
    left: 75%;
  }
  .xlarge-pull-24 {
    position: relative;
    left: -75%;
  }
  .xlarge-offset-23 {
    margin-left: 71.875%;
  }
  .xlarge-25 {
    width: 78.125%;
  }
  .xlarge-push-25 {
    position: relative;
    left: 78.125%;
  }
  .xlarge-pull-25 {
    position: relative;
    left: -78.125%;
  }
  .xlarge-offset-24 {
    margin-left: 75%;
  }
  .xlarge-26 {
    width: 81.25%;
  }
  .xlarge-push-26 {
    position: relative;
    left: 81.25%;
  }
  .xlarge-pull-26 {
    position: relative;
    left: -81.25%;
  }
  .xlarge-offset-25 {
    margin-left: 78.125%;
  }
  .xlarge-27 {
    width: 84.375%;
  }
  .xlarge-push-27 {
    position: relative;
    left: 84.375%;
  }
  .xlarge-pull-27 {
    position: relative;
    left: -84.375%;
  }
  .xlarge-offset-26 {
    margin-left: 81.25%;
  }
  .xlarge-28 {
    width: 87.5%;
  }
  .xlarge-push-28 {
    position: relative;
    left: 87.5%;
  }
  .xlarge-pull-28 {
    position: relative;
    left: -87.5%;
  }
  .xlarge-offset-27 {
    margin-left: 84.375%;
  }
  .xlarge-29 {
    width: 90.625%;
  }
  .xlarge-push-29 {
    position: relative;
    left: 90.625%;
  }
  .xlarge-pull-29 {
    position: relative;
    left: -90.625%;
  }
  .xlarge-offset-28 {
    margin-left: 87.5%;
  }
  .xlarge-30 {
    width: 93.75%;
  }
  .xlarge-push-30 {
    position: relative;
    left: 93.75%;
  }
  .xlarge-pull-30 {
    position: relative;
    left: -93.75%;
  }
  .xlarge-offset-29 {
    margin-left: 90.625%;
  }
  .xlarge-31 {
    width: 96.875%;
  }
  .xlarge-push-31 {
    position: relative;
    left: 96.875%;
  }
  .xlarge-pull-31 {
    position: relative;
    left: -96.875%;
  }
  .xlarge-offset-30 {
    margin-left: 93.75%;
  }
  .xlarge-32 {
    width: 100%;
  }
  .xlarge-offset-31 {
    margin-left: 96.875%;
  }
  .xlarge-up-1 > .column, .xlarge-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .xlarge-up-1 > .column:nth-of-type(1n), .xlarge-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-1 > .column:nth-of-type(1n+1), .xlarge-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .xlarge-up-1 > .column:last-child, .xlarge-up-1 > .columns:last-child {
    float: left;
  }
  .xlarge-up-2 > .column, .xlarge-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .xlarge-up-2 > .column:nth-of-type(1n), .xlarge-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-2 > .column:nth-of-type(2n+1), .xlarge-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .xlarge-up-2 > .column:last-child, .xlarge-up-2 > .columns:last-child {
    float: left;
  }
  .xlarge-up-3 > .column, .xlarge-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .xlarge-up-3 > .column:nth-of-type(1n), .xlarge-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-3 > .column:nth-of-type(3n+1), .xlarge-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .xlarge-up-3 > .column:last-child, .xlarge-up-3 > .columns:last-child {
    float: left;
  }
  .xlarge-up-4 > .column, .xlarge-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .xlarge-up-4 > .column:nth-of-type(1n), .xlarge-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-4 > .column:nth-of-type(4n+1), .xlarge-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .xlarge-up-4 > .column:last-child, .xlarge-up-4 > .columns:last-child {
    float: left;
  }
  .xlarge-up-5 > .column, .xlarge-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .xlarge-up-5 > .column:nth-of-type(1n), .xlarge-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-5 > .column:nth-of-type(5n+1), .xlarge-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .xlarge-up-5 > .column:last-child, .xlarge-up-5 > .columns:last-child {
    float: left;
  }
  .xlarge-up-6 > .column, .xlarge-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .xlarge-up-6 > .column:nth-of-type(1n), .xlarge-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-6 > .column:nth-of-type(6n+1), .xlarge-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .xlarge-up-6 > .column:last-child, .xlarge-up-6 > .columns:last-child {
    float: left;
  }
  .xlarge-up-7 > .column, .xlarge-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .xlarge-up-7 > .column:nth-of-type(1n), .xlarge-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-7 > .column:nth-of-type(7n+1), .xlarge-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .xlarge-up-7 > .column:last-child, .xlarge-up-7 > .columns:last-child {
    float: left;
  }
  .xlarge-up-8 > .column, .xlarge-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .xlarge-up-8 > .column:nth-of-type(1n), .xlarge-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-8 > .column:nth-of-type(8n+1), .xlarge-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .xlarge-up-8 > .column:last-child, .xlarge-up-8 > .columns:last-child {
    float: left;
  }
  .xlarge-collapse > .column, .xlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .xlarge-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .xlarge-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .xlarge-uncollapse > .column, .xlarge-uncollapse > .columns {
    padding-right: 0.21875rem;
    padding-left: 0.21875rem;
  }
  .xlarge-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .xlarge-centered, .xlarge-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .xlarge-uncentered,
  .xlarge-push-0,
  .xlarge-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (min-width: 87.5em) {
  .xxlarge-1 {
    width: 3.125%;
  }
  .xxlarge-push-1 {
    position: relative;
    left: 3.125%;
  }
  .xxlarge-pull-1 {
    position: relative;
    left: -3.125%;
  }
  .xxlarge-offset-0 {
    margin-left: 0%;
  }
  .xxlarge-2 {
    width: 6.25%;
  }
  .xxlarge-push-2 {
    position: relative;
    left: 6.25%;
  }
  .xxlarge-pull-2 {
    position: relative;
    left: -6.25%;
  }
  .xxlarge-offset-1 {
    margin-left: 3.125%;
  }
  .xxlarge-3 {
    width: 9.375%;
  }
  .xxlarge-push-3 {
    position: relative;
    left: 9.375%;
  }
  .xxlarge-pull-3 {
    position: relative;
    left: -9.375%;
  }
  .xxlarge-offset-2 {
    margin-left: 6.25%;
  }
  .xxlarge-4 {
    width: 12.5%;
  }
  .xxlarge-push-4 {
    position: relative;
    left: 12.5%;
  }
  .xxlarge-pull-4 {
    position: relative;
    left: -12.5%;
  }
  .xxlarge-offset-3 {
    margin-left: 9.375%;
  }
  .xxlarge-5 {
    width: 15.625%;
  }
  .xxlarge-push-5 {
    position: relative;
    left: 15.625%;
  }
  .xxlarge-pull-5 {
    position: relative;
    left: -15.625%;
  }
  .xxlarge-offset-4 {
    margin-left: 12.5%;
  }
  .xxlarge-6 {
    width: 18.75%;
  }
  .xxlarge-push-6 {
    position: relative;
    left: 18.75%;
  }
  .xxlarge-pull-6 {
    position: relative;
    left: -18.75%;
  }
  .xxlarge-offset-5 {
    margin-left: 15.625%;
  }
  .xxlarge-7 {
    width: 21.875%;
  }
  .xxlarge-push-7 {
    position: relative;
    left: 21.875%;
  }
  .xxlarge-pull-7 {
    position: relative;
    left: -21.875%;
  }
  .xxlarge-offset-6 {
    margin-left: 18.75%;
  }
  .xxlarge-8 {
    width: 25%;
  }
  .xxlarge-push-8 {
    position: relative;
    left: 25%;
  }
  .xxlarge-pull-8 {
    position: relative;
    left: -25%;
  }
  .xxlarge-offset-7 {
    margin-left: 21.875%;
  }
  .xxlarge-9 {
    width: 28.125%;
  }
  .xxlarge-push-9 {
    position: relative;
    left: 28.125%;
  }
  .xxlarge-pull-9 {
    position: relative;
    left: -28.125%;
  }
  .xxlarge-offset-8 {
    margin-left: 25%;
  }
  .xxlarge-10 {
    width: 31.25%;
  }
  .xxlarge-push-10 {
    position: relative;
    left: 31.25%;
  }
  .xxlarge-pull-10 {
    position: relative;
    left: -31.25%;
  }
  .xxlarge-offset-9 {
    margin-left: 28.125%;
  }
  .xxlarge-11 {
    width: 34.375%;
  }
  .xxlarge-push-11 {
    position: relative;
    left: 34.375%;
  }
  .xxlarge-pull-11 {
    position: relative;
    left: -34.375%;
  }
  .xxlarge-offset-10 {
    margin-left: 31.25%;
  }
  .xxlarge-12 {
    width: 37.5%;
  }
  .xxlarge-push-12 {
    position: relative;
    left: 37.5%;
  }
  .xxlarge-pull-12 {
    position: relative;
    left: -37.5%;
  }
  .xxlarge-offset-11 {
    margin-left: 34.375%;
  }
  .xxlarge-13 {
    width: 40.625%;
  }
  .xxlarge-push-13 {
    position: relative;
    left: 40.625%;
  }
  .xxlarge-pull-13 {
    position: relative;
    left: -40.625%;
  }
  .xxlarge-offset-12 {
    margin-left: 37.5%;
  }
  .xxlarge-14 {
    width: 43.75%;
  }
  .xxlarge-push-14 {
    position: relative;
    left: 43.75%;
  }
  .xxlarge-pull-14 {
    position: relative;
    left: -43.75%;
  }
  .xxlarge-offset-13 {
    margin-left: 40.625%;
  }
  .xxlarge-15 {
    width: 46.875%;
  }
  .xxlarge-push-15 {
    position: relative;
    left: 46.875%;
  }
  .xxlarge-pull-15 {
    position: relative;
    left: -46.875%;
  }
  .xxlarge-offset-14 {
    margin-left: 43.75%;
  }
  .xxlarge-16 {
    width: 50%;
  }
  .xxlarge-push-16 {
    position: relative;
    left: 50%;
  }
  .xxlarge-pull-16 {
    position: relative;
    left: -50%;
  }
  .xxlarge-offset-15 {
    margin-left: 46.875%;
  }
  .xxlarge-17 {
    width: 53.125%;
  }
  .xxlarge-push-17 {
    position: relative;
    left: 53.125%;
  }
  .xxlarge-pull-17 {
    position: relative;
    left: -53.125%;
  }
  .xxlarge-offset-16 {
    margin-left: 50%;
  }
  .xxlarge-18 {
    width: 56.25%;
  }
  .xxlarge-push-18 {
    position: relative;
    left: 56.25%;
  }
  .xxlarge-pull-18 {
    position: relative;
    left: -56.25%;
  }
  .xxlarge-offset-17 {
    margin-left: 53.125%;
  }
  .xxlarge-19 {
    width: 59.375%;
  }
  .xxlarge-push-19 {
    position: relative;
    left: 59.375%;
  }
  .xxlarge-pull-19 {
    position: relative;
    left: -59.375%;
  }
  .xxlarge-offset-18 {
    margin-left: 56.25%;
  }
  .xxlarge-20 {
    width: 62.5%;
  }
  .xxlarge-push-20 {
    position: relative;
    left: 62.5%;
  }
  .xxlarge-pull-20 {
    position: relative;
    left: -62.5%;
  }
  .xxlarge-offset-19 {
    margin-left: 59.375%;
  }
  .xxlarge-21 {
    width: 65.625%;
  }
  .xxlarge-push-21 {
    position: relative;
    left: 65.625%;
  }
  .xxlarge-pull-21 {
    position: relative;
    left: -65.625%;
  }
  .xxlarge-offset-20 {
    margin-left: 62.5%;
  }
  .xxlarge-22 {
    width: 68.75%;
  }
  .xxlarge-push-22 {
    position: relative;
    left: 68.75%;
  }
  .xxlarge-pull-22 {
    position: relative;
    left: -68.75%;
  }
  .xxlarge-offset-21 {
    margin-left: 65.625%;
  }
  .xxlarge-23 {
    width: 71.875%;
  }
  .xxlarge-push-23 {
    position: relative;
    left: 71.875%;
  }
  .xxlarge-pull-23 {
    position: relative;
    left: -71.875%;
  }
  .xxlarge-offset-22 {
    margin-left: 68.75%;
  }
  .xxlarge-24 {
    width: 75%;
  }
  .xxlarge-push-24 {
    position: relative;
    left: 75%;
  }
  .xxlarge-pull-24 {
    position: relative;
    left: -75%;
  }
  .xxlarge-offset-23 {
    margin-left: 71.875%;
  }
  .xxlarge-25 {
    width: 78.125%;
  }
  .xxlarge-push-25 {
    position: relative;
    left: 78.125%;
  }
  .xxlarge-pull-25 {
    position: relative;
    left: -78.125%;
  }
  .xxlarge-offset-24 {
    margin-left: 75%;
  }
  .xxlarge-26 {
    width: 81.25%;
  }
  .xxlarge-push-26 {
    position: relative;
    left: 81.25%;
  }
  .xxlarge-pull-26 {
    position: relative;
    left: -81.25%;
  }
  .xxlarge-offset-25 {
    margin-left: 78.125%;
  }
  .xxlarge-27 {
    width: 84.375%;
  }
  .xxlarge-push-27 {
    position: relative;
    left: 84.375%;
  }
  .xxlarge-pull-27 {
    position: relative;
    left: -84.375%;
  }
  .xxlarge-offset-26 {
    margin-left: 81.25%;
  }
  .xxlarge-28 {
    width: 87.5%;
  }
  .xxlarge-push-28 {
    position: relative;
    left: 87.5%;
  }
  .xxlarge-pull-28 {
    position: relative;
    left: -87.5%;
  }
  .xxlarge-offset-27 {
    margin-left: 84.375%;
  }
  .xxlarge-29 {
    width: 90.625%;
  }
  .xxlarge-push-29 {
    position: relative;
    left: 90.625%;
  }
  .xxlarge-pull-29 {
    position: relative;
    left: -90.625%;
  }
  .xxlarge-offset-28 {
    margin-left: 87.5%;
  }
  .xxlarge-30 {
    width: 93.75%;
  }
  .xxlarge-push-30 {
    position: relative;
    left: 93.75%;
  }
  .xxlarge-pull-30 {
    position: relative;
    left: -93.75%;
  }
  .xxlarge-offset-29 {
    margin-left: 90.625%;
  }
  .xxlarge-31 {
    width: 96.875%;
  }
  .xxlarge-push-31 {
    position: relative;
    left: 96.875%;
  }
  .xxlarge-pull-31 {
    position: relative;
    left: -96.875%;
  }
  .xxlarge-offset-30 {
    margin-left: 93.75%;
  }
  .xxlarge-32 {
    width: 100%;
  }
  .xxlarge-offset-31 {
    margin-left: 96.875%;
  }
  .xxlarge-up-1 > .column, .xxlarge-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .xxlarge-up-1 > .column:nth-of-type(1n), .xxlarge-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-1 > .column:nth-of-type(1n+1), .xxlarge-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .xxlarge-up-1 > .column:last-child, .xxlarge-up-1 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-2 > .column, .xxlarge-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .xxlarge-up-2 > .column:nth-of-type(1n), .xxlarge-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-2 > .column:nth-of-type(2n+1), .xxlarge-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .xxlarge-up-2 > .column:last-child, .xxlarge-up-2 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-3 > .column, .xxlarge-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .xxlarge-up-3 > .column:nth-of-type(1n), .xxlarge-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-3 > .column:nth-of-type(3n+1), .xxlarge-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .xxlarge-up-3 > .column:last-child, .xxlarge-up-3 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-4 > .column, .xxlarge-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .xxlarge-up-4 > .column:nth-of-type(1n), .xxlarge-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-4 > .column:nth-of-type(4n+1), .xxlarge-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .xxlarge-up-4 > .column:last-child, .xxlarge-up-4 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-5 > .column, .xxlarge-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .xxlarge-up-5 > .column:nth-of-type(1n), .xxlarge-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-5 > .column:nth-of-type(5n+1), .xxlarge-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .xxlarge-up-5 > .column:last-child, .xxlarge-up-5 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-6 > .column, .xxlarge-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .xxlarge-up-6 > .column:nth-of-type(1n), .xxlarge-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-6 > .column:nth-of-type(6n+1), .xxlarge-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .xxlarge-up-6 > .column:last-child, .xxlarge-up-6 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-7 > .column, .xxlarge-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .xxlarge-up-7 > .column:nth-of-type(1n), .xxlarge-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-7 > .column:nth-of-type(7n+1), .xxlarge-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .xxlarge-up-7 > .column:last-child, .xxlarge-up-7 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-8 > .column, .xxlarge-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .xxlarge-up-8 > .column:nth-of-type(1n), .xxlarge-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-8 > .column:nth-of-type(8n+1), .xxlarge-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .xxlarge-up-8 > .column:last-child, .xxlarge-up-8 > .columns:last-child {
    float: left;
  }
  .xxlarge-collapse > .column, .xxlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .xxlarge-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .xxlarge-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .xxlarge-uncollapse > .column, .xxlarge-uncollapse > .columns {
    padding-right: 0.21875rem;
    padding-left: 0.21875rem;
  }
  .xxlarge-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .xxlarge-centered, .xxlarge-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .xxlarge-uncentered,
  .xxlarge-push-0,
  .xxlarge-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

.column-block {
  margin-bottom: 0.625rem;
}

.column-block > :last-child {
  margin-bottom: 0;
}

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

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: 1.25rem;
  font-size: inherit;
  line-height: 1.25;
  text-rendering: optimizeLegibility;
}

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

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

small {
  font-size: 0.8125rem;
  line-height: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Museo Sans Rounded";
  font-style: normal;
  font-weight: "Museo Sans Rounded";
  color: #231f20;
  text-rendering: optimizeLegibility;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  line-height: 0;
  color: #cacaca;
}

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

h2 {
  font-size: 1.125rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 0.375rem;
}

h3 {
  font-size: 1rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 0.375rem;
}

h4 {
  font-size: 0.9375rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 0.375rem;
}

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

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

@media print, screen and (min-width: 40em) {
  h1 {
    font-size: 3rem;
  }
  h2 {
    font-size: 1.5rem;
  }
  h3 {
    font-size: 1.375rem;
  }
  h4 {
    font-size: 0.9375rem;
  }
  h5 {
    font-size: 0.875rem;
  }
  h6 {
    font-size: 0.8125rem;
  }
}

a {
  line-height: inherit;
  color: #13B5EA;
  text-decoration: none;
  cursor: pointer;
}

a:hover, a:focus {
  color: #109cc9;
  text-decoration: underline;
}

a img {
  border: 0;
}

hr {
  clear: both;
  max-width: 72.25rem;
  height: 0;
  margin: 0.9375rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid rgba(10, 10, 10, 0.25);
  border-left: 0;
}

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

li {
  font-size: inherit;
}

ul {
  margin-left: 1rem;
  list-style-type: none;
}

ol {
  margin-left: 1rem;
}

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

dl {
  margin-bottom: 1rem;
}

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

blockquote {
  margin: 0 0 1.25rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca;
}

blockquote, blockquote p {
  line-height: 1.25;
  color: #222;
}

cite {
  display: block;
  font-size: 0.8125rem;
  color: #222;
}

cite:before {
  content: "— ";
}

abbr {
  border-bottom: 1px dotted #0a0a0a;
  color: #231f20;
  cursor: help;
}

figure {
  margin: 0;
}

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

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

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

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

.stat {
  font-size: 2.5rem;
  line-height: 1;
}

p + .stat {
  margin-top: -1rem;
}

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

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

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

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

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

@media print, screen and (min-width: 30em) {
  .medium-small-text-left {
    text-align: left;
  }
  .medium-small-text-right {
    text-align: right;
  }
  .medium-small-text-center {
    text-align: center;
  }
  .medium-small-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 screen and (min-width: 64em) {
  .large-medium-text-left {
    text-align: left;
  }
  .large-medium-text-right {
    text-align: right;
  }
  .large-medium-text-center {
    text-align: center;
  }
  .large-medium-text-justify {
    text-align: justify;
  }
}

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

@media screen and (min-width: 81.25em) {
  .xlarge-text-left {
    text-align: left;
  }
  .xlarge-text-right {
    text-align: right;
  }
  .xlarge-text-center {
    text-align: center;
  }
  .xlarge-text-justify {
    text-align: justify;
  }
}

@media screen and (min-width: 87.5em) {
  .xxlarge-text-left {
    text-align: left;
  }
  .xxlarge-text-right {
    text-align: right;
  }
  .xxlarge-text-center {
    text-align: center;
  }
  .xxlarge-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 #222;
    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;
  }
}

[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.375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #bcbcbc;
  border-radius: 0;
  background-color: #FFFFFF;
  -webkit-box-shadow: none;
  box-shadow: none;
  font-family: Helvetica;
  font-size: 0.9375rem;
  font-weight: 300;
  color: #231f20;
  -webkit-transition: border-color 0.25s ease-in-out;
  transition: border-color 0.25s ease-in-out;
  -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 #107bbf;
  background-color: #FFFFFF;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transition: border-color 0.25s ease-in-out;
  transition: border-color 0.25s ease-in-out;
}

textarea {
  max-width: 100%;
}

textarea[rows] {
  height: auto;
}

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

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

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

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

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #F8F8F8;
  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: 1rem;
  font-weight: 400;
  line-height: 1rem;
  color: #231f20;
}

label.middle {
  margin: 0 0 1rem;
  padding: 0.5625rem 0;
}

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

.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1rem;
}

.input-group > :first-child {
  border-radius: 0 0 0 0;
}

.input-group > :last-child > * {
  border-radius: 0 0 0 0;
}

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

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  width: 1%;
  height: 100%;
}

.input-group-label:first-child {
  border-right: 0;
}

.input-group-label:last-child {
  border-left: 0;
}

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

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  width: 1%;
  height: 100%;
}

.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  height: 2.4375rem;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 0.9375rem;
}

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

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

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

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

.fieldset legend {
  margin: 0;
  margin-left: -0.1875rem;
  padding: 0 0 0 0.75rem;
  background: #FFFFFF;
}

select {
  height: 2.375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #bcbcbc;
  border-radius: 0;
  background-color: #fff;
  font-family: Helvetica;
  font-size: 0.9375rem;
  line-height: normal;
  color: #231f20;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%2834, 34, 34%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  -webkit-transition: border-color 0.25s ease-in-out;
  transition: border-color 0.25s ease-in-out;
}

@media screen and (min-width: 0\0) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}

select:focus {
  outline: none;
  border: 1px solid #107bbf;
  background-color: #FFFFFF;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transition: border-color 0.25s ease-in-out;
  transition: border-color 0.25s ease-in-out;
}

select:disabled {
  background-color: #F8F8F8;
  cursor: not-allowed;
}

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

select[multiple] {
  height: auto;
  background-image: none;
}

.is-invalid-input:not(:focus) {
  border-color: #ff3f57;
  background-color: #ffecee;
}

.is-invalid-input:not(:focus)::-webkit-input-placeholder {
  color: #ff3f57;
}

.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #ff3f57;
}

.is-invalid-input:not(:focus)::-ms-input-placeholder {
  color: #ff3f57;
}

.is-invalid-input:not(:focus)::placeholder {
  color: #ff3f57;
}

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

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

.form-error.is-visible {
  display: block;
}

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.6rem 1rem;
  -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: 1rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #FFFFFF;
  color: #000000;
}

[data-whatinput='mouse'] .button {
  outline: 0;
}

.button:hover, .button:focus {
  background-color: #f2f2f2;
  color: #000000;
}

.button.tiny {
  font-size: 0.6rem;
}

.button.small {
  font-size: 0.75rem;
}

.button.large {
  font-size: 1rem;
}

.button.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}

.button.primary {
  background-color: #1779ba;
  color: #000000;
}

.button.primary:hover, .button.primary:focus {
  background-color: #126195;
  color: #000000;
}

.button.secondary {
  background-color: #767676;
  color: #000000;
}

.button.secondary:hover, .button.secondary:focus {
  background-color: #5e5e5e;
  color: #000000;
}

.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: #ff3f57;
  color: #000000;
}

.button.alert:hover, .button.alert:focus {
  background-color: #fe0020;
  color: #000000;
}

.button.hollow {
  border: 1px solid #1779ba;
  color: #1779ba;
}

.button.hollow, .button.hollow:hover, .button.hollow:focus {
  background-color: transparent;
}

.button.hollow:hover, .button.hollow:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}

.button.hollow.primary {
  border: 1px solid #1779ba;
  color: #1779ba;
}

.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}

.button.hollow.secondary {
  border: 1px solid #767676;
  color: #767676;
}

.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}

.button.hollow.success {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: #157539;
  color: #157539;
}

.button.hollow.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: #805700;
  color: #805700;
}

.button.hollow.alert {
  border: 1px solid #ff3f57;
  color: #ff3f57;
}

.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: #9f0014;
  color: #9f0014;
}

.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
  background-color: #1779ba;
  color: #000000;
}

.button.disabled.primary, .button[disabled].primary {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary:hover, .button[disabled].primary:focus {
  background-color: #1779ba;
  color: #000000;
}

.button.disabled.secondary, .button[disabled].secondary {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
  background-color: #767676;
  color: #000000;
}

.button.disabled.success, .button[disabled].success {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.success:hover, .button.disabled.success:focus, .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:hover, .button.disabled.warning:focus, .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:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
  background-color: #ff3f57;
  color: #000000;
}

.button.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.4em;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #fff transparent transparent;
  position: relative;
  top: 0.4em;
  display: inline-block;
  float: right;
  margin-left: 1rem;
}

.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

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

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

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

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba;
}

:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #e6e6e6;
  border-radius: 0 0 0 0;
}

.accordion-title:hover, .accordion-title:focus {
  background-color: #e6e6e6;
}

.accordion-title::before {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  content: '+';
}

.is-active > .accordion-title::before {
  content: '–';
}

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  background-color: #fff;
  color: #231f20;
}

:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #e6e6e6;
}

.is-accordion-submenu-parent > a {
  position: relative;
}

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

.is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #1779ba;
  color: #fff;
}

.badge.primary {
  background: #1779ba;
  color: #fff;
}

.badge.secondary {
  background: #767676;
  color: #fff;
}

.badge.success {
  background: #3adb76;
  color: #0a0a0a;
}

.badge.warning {
  background: #ffae00;
  color: #0a0a0a;
}

.badge.alert {
  background: #ff3f57;
  color: #0a0a0a;
}

.breadcrumbs {
  margin: 0 0 1rem 0;
  list-style: none;
}

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

.breadcrumbs::after {
  clear: both;
}

.breadcrumbs li {
  float: left;
  font-size: 0.6875rem;
  color: #0a0a0a;
  cursor: default;
  text-transform: uppercase;
}

.breadcrumbs li:not(:last-child)::after {
  position: relative;
  top: 1px;
  margin: 0 0.75rem;
  opacity: 1;
  content: "/";
  color: #cacaca;
}

.breadcrumbs a {
  color: #1779ba;
}

.breadcrumbs a:hover {
  text-decoration: underline;
}

.breadcrumbs .disabled {
  color: #cacaca;
  cursor: not-allowed;
}

.button-group {
  margin-bottom: 1rem;
  font-size: 0;
}

.button-group::before, .button-group::after {
  display: table;
  content: ' ';
}

.button-group::after {
  clear: both;
}

.button-group .button {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 1rem;
}

.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: 1rem;
}

.button-group.expanded {
  margin-right: -1px;
}

.button-group.expanded::before, .button-group.expanded::after {
  display: none;
}

.button-group.expanded .button:first-child:nth-last-child(2), .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button {
  display: inline-block;
  width: calc(50% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(2):last-child, .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(3), .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button {
  display: inline-block;
  width: calc(33.33333% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(3):last-child, .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(4), .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button {
  display: inline-block;
  width: calc(25% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(4):last-child, .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(5), .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button {
  display: inline-block;
  width: calc(20% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(5):last-child, .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(6), .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button {
  display: inline-block;
  width: calc(16.66667% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(6):last-child, .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.primary .button {
  background-color: #1779ba;
  color: #000000;
}

.button-group.primary .button:hover, .button-group.primary .button:focus {
  background-color: #126195;
  color: #000000;
}

.button-group.secondary .button {
  background-color: #767676;
  color: #000000;
}

.button-group.secondary .button:hover, .button-group.secondary .button:focus {
  background-color: #5e5e5e;
  color: #000000;
}

.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: #ff3f57;
  color: #000000;
}

.button-group.alert .button:hover, .button-group.alert .button:focus {
  background-color: #fe0020;
  color: #000000;
}

.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
  width: 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 {
    width: auto;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 72.25em) {
  .button-group.stacked-for-medium .button {
    width: auto;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 29.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: 2rem 1rem 2rem 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
  background-color: white;
  color: #231f20;
}

.callout > :first-child {
  margin-top: 0;
}

.callout > :last-child {
  margin-bottom: 0;
}

.callout.primary {
  background-color: #d7ecfa;
  color: #231f20;
}

.callout.secondary {
  background-color: #eaeaea;
  color: #231f20;
}

.callout.success {
  background-color: #e1faea;
  color: #231f20;
}

.callout.warning {
  background-color: #fff3d9;
  color: #231f20;
}

.callout.alert {
  background-color: #ffe2e6;
  color: #231f20;
}

.callout.small {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}

.callout.large {
  padding-top: 3rem;
  padding-right: 3rem;
  padding-bottom: 3rem;
  padding-left: 3rem;
}

.card {
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #fff;
  -webkit-box-shadow: none;
  box-shadow: none;
  overflow: hidden;
  color: #231f20;
}

.card > :last-child {
  margin-bottom: 0;
}

.card-divider {
  padding: 1rem;
  background: #e6e6e6;
}

.card-divider > :last-child {
  margin-bottom: 0;
}

.card-section {
  padding: 1rem;
}

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

.close-button {
  position: absolute;
  color: #222;
  cursor: pointer;
}

[data-whatinput='mouse'] .close-button {
  outline: 0;
}

.close-button:hover, .close-button:focus {
  color: #0a0a0a;
}

.close-button.small {
  right: 0.66rem;
  top: 0.33em;
  font-size: 1.5em;
  line-height: 1;
}

.close-button, .close-button.medium {
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
}

.menu {
  margin: 0;
  list-style-type: none;
}

.menu > li {
  display: table-cell;
  vertical-align: middle;
}

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

.menu > li > a {
  display: block;
  padding: 0.7rem 1rem;
  line-height: 1;
}

.menu input,
.menu select,
.menu a,
.menu button {
  margin-bottom: 0;
}

.menu > li > a img,
.menu > li > a i,
.menu > li > a svg {
  vertical-align: middle;
}

.menu > li > a img + span,
.menu > li > a i + span,
.menu > li > a svg + span {
  vertical-align: middle;
}

.menu > li > a img,
.menu > li > a i,
.menu > li > a svg {
  margin-right: 0.25rem;
  display: inline-block;
}

.menu > li, .menu.horizontal > li {
  display: table-cell;
}

.menu.expanded {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.menu.expanded > li:first-child:last-child {
  width: 100%;
}

.menu.vertical > li {
  display: block;
}

@media print, screen and (min-width: 30em) {
  .menu.medium-small-horizontal > li {
    display: table-cell;
  }
  .menu.medium-small-expanded {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .menu.medium-small-expanded > li:first-child:last-child {
    width: 100%;
  }
  .menu.medium-small-vertical > li {
    display: block;
  }
}

@media print, screen and (min-width: 40em) {
  .menu.medium-horizontal > li {
    display: table-cell;
  }
  .menu.medium-expanded {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .menu.medium-expanded > li:first-child:last-child {
    width: 100%;
  }
  .menu.medium-vertical > li {
    display: block;
  }
}

@media screen and (min-width: 64em) {
  .menu.large-medium-horizontal > li {
    display: table-cell;
  }
  .menu.large-medium-expanded {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .menu.large-medium-expanded > li:first-child:last-child {
    width: 100%;
  }
  .menu.large-medium-vertical > li {
    display: block;
  }
}

@media screen and (min-width: 72.25em) {
  .menu.large-horizontal > li {
    display: table-cell;
  }
  .menu.large-expanded {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .menu.large-expanded > li:first-child:last-child {
    width: 100%;
  }
  .menu.large-vertical > li {
    display: block;
  }
}

@media screen and (min-width: 81.25em) {
  .menu.xlarge-horizontal > li {
    display: table-cell;
  }
  .menu.xlarge-expanded {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .menu.xlarge-expanded > li:first-child:last-child {
    width: 100%;
  }
  .menu.xlarge-vertical > li {
    display: block;
  }
}

@media screen and (min-width: 87.5em) {
  .menu.xxlarge-horizontal > li {
    display: table-cell;
  }
  .menu.xxlarge-expanded {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .menu.xxlarge-expanded > li:first-child:last-child {
    width: 100%;
  }
  .menu.xxlarge-vertical > li {
    display: block;
  }
}

.menu.simple li {
  display: inline-block;
  margin-right: 1rem;
  line-height: 1;
}

.menu.simple a {
  padding: 0;
}

.menu.align-right::before, .menu.align-right::after {
  display: table;
  content: ' ';
}

.menu.align-right::after {
  clear: both;
}

.menu.align-right > li {
  float: right;
}

.menu.icon-top > li > a {
  text-align: center;
}

.menu.icon-top > li > a img,
.menu.icon-top > li > a i,
.menu.icon-top > li > a svg {
  display: block;
  margin: 0 auto 0.25rem;
}

.menu.icon-top.vertical a > span {
  margin: auto;
}

.menu.nested {
  margin-left: 1rem;
}

.menu .active > a {
  background: #1779ba;
  color: #fff;
}

.menu.menu-bordered li {
  border: 1px solid #e6e6e6;
}

.menu.menu-bordered li:not(:first-child) {
  border-top: 0;
}

.menu.menu-hover li:hover {
  background-color: #e6e6e6;
}

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

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

.menu-centered > .menu {
  display: inline-block;
}

.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: #fff;
  -webkit-box-shadow: 0 7px 0 #fff, 0 14px 0 #fff;
  box-shadow: 0 7px 0 #fff, 0 14px 0 #fff;
  content: '';
}

.menu-icon:hover::after {
  background: #cacaca;
  -webkit-box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca;
  box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca;
}

.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: #0a0a0a;
  -webkit-box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
  box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
  content: '';
}

.menu-icon.dark:hover::after {
  background: #222;
  -webkit-box-shadow: 0 7px 0 #222, 0 14px 0 #222;
  box-shadow: 0 7px 0 #222, 0 14px 0 #222;
}

.is-drilldown {
  position: relative;
  overflow: hidden;
}

.is-drilldown li {
  display: block;
}

.is-drilldown.animate-height {
  -webkit-transition: height 0.5s;
  transition: height 0.5s;
}

.is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #fff;
  -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;
}

.is-drilldown-submenu.is-active {
  z-index: 1;
  display: block;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.is-drilldown-submenu.is-closing {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

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

.is-drilldown-submenu-parent > a {
  position: relative;
}

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

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

.dropdown-pane {
  position: absolute;
  z-index: 10;
  display: block;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #FFFFFF;
  font-size: 1rem;
}

.dropdown-pane.is-open {
  visibility: visible;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #13B5EA 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 #13B5EA;
}

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

@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: #13B5EA transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
  }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #13B5EA 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 #13B5EA;
  }
}

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

@media screen and (min-width: 72.25em) {
  .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: #13B5EA transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
  }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #13B5EA 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 #13B5EA;
  }
}

@media screen and (min-width: 81.25em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.xlarge-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: #13B5EA transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
  }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #13B5EA transparent transparent;
  }
  .dropdown.menu.xlarge-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 #13B5EA;
  }
}

@media screen and (min-width: 87.5em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.xxlarge-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: #13B5EA transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #13B5EA transparent transparent;
  }
  .dropdown.menu.xxlarge-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 #13B5EA;
  }
}

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

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

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

.is-dropdown-submenu-parent {
  position: relative;
}

.is-dropdown-submenu-parent a::after {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -6px;
}

.is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
  top: 100%;
  left: auto;
}

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

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

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #cacaca;
  background: #fff;
}

.is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
  right: 14px;
}

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #13B5EA 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 #13B5EA;
}

.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;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #1779ba;
  color: #fff;
}

.label.primary {
  background: #1779ba;
  color: #fff;
}

.label.secondary {
  background: #767676;
  color: #fff;
}

.label.success {
  background: #3adb76;
  color: #0a0a0a;
}

.label.warning {
  background: #ffae00;
  color: #0a0a0a;
}

.label.alert {
  background: #ff3f57;
  color: #0a0a0a;
}

.media-object {
  display: block;
  margin-bottom: 1rem;
}

.media-object img {
  max-width: none;
}

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

.media-object-section {
  display: table-cell;
  vertical-align: top;
}

.media-object-section:first-child {
  padding-right: 1rem;
}

.media-object-section:last-child:not(:nth-child(2)) {
  padding-left: 1rem;
}

.media-object-section > :last-child {
  margin-bottom: 0;
}

.media-object-section.middle {
  vertical-align: middle;
}

.media-object-section.bottom {
  vertical-align: bottom;
}

.is-off-canvas-open {
  overflow: hidden;
}

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  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: 1;
  -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: #e6e6e6;
}

[data-whatinput='mouse'] .off-canvas {
  outline: 0;
}

.off-canvas.is-transition-overlap {
  z-index: 10;
}

.off-canvas.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}

.off-canvas.is-open {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.off-canvas-absolute {
  position: absolute;
  z-index: 1;
  -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: #e6e6e6;
}

[data-whatinput='mouse'] .off-canvas-absolute {
  outline: 0;
}

.off-canvas-absolute.is-transition-overlap {
  z-index: 10;
}

.off-canvas-absolute.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}

.off-canvas-absolute.is-open {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.position-left {
  top: 0;
  left: 0;
  width: 250px;
  height: 100%;
  -webkit-transform: translateX(-250px);
  transform: translateX(-250px);
  overflow-y: auto;
}

.position-left.is-open ~ .off-canvas-content {
  -webkit-transform: translateX(250px);
  transform: translateX(250px);
}

.position-left.is-transition-push::after {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 1px;
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  content: " ";
}

.position-left.is-transition-overlap.is-open ~ .off-canvas-content {
  -webkit-transform: none;
  transform: none;
}

.position-right {
  top: 0;
  right: 0;
  width: 250px;
  height: 100%;
  -webkit-transform: translateX(250px);
  transform: translateX(250px);
  overflow-y: auto;
}

.position-right.is-open ~ .off-canvas-content {
  -webkit-transform: translateX(-250px);
  transform: translateX(-250px);
}

.position-right.is-transition-push::after {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 1px;
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  content: " ";
}

.position-right.is-transition-overlap.is-open ~ .off-canvas-content {
  -webkit-transform: none;
  transform: none;
}

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  height: 250px;
  -webkit-transform: translateY(-250px);
  transform: translateY(-250px);
  overflow-x: auto;
}

.position-top.is-open ~ .off-canvas-content {
  -webkit-transform: translateY(250px);
  transform: translateY(250px);
}

.position-top.is-transition-push::after {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  content: " ";
}

.position-top.is-transition-overlap.is-open ~ .off-canvas-content {
  -webkit-transform: none;
  transform: none;
}

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 250px;
  -webkit-transform: translateY(250px);
  transform: translateY(250px);
  overflow-x: auto;
}

.position-bottom.is-open ~ .off-canvas-content {
  -webkit-transform: translateY(-250px);
  transform: translateY(-250px);
}

.position-bottom.is-transition-push::after {
  position: absolute;
  top: 0;
  left: 0;
  height: 1px;
  width: 100%;
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  content: " ";
}

.position-bottom.is-transition-overlap.is-open ~ .off-canvas-content {
  -webkit-transform: none;
  transform: none;
}

.off-canvas-content {
  -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;
}

@media print, screen and (min-width: 30em) {
  .position-left.reveal-for-medium-small {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-left.reveal-for-medium-small ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium-small {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-right.reveal-for-medium-small ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-medium-small {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-top.reveal-for-medium-small ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-medium-small {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-bottom.reveal-for-medium-small ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-top.reveal-for-medium ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-bottom.reveal-for-medium ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media screen and (min-width: 64em) {
  .position-left.reveal-for-large-medium {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-left.reveal-for-large-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large-medium {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-right.reveal-for-large-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-large-medium {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-top.reveal-for-large-medium ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-large-medium {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-bottom.reveal-for-large-medium ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media screen and (min-width: 72.25em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-large {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-top.reveal-for-large ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-bottom.reveal-for-large ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media screen and (min-width: 81.25em) {
  .position-left.reveal-for-xlarge {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-left.reveal-for-xlarge ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-xlarge {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-right.reveal-for-xlarge ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-xlarge {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-top.reveal-for-xlarge ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-bottom.reveal-for-xlarge ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media screen and (min-width: 87.5em) {
  .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-left.reveal-for-xxlarge ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-right.reveal-for-xxlarge ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-top.reveal-for-xxlarge ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
    transform: none;
    z-index: 1;
  }
  .position-bottom.reveal-for-xxlarge ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

.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(10, 10, 10, 0.5);
  color: #fff;
}

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fff;
}

[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(10, 10, 10, 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: #222;
}

.orbit-bullets button.is-active {
  background-color: #222;
}

.pagination {
  margin-left: 0;
  margin-bottom: 1rem;
}

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

.pagination::after {
  clear: both;
}

.pagination li {
  margin-right: 0.0625rem;
  border-radius: 0;
  font-size: 0.875rem;
  display: none;
}

.pagination li:last-child, .pagination li:first-child {
  display: inline-block;
}

@media print, screen and (min-width: 40em) {
  .pagination li {
    display: inline-block;
  }
}

.pagination a,
.pagination button {
  display: block;
  padding: 0.1875rem 0.625rem;
  border-radius: 0;
  color: #0a0a0a;
}

.pagination a:hover,
.pagination button:hover {
  background: #e6e6e6;
}

.pagination .current {
  padding: 0.1875rem 0.625rem;
  background: #1779ba;
  color: #fff;
  cursor: default;
}

.pagination .disabled {
  padding: 0.1875rem 0.625rem;
  color: #cacaca;
  cursor: not-allowed;
}

.pagination .disabled:hover {
  background: transparent;
}

.pagination .ellipsis::after {
  padding: 0.1875rem 0.625rem;
  content: '\2026';
  color: #0a0a0a;
}

.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';
}

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #cacaca;
}

.progress.primary .progress-meter {
  background-color: #1779ba;
}

.progress.secondary .progress-meter {
  background-color: #767676;
}

.progress.success .progress-meter {
  background-color: #3adb76;
}

.progress.warning .progress-meter {
  background-color: #ffae00;
}

.progress.alert .progress-meter {
  background-color: #ff3f57;
}

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #1779ba;
}

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #fff;
  white-space: nowrap;
}

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e6e6e6;
  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%);
  transform: translateY(-50%);
  position: absolute;
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #1779ba;
  -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: #14679e;
}

.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);
  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%);
  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;
}

.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;
  -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(10, 10, 10, 0.85);
  overflow-y: scroll;
}

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: none;
  padding: 40px;
  border: 1px solid #fff;
  border-radius: 0;
  background-color: #fff;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
}

[data-whatinput='mouse'] .reveal {
  outline: 0;
}

@media print, screen and (min-width: 40em) {
  .reveal {
    min-height: 0;
  }
}

.reveal .column, .reveal .columns,
.reveal .columns {
  min-width: 0;
}

.reveal > :last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 40em) {
  .reveal {
    width: 865px;
    max-width: 72.25rem;
  }
}

@media print, screen and (min-width: 40em) {
  .reveal .reveal {
    right: auto;
    left: auto;
    margin: 0 auto;
  }
}

.reveal.collapse {
  padding: 0;
}

@media print, screen and (min-width: 40em) {
  .reveal.tiny {
    width: 30%;
    max-width: 72.25rem;
  }
}

@media print, screen and (min-width: 40em) {
  .reveal.small {
    width: 50%;
    max-width: 72.25rem;
  }
}

@media print, screen and (min-width: 40em) {
  .reveal.large {
    width: 90%;
    max-width: 72.25rem;
  }
}

.reveal.full {
  top: 0;
  left: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  height: 100vh;
  min-height: 100vh;
  margin-left: 0;
  border: 0;
  border-radius: 0;
}

@media screen and (max-width: 29.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: #fff;
  -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: #fff;
  -webkit-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  content: '';
}

input:checked ~ .switch-paddle {
  background: #1779ba;
}

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%);
  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 {
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0;
}

thead, tbody, tfoot {
  border: 1px solid #f2f2f2;
  background-color: #fff;
}

caption {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: 700;
}

thead {
  background: #f9f9f9;
  color: #231f20;
}

tfoot {
  background: #f2f2f2;
  color: #231f20;
}

thead tr, tfoot tr {
  background: transparent;
}

thead th, thead td, tfoot th, tfoot td {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: 700;
  text-align: left;
}

tbody th, tbody td {
  padding: 0.5rem 0.625rem 0.625rem;
}

tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: #f2f2f2;
}

table.unstriped tbody {
  background-color: #fff;
}

table.unstriped tbody tr {
  border-bottom: 0;
  border-bottom: 1px solid #f2f2f2;
  background-color: #fff;
}

@media screen and (max-width: 49.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 #e6e6e6;
  background: #fff;
  list-style-type: none;
}

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

.tabs::after {
  clear: both;
}

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

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

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

.tabs.primary {
  background: #1779ba;
}

.tabs.primary > li > a {
  color: #fff;
}

.tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
  background: #1673b1;
}

.tabs-title {
  float: left;
}

.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba;
}

.tabs-title > a:hover {
  background: #fff;
  color: #1468a0;
}

.tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
  background: #e6e6e6;
  color: #1779ba;
}

.tabs-content {
  border: 1px solid #e6e6e6;
  border-top: 0;
  background: #fff;
  color: #231f20;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

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

.tabs-panel {
  display: none;
  padding: 1rem;
}

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

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #fff;
  border-radius: 0;
  -webkit-box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
  box-shadow: 0 0 0 1px rgba(10, 10, 10, 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(23, 121, 186, 0.5);
  box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5);
}

a.thumbnail image {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.title-bar {
  padding: 0.5rem;
  background: #0a0a0a;
  color: #fff;
}

.title-bar::before, .title-bar::after {
  display: table;
  content: ' ';
}

.title-bar::after {
  clear: both;
}

.title-bar .menu-icon {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.title-bar-left {
  float: left;
}

.title-bar-right {
  float: 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 #222;
  font-weight: 700;
  cursor: help;
}

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0;
  background-color: #0a0a0a;
  font-size: 0.8125rem;
  color: #fff;
}

.tooltip::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-top-width: 0;
  border-bottom-style: solid;
  border-color: transparent transparent #0a0a0a;
  position: absolute;
  bottom: 100%;
  left: 50%;
  -webkit-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: #0a0a0a transparent transparent;
  top: 100%;
  bottom: auto;
}

.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 #0a0a0a;
  top: 50%;
  bottom: auto;
  left: 100%;
  -webkit-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 #0a0a0a transparent transparent;
  top: 50%;
  right: 100%;
  bottom: auto;
  left: auto;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.top-bar {
  padding: 0.5rem;
}

.top-bar::before, .top-bar::after {
  display: table;
  content: ' ';
}

.top-bar::after {
  clear: both;
}

.top-bar,
.top-bar ul {
  background-color: #e6e6e6;
}

.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 {
  width: 100%;
}

@media print, screen and (min-width: 40em) {
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    width: auto;
  }
}

@media screen and (max-width: 39.9375em) {
  .top-bar.stacked-for-medium-small .top-bar-left,
  .top-bar.stacked-for-medium-small .top-bar-right {
    width: 100%;
  }
}

@media screen and (max-width: 49.9375em) {
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    width: 100%;
  }
}

@media screen and (max-width: 72.1875em) {
  .top-bar.stacked-for-large-medium .top-bar-left,
  .top-bar.stacked-for-large-medium .top-bar-right {
    width: 100%;
  }
}

@media screen and (max-width: 81.1875em) {
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    width: 100%;
  }
}

@media screen and (max-width: 87.4375em) {
  .top-bar.stacked-for-xlarge .top-bar-left,
  .top-bar.stacked-for-xlarge .top-bar-right {
    width: 100%;
  }
}

.top-bar.stacked-for-xxlarge .top-bar-left,
.top-bar.stacked-for-xxlarge .top-bar-right {
  width: 100%;
}

.top-bar-title {
  display: inline-block;
  float: left;
  padding: 0.5rem 1rem 0.5rem 0;
}

.top-bar-title .menu-icon {
  bottom: 2px;
}

.top-bar-left {
  float: left;
}

.top-bar-right {
  float: right;
}

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

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

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

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

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

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

@media screen and (max-width: 29.9375em), screen and (min-width: 40em) {
  .show-for-medium-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: 49.9375em) {
  .hide-for-medium-only {
    display: none !important;
  }
}

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

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

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

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

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

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

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

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

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

@media screen and (min-width: 81.25em) {
  .hide-for-xlarge {
    display: none !important;
  }
}

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

@media screen and (min-width: 81.25em) and (max-width: 87.4375em) {
  .hide-for-xlarge-only {
    display: none !important;
  }
}

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

@media screen and (min-width: 87.5em) {
  .hide-for-xxlarge {
    display: none !important;
  }
}

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

@media screen and (min-width: 87.5em) {
  .hide-for-xxlarge-only {
    display: none !important;
  }
}

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

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

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

.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}

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

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

.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}

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

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

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

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

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

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

.clearfix::after {
  clear: both;
}

/* Main Style Sheet
--------------------------------------------*/
@font-face {
  font-family: "Museo Sans Rounded";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.eot"), url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.woff") format("woff"), url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.ttf") format("truetype"), url("../fonts/MuseoSansRounded/museosansrounded-300-webfont.svg#museo_sans_rounded_300regular") format("svg");
}

@font-face {
  font-family: "Museo Sans Rounded";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.eot"), url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.woff") format("woff"), url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.ttf") format("truetype"), url("../fonts/MuseoSansRounded/museosansrounded-500-webfont.svg#museo_sans_rounded_500regular") format("svg");
}

@font-face {
  font-family: "CBASlab";
  src: url("../fonts/CBASlabWeb-Regular.eot");
  src: url("../fonts/CBASlabWeb-Regular.eot?#iefix") format("eot"), url("../fonts/CBASlabWeb-Regular.woff2") format("woff2"), url("../fonts/CBASlabWeb-Regular.woff") format("woff"), url("../fonts/CBASlabWeb-Regular.ttf") format("truetype");
  font-weight: 500;
  background-color: blue;
}

@font-face {
  font-family: "CBASlab";
  src: url("../fonts/CBASlabWeb-Bold.eot");
  src: url("../fonts/CBASlabWeb-Bold.eot?#iefix") format("eot"), url("../fonts/CBASlabWeb-Bold.woff2") format("woff2"), url("../fonts/CBASlabWeb-Bold.woff") format("woff"), url("../fonts/CBASlabWeb-Bold.ttf") format("truetype");
  font-weight: 700;
  background-color: red;
}

@font-face {
  font-family: "CBASlab";
  src: url("../fonts/CBASlabWeb-ExtraBold.eot");
  src: url("../fonts/CBASlabWeb-ExtraBold.eot?#iefix") format("eot"), url("../fonts/CBASlabWeb-ExtraBold.woff2") format("woff2"), url("../fonts/CBASlabWeb-ExtraBold.woff") format("woff"), url("../fonts/CBASlabWeb-ExtraBold.ttf") format("truetype");
  font-weight: 800;
}

@font-face {
  font-family: "CBASans";
  src: url("../fonts/CBASansWeb-Light.eot");
  src: url("../fonts/CBASansWeb-Light.eot?#iefix") format("eot"), url("../fonts/CBASansWeb-Light.woff2") format("woff2"), url("../fonts/CBASansWeb-Light.woff") format("woff"), url("../fonts/CBASansWeb-Light.ttf") format("truetype");
  font-weight: 300;
}

@font-face {
  font-family: "CBASans";
  src: url("../fonts/CBASansWeb-Bold.eot");
  src: url("../fonts/CBASansWeb-Bold.eot?#iefix") format("eot"), url("../fonts/CBASansWeb-Bold.woff2") format("woff2"), url("../fonts/CBASansWeb-Bold.woff") format("woff"), url("../fonts/CBASansWeb-Bold.ttf") format("truetype");
  font-weight: 700;
}

@font-face {
  font-family: "icomoon-lego";
  src: url("../fonts/icomoon.eot");
  src: url("../fonts/icomoon.eot") format("embedded-opentype"), url("../fonts/icomoon.woff") format("woff"), url("../fonts/icomoon.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Helvetic-Neue";
  src: url("../fonts/Helvetic-Neue-Regular.eot?#iefix");
  src: url("../fonts/Helvetic-Neue-Regular.eot?#iefix") format("eot"), url("../fonts/Helvetic-Neue-Regular.woff2") format("woff2"), url("../fonts/Helvetic-Neue-Regular.woff") format("woff"), url("../fonts/Helvetic-Neue-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Helvetic-Neue";
  src: url("../fonts/Helvetic-Neue-Bold.eot?#iefix");
  src: url("../fonts/Helvetic-Neue-Bold.eot?#iefix") format("eot"), url("../fonts/Helvetic-Neue-Bold.woff2") format("woff2"), url("../fonts/Helvetic-Neue-Bold.woff") format("woff"), url("../fonts/Helvetic-Neue-Bold.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: "Helvetic-Neue";
  src: url("../fonts/Helvetic-Neue-ExtraBold.eot?#iefix");
  src: url("../fonts/Helvetic-Neue-ExtraBold.eot?#iefix") format("eot"), url("../fonts/Helvetic-Neue-ExtraBold.woff2") format("woff2"), url("../fonts/Helvetic-Neue-ExtraBold.woff") format("woff"), url("../fonts/Helvetic-Neue-ExtraBold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}

legend, label {
  font-family: "Museo Sans Rounded";
  font-weight: 400;
  padding-bottom: 10px;
}

input[type="email"],
input[type="text"], input[type="password"], input[type="search"], input[type="number"] {
  height: 50px;
  padding: 0 15px;
  font-family: "Museo Sans Rounded";
  font-weight: 400;
}

input[type="radio"], input[type="checkbox"] {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  vertical-align: middle;
}

input[type="radio"] + label, input[type="checkbox"] + label {
  display: inline-block;
  width: 100%;
  min-width: 125px;
  min-height: 50px;
  text-indent: 0;
  padding: 1rem;
  border: 1px solid #bcbcbc;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  line-height: 1.0625rem;
  color: #231f20;
  border-radius: 25px;
  background: #FFFFFF url("../images/buttons/radio.svg") no-repeat 7px 7px;
  -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;
  cursor: pointer;
}

.primary-action,
input[type="submit"], [type='button'],
button, input[type="button"] {
  height: 48px;
  padding: 0.6rem 1rem;
  border: 0;
  font-family: "Museo Sans Rounded";
  font-weight: 500;
  color: #13B5EA;
  background-color: #FFFFFF;
  text-align: center;
  cursor: pointer;
  -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;
}

/* Defaults
--------------------------------------------*/
/* --- Block Elements --- */
html {
  width: 100%;
  height: 100%;
}

body {
  min-height: 100%;
  min-width: 320px;
  margin: 0 auto;
  font-size: 1rem;
}

@media print {
  body {
    /* Only affects print media */
    min-width: 0;
    background: transparent none;
  }
}

/* --- Text Elements --- */
a {
  font-family: "Museo Sans Rounded";
  font-weight: 500;
}

/* --- Header Text --- */
h1 {
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  margin-bottom: 40px;
}

@media screen and (max-width: 63.9375em) {
  h1 {
    font-size: 1.875rem;
    text-align: center;
  }
}

@media print {
  h1 {
    /* Only affects print media */
    width: auto;
    margin-left: 0;
    padding-left: 0;
    border: 0;
  }
}

h2 {
  font-family: "Museo Sans Rounded";
  font-weight: 700;
  margin: 0 0 20px;
  line-height: 1;
}

h2 a {
  font-size: 0.875rem;
}

@media print {
  h2 {
    /* Only affects print media */
    width: auto;
    margin-left: 0;
    padding-left: 0;
    border: 0;
  }
}

h3 {
  font-family: "Museo Sans Rounded";
  font-weight: 700;
  margin: 0 0 12px;
  line-height: 1.2;
}

@media print {
  h3 {
    /* Only affects print media */
    width: auto;
    margin-left: 0;
    padding-left: 0;
    border: 0;
  }
}

strong {
  font-family: "Museo Sans Rounded";
  font-weight: 700;
}

/* --- List Items --- */
ul li {
  padding-bottom: 5px;
}

ol li {
  padding-bottom: 5px;
}

/* --- Table  Elements --- */
th {
  text-align: left;
  vertical-align: top;
}

td {
  vertical-align: top;
}

/* --- Form/Inputs --- */
legend {
  color: #231f20;
}

label {
  cursor: pointer;
}

label.error, label.error2, label.dateError {
  margin: -10px 0 10px;
  padding: 0;
  border: none;
  font-family: "Museo Sans Rounded";
  font-weight: 500;
  font-size: 0.8125rem;
  color: #FD0E35;
  text-align: left;
}

input[type=email]::-ms-clear,
input[type=text]::-ms-clear {
  display: none;
}

.error-image {
  width: 18px;
  height: 18px;
  margin-left: 8px;
}

/* Submit */
input[type="email"]:hover, input[type="email"]:focus, input[type="email"]:active,
input[type="text"]:hover,
input[type="text"]:focus,
input[type="text"]:active {
  border: 1px solid #107bbf;
}

input[type="email"].focusLevel,
input[type="text"].focusLevel {
  border: none;
  outline: none;
}

input[type="search"]:hover, input[type="search"]:focus, input[type="search"]:active {
  border: 1px solid #107bbf;
}

input[type="search"]:focus {
  outline: none;
}

input[type="number"] {
  padding: 0;
}

input[type="number"]:hover, input[type="number"]:focus, input[type="number"]:active {
  border: 1px solid #107bbf;
}

input[type="number"]:focus {
  outline: none;
}

input[type="radio"] + label:hover, input[type="radio"] + label:focus, input[type="radio"] + label:active {
  border-color: #107bbf;
}

input[type="radio"] + label:focus {
  outline: none;
}

input[type="radio"]:checked + label {
  background: #FFFFFF url("../images/buttons/radio-on.png") no-repeat 7px 7px;
}

input[type="checkbox"] + label {
  width: auto;
  margin: 0;
  text-align: center;
  background: none;
}

input[type="checkbox"] + label:hover, input[type="checkbox"] + label:focus, input[type="checkbox"] + label:active {
  border-color: #107bbf;
}

input[type="checkbox"] + label:focus {
  outline: none;
}

input[type="checkbox"]:checked + label {
  background-color: #DCDCDC;
}

.primary-action:hover, .primary-action:focus, .primary-action:active,
input[type="submit"]:hover,
input[type="submit"]:focus,
input[type="submit"]:active {
  background-color: #f2f2f2;
  text-decoration: none;
  color: #000000;
}

.primary-action:focus,
input[type="submit"]:focus {
  outline: none;
}

@media print {
  .primary-action,
  input[type="submit"] {
    /* Only affects print media */
    display: none;
  }
}

[type='button']:hover, [type='button']:focus, [type='button']:active,
button:hover,
button:focus,
button:active {
  background-color: #f2f2f2;
}

[type='button']:focus,
button:focus {
  outline: none;
}

@media print {
  [type='button'],
  button {
    /* Only affects print media */
    display: none;
  }
}

input[type="submit"][disabled]:focus {
  outline: none;
}

button[disabled]:focus {
  outline: none;
}

input[type="button"]:hover, input[type="button"]:focus, input[type="button"]:active {
  text-decoration: none;
}

input[type="button"]:focus {
  outline: none;
}

input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="button"][disabled]:active {
  text-decoration: none;
}

input[type="button"][disabled]:focus {
  outline: none;
}

/* Select */
select {
  height: 50px;
  padding: 0 15px;
  background: #FFFFFF url("../images/icons/select-arrow.svg") no-repeat;
  background-position: right 10px center;
  background-size: 16px 16px;
  border-radius: 0;
  line-height: 1;
  text-indent: 0.001rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

select:hover, select:focus, select:active {
  border: 1px solid #107bbf;
}

select:focus {
  outline: none;
}

iframe {
  border: 0;
}

/* Error/Validation */
.error {
  border-color: #FD0E35;
  color: #FD0E35;
}

.error h2 {
  color: #FD0E35;
}

input.error,
select.error {
  border-color: #FD0E35;
  color: #231f20;
}

.error2 {
  border-color: #FD0E35;
}

.error2 h2 {
  color: #FD0E35;
}

.drupal-messages {
  margin-bottom: 20px;
}

.form-item--error-message strong {
  padding: 0;
  font-size: .8rem;
  color: #FD0E35;
  font-weight: normal;
  margin-bottom: 1.5rem;
}

/* End Defaults */
/* Container
--------------------------------------------*/
#outer-container {
  min-height: 450px;
  width: 100%;
}

@media screen and (max-width: 72.1875em) {
  #outer-container {
    /* Only affects large-medium screens and smaller */
    padding: 0 16px;
  }
}

#content {
  margin-top: 60px;
}

@media screen and (max-width: 63.9375em) {
  #content {
    margin-top: 30px;
  }
}

/* End Container */
/* Article
-----------------------------*/
section.body-content {
  padding-right: 0;
  padding-left: 0;
  padding-bottom: 40px;
}

@media screen and (max-width: 63.9375em) {
  section.body-content {
    padding-bottom: 20px;
  }
}

section.body-content #article-body {
  padding-bottom: 40px;
}

@media screen and (max-width: 63.9375em) {
  section.body-content #article-body h1 {
    text-align: left;
  }
}

section.body-content #article-body h2 {
  margin-bottom: 20px;
}

section.body-content #article-body h3 {
  margin-bottom: 20px;
}

section.body-content #article-body h4 {
  margin-bottom: 10px;
}

section.body-content #article-body h5 {
  margin-bottom: 10px;
}

section.body-content #article-body table th,
section.body-content #article-body table td {
  padding: 5px 10px 5px 0;
}

section.body-content #article-body button {
  min-width: 200px;
  color: #000000;
  background-color: #FFFFFF;
  -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;
  border: 1px solid #000000;
}

section.body-content #article-body button:hover {
  border: 1px solid #107bbf;
}

section .inbound-message,
section .error-message {
  margin: 120px auto;
}

section .inbound-message h1,
section .error-message h1 {
  margin-bottom: 20px;
  font-size: 2.5rem;
}

section .inbound-message p,
section .error-message p {
  max-width: 456px;
  margin: 0 auto;
  font-size: 1.3125rem;
  text-align: center;
}

section h2 {
  margin: 0;
  padding: 0;
  font-size: 2rem;
  font-weight: 500;
  color: #231f20;
  text-align: left;
}

/* End Article */
/* Forms
-----------------------------*/
.purchase-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.purchase-list > li {
  padding: 0 20px 5px 0;
}

@media screen and (max-width: 39.9375em) {
  .purchase-list > li {
    /* Only affects medium-small screens and larger */
    padding: 0 0 5px 0;
  }
}

.purchase-list > li.start {
  padding-left: 0;
}

.purchase-list > li.end {
  padding-right: 0;
}

.purchase-list p {
  margin-top: 10px;
  margin-bottom: 5px;
}

/* Radio/Checkbox containers */
.radio-list {
  overflow: hidden;
  clear: both;
  margin: 0;
  padding: 0;
}

.radio-list li {
  display: inline-block;
  padding: 0 20px 0 0;
}

.radio-list li:last-child {
  padding-right: 0;
}

.radio-list label {
  display: inline-block;
  margin: 0;
  border: 0;
  border-radius: 0;
  text-align: center;
  text-indent: -20px;
}

.checkList {
  margin: 0;
  padding: 0;
}

.checkList li {
  padding: 0;
}

.checkList input[type="radio"] + label {
  min-height: 0;
}

.checkList input[type="checkbox"] + label {
  min-height: 0;
}

input.dob {
  position: relative;
  z-index: 2;
  background: #FFFFFF url("../images/icons/select-arrow.svg") no-repeat;
  background-position: right 20px center;
  background-size: 10px 6px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* End Forms */
/* Header
-----------------------------*/
#header {
  background: #FFFFFF;
  border-bottom: 1px solid #DCDCDC;
}

#bw-sub-nav {
  background: #005596;
  font-size: 0.8125rem;
  font-weight: 500;
  padding: 1rem 0;
}

@media screen and (min-width: 40em) {
  #bw-sub-nav {
    font-size: 1.125rem;
  }
}

#bw-sub-nav nav > .columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

@media screen and (min-width: 40em) {
  #bw-sub-nav nav > .columns {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
  }
}

#bw-sub-nav a,
#bw-sub-nav .divider {
  font-weight: 700;
}

#bw-sub-nav .divider {
  color: #FFFFFF;
}

@media screen and (min-width: 40em) {
  #bw-sub-nav .divider {
    margin-right: 20px;
    padding-right: 20px;
  }
}

#bw-sub-nav a {
  color: #FFFFFF;
}

@media screen and (min-width: 40em) {
  #bw-sub-nav a {
    margin-right: 20px;
    padding-right: 20px;
  }
}

#bw-sub-nav a:last-child {
  border-right: 0;
  margin-right: 0;
  padding-right: 0;
}

.site-header {
  position: relative;
  height: 80px;
}

@media screen and (max-width: 63.9375em) {
  .site-header {
    /* Only affects medium screens and smaller */
    height: 55px;
    padding: 0 0 0 16px;
  }
}

.site-header .site-logo {
  display: inline-block;
  float: left;
  width: 150px;
  height: 40px;
  margin: 23px 18px 18px 0;
}

@media screen and (max-width: 63.9375em) {
  .site-header .site-logo {
    /* Only affects medium screens and smaller */
    margin: 7px 10px 0 0;
  }
}

.site-header .site-logo img {
  width: inherit;
  height: inherit;
}

.site-header .close-link {
  display: inline-block;
  float: right;
  overflow: hidden;
  width: 24px;
  height: 24px;
  margin: 30px 0 0 0;
  background: url("../images/buttons/close.svg") no-repeat -6px -6px;
  background-size: 32px 32px;
  text-indent: -1000px;
}

@media screen and (max-width: 63.9375em) {
  .site-header .close-link {
    /* Only affects medium screens and smaller */
    margin-top: 18px;
    margin-right: 10px;
  }
}

@media print {
  .site-header .close-link {
    /* Only affects print media */
    display: none;
  }
}

/* End Headers */
/* Footer
-----------------------------*/
footer .site-footer {
  min-height: 125px;
  background: #FFFFFF;
  font-size: 0.875rem;
}

@media screen and (max-width: 49.9375em) {
  footer .site-footer {
    /* Only affects medium screens and larger */
    padding: 0 20px;
  }
}

footer .site-footer .cm-logo-footer {
  float: right;
  max-width: 100px;
}

@media screen and (max-width: 49.9375em) {
  footer .site-footer .cm-logo-footer {
    /* Only affects medium screens and larger */
    float: none;
    margin-bottom: 25px;
    text-align: center;
  }
}

footer .site-footer p {
  line-height: 1.5;
}

footer .site-footer p.copyright span {
  display: inline-block;
  padding-right: 20px;
}

footer .site-footer p.copyright a + a:before {
  display: inline-block;
  content: "|";
  margin: 0 10px;
  color: #231f20;
}

/* End Footer */
/* Trip Advisory
-----------------------------*/
#travel-advisory {
  padding: 15px 15px 15px 100px;
  font-size: 1.125rem;
  color: #FFFFFF;
  background: #d34646 url("../images/icons/travel-advisory.png") no-repeat 80px 18px;
  background-size: 4px 14px;
}

@media screen and (max-width: 63.9375em) {
  #travel-advisory {
    /* Only affects medium-large screens and smaller */
    font-size: 1rem;
    padding: 70px 30px 20px 30px;
    text-align: center;
    background-image: url("../images/icons/travel-advisory-mobile.png");
    background-position: center 20px;
    background-size: 37px 33px;
  }
}

@media screen and (max-width: 63.9375em) {
  #travel-advisory strong {
    /* Only affects medium-large screens and smaller */
    display: block;
    font-size: 1.125rem;
  }
}

#travel-advisory + .policy-list-capsule {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

#travel-advisory p {
  margin: 0;
  line-height: 1;
}

@media screen and (max-width: 63.9375em) {
  #travel-advisory p {
    /* Only affects medium-large screens and smaller */
    line-height: 1.25;
  }
}

/* End Trip Advisory */
/* Plan Summary
-----------------------------*/
.is-stuck .plan-summary {
  width: 355px;
}

.plan-summary h2 {
  font-size: 1.125rem;
  font-family: "Museo Sans Rounded";
  font-weight: 700;
  margin-bottom: 64px;
}

@media screen and (min-width: 40em) {
  .plan-summary h2 {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 63.9375em) {
  .plan-summary h2 {
    padding-top: 22px;
    margin-bottom: 22px;
    border-top: 1px solid #a7a7a7;
  }
}

.plan-summary .price-table {
  width: 100%;
  padding-top: 22px;
  border-top: 1px solid #a7a7a7;
  border-spacing: inherit;
}

@media screen and (max-width: 63.9375em) {
  .plan-summary .price-table {
    font-size: 0.875rem;
  }
}

.plan-summary .price-table tbody, .plan-summary .price-table thead {
  border: 0;
}

.plan-summary .price-table tr {
  background-color: transparent;
}

.plan-summary .price-table th,
.plan-summary .price-table td {
  padding: 10px 0;
}

.plan-summary .price-table th.discount {
  padding-left: 25px;
}

.plan-summary .price-table td {
  text-align: right;
}

.plan-summary .price-table tr:nth-last-of-type(2) th,
.plan-summary .price-table tr:nth-last-of-type(2) td {
  padding-bottom: 30px;
}

.plan-summary .price-table .total th,
.plan-summary .price-table .total td {
  padding-top: 30px;
  border-top: 1px solid #a7a7a7;
  font-weight: 700;
}

@media screen and (max-width: 63.9375em) {
  .plan-summary .price-table .total th,
  .plan-summary .price-table .total td {
    padding-top: 15px;
  }
}

.plan-summary .remove-option {
  display: inline-block;
  float: right;
  overflow: hidden;
  width: 12px;
  height: 12px;
  margin: 5px 0 0 10px;
  background: url("../images/buttons/close.svg") no-repeat 0 0;
  background-size: 12px 12px;
  text-indent: 1000px;
  cursor: pointer;
}

@media print {
  .plan-summary .remove-option {
    /* Only affects print media */
    display: none;
  }
}

.plan-summary .summary-actions {
  margin-top: 25px;
}

/* End Plan Summery */
/* Button Well */
.button-well {
  margin-top: 20px;
  margin-bottom: 40px;
  padding-top: 40px;
  border-top: 1px solid #a7a7a7;
  text-align: left;
}

@media screen and (max-width: 63.9375em) {
  .button-well {
    margin-top: 30px;
    margin-bottom: 20px;
  }
}

@media print {
  .button-well {
    /* Only affects print media */
    display: none;
  }
}

.button-well .primary-action,
.button-well input[type="submit"] {
  display: inline-block;
  width: 200px;
  height: 50px;
  border-radius: 0;
  font-family: "Museo Sans Rounded";
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.125rem;
  border: 1px solid #13B5EA;
}

@media screen and (max-width: 39.9375em) {
  .button-well .primary-action,
  .button-well input[type="submit"] {
    width: 100%;
  }
}

@media print {
  .button-well .primary-action,
  .button-well input[type="submit"] {
    /* Only affects print media */
    display: none;
  }
}

.button-well .primary-action:focus,
.button-well input[type="submit"]:focus {
  outline: none;
}

.button-well .primary-action:disabled,
.button-well input[type="submit"]:disabled {
  color: gray;
  background-color: white;
  cursor: not-allowed;
}

.button-well .secondary-action {
  display: inline-block;
  width: 180px;
  height: 50px;
  margin: 0 auto;
  padding: 0.6rem 1rem;
  font-family: "Museo Sans Rounded";
  font-weight: 500;
  font-size: 1rem;
  text-align: center;
  text-transform: capitalize;
  color: #000000;
  background-color: #FFFFFF;
  -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;
  border: 1px solid #000000;
  border-radius: 0;
  cursor: pointer;
}

@media screen and (max-width: 39.9375em) {
  .button-well .secondary-action {
    width: 100%;
  }
}

@media print {
  .button-well .secondary-action {
    /* Only affects print media */
    display: none;
  }
}

.button-well .secondary-action:hover, .button-well .secondary-action:focus, .button-well .secondary-action:active {
  background-color: #FFFFFF;
  border-color: #107bbf;
  color: #000000;
  text-decoration: none;
}

.button-well .secondary-action:focus {
  outline: none;
}

.button-well .button-well-link {
  display: inline-block;
  margin-left: 45px;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  font-size: 1.125rem;
  line-height: 1.125rem;
}

@media screen and (max-width: 39.9375em) {
  .button-well .button-well-link {
    display: block;
    margin: 30px 0 0 0;
    text-align: center;
  }
}

@media print {
  .button-well .button-well-link {
    /* Only affects print media */
    display: none;
  }
}

/* Qtip Baseline
-----------------------------*/
#qtip-overlay.blurs, .qtip-close {
  cursor: pointer;
}

.qtip {
  position: absolute;
  left: -28000px;
  top: -28000px;
  display: none;
  max-width: 280px;
  min-width: 50px;
  font-size: 10.5px;
  line-height: 12px;
  direction: ltr;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 0;
}

.qtip-content, .qtip-titlebar {
  position: relative;
  overflow: hidden;
}

.qtip-content {
  padding: 5px 9px;
  text-align: left;
  word-wrap: break-word;
}

.qtip-titlebar {
  padding: 5px 35px 5px 10px;
  border-width: 0 0 1px;
  font-weight: 700;
}

.qtip-titlebar + .qtip-content {
  border-top-width: 0 !important;
}

.qtip-close {
  position: absolute;
  right: -9px;
  top: -9px;
  z-index: 11;
  outline: 0;
  border: 1px solid transparent;
}

.qtip-titlebar .qtip-close {
  right: 4px;
  top: 50%;
  margin-top: -9px;
}

* html .qtip-titlebar .qtip-close {
  top: 16px;
}

.qtip-icon .ui-icon, .qtip-titlebar .ui-icon {
  display: block;
  text-indent: -1000em;
  direction: ltr;
}

.qtip-icon, .qtip-icon .ui-icon {
  border-radius: 3px;
  text-decoration: none;
}

.qtip-icon .ui-icon {
  width: 18px;
  height: 14px;
  line-height: 14px;
  text-align: center;
  text-indent: 0;
  font-weight: normal 700 10px/13px Tahoma,sans-serif;
  color: inherit;
  background: -100em -100em no-repeat;
}

.qtip-default {
  border: 1px solid #F1D031;
  background-color: #FFFFA3;
  color: #555;
}

.qtip-default .qtip-titlebar {
  background-color: #FFEF93;
}

.qtip-default .qtip-icon {
  border-color: #CCC;
  background: #F1F1F1;
  color: #777;
}

.qtip-default .qtip-titlebar .qtip-close {
  border-color: #AAA;
  color: #111;
}

.qtip-light {
  background-color: #fff;
  border-color: #E2E2E2;
  color: #454545;
}

.qtip-light .qtip-titlebar {
  background-color: #f1f1f1;
}

.qtip-dark {
  background-color: #505050;
  border-color: #303030;
  color: #f3f3f3;
}

.qtip-dark .qtip-titlebar {
  background-color: #404040;
}

.qtip-dark .qtip-icon {
  border-color: #444;
}

.qtip-dark .qtip-titlebar .ui-state-hover {
  border-color: #303030;
}

.qtip-cream {
  background-color: #FBF7AA;
  border-color: #F9E98E;
  color: #A27D35;
}

.qtip-red, .qtip-red .qtip-icon, .qtip-red .qtip-titlebar .ui-state-hover {
  border-color: #D95252;
}

.qtip-cream .qtip-titlebar {
  background-color: #F0DE7D;
}

.qtip-cream .qtip-close .qtip-icon {
  background-position: -82px 0;
}

.qtip-red {
  background-color: #F78B83;
  color: #912323;
}

.qtip-red .qtip-titlebar {
  background-color: #F06D65;
}

.qtip-red .qtip-close .qtip-icon {
  background-position: -102px 0;
}

.qtip-green {
  background-color: #CAED9E;
  border-color: #90D93F;
  color: #3F6219;
}

.qtip-green .qtip-titlebar {
  background-color: #B0DE78;
}

.qtip-green .qtip-close .qtip-icon {
  background-position: -42px 0;
}

.qtip-blue {
  background-color: #E5F6FE;
  border-color: #ADD9ED;
  color: #5E99BD;
}

.qtip-blue .qtip-titlebar {
  background-color: #D0E9F5;
}

.qtip-blue .qtip-close .qtip-icon {
  background-position: -2px 0;
}

.qtip-shadow {
  -webkit-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);
  box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);
}

.qtip-bootstrap, .qtip-rounded, .qtip-tipsy {
  border-radius: 5px;
}

.qtip-rounded .qtip-titlebar {
  border-radius: 4px 4px 0 0;
}

.qtip-youtube {
  border-radius: 2px;
  -webkit-box-shadow: 0 0 3px #333;
  box-shadow: 0 0 3px #333;
  color: #fff;
  border: 0 solid transparent;
  background: #4A4A4A;
  background-image: -o-linear-gradient(top, #4A4A4A 0, #000 100%);
}

.qtip-youtube .qtip-titlebar {
  background-color: #4A4A4A;
  background-color: transparent;
}

.qtip-youtube .qtip-content {
  padding: .75em;
  font: 12px arial,sans-serif;
  filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#4a4a4a,EndColorStr=#000000);";
}

.qtip-youtube .qtip-icon {
  border-color: #222;
}

.qtip-youtube .qtip-titlebar .ui-state-hover {
  border-color: #303030;
}

.qtip-jtools {
  background: #232323;
  background: rgba(0, 0, 0, 0.7);
  background-image: -o-linear-gradient(top, #717171, #232323);
  border: 2px solid #ddd;
  border: 2px solid #f1f1f1;
  border-radius: 2px;
  -webkit-box-shadow: 0 0 12px #333;
  box-shadow: 0 0 12px #333;
}

.qtip-jtools .qtip-titlebar {
  background-color: transparent;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171,endColorstr=#4A4A4A)";
}

.qtip-jtools .qtip-content {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A,endColorstr=#232323)";
}

.qtip-jtools .qtip-content, .qtip-jtools .qtip-titlebar {
  background: 0 0;
  color: #fff;
  border: 0 dashed transparent;
}

.qtip-jtools .qtip-icon {
  border-color: #555;
}

.qtip-jtools .qtip-titlebar .ui-state-hover {
  border-color: #333;
}

.qtip-cluetip {
  -webkit-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);
  box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);
  background-color: #D9D9C2;
  color: #111;
  border: 0 dashed transparent;
}

.qtip-cluetip .qtip-titlebar {
  background-color: #87876A;
  color: #fff;
  border: 0 dashed transparent;
}

.qtip-cluetip .qtip-icon {
  border-color: #808064;
}

.qtip-cluetip .qtip-titlebar .ui-state-hover {
  border-color: #696952;
  color: #696952;
}

.qtip-tipsy {
  background: #000;
  background: rgba(0, 0, 0, 0.87);
  color: #fff;
  border: 0 solid transparent;
  font-size: 11px;
  font-family: 'Lucida Grande',sans-serif;
  font-weight: 700;
  line-height: 16px;
  text-shadow: 0 1px #000;
}

.qtip-tipsy .qtip-titlebar {
  padding: 6px 35px 0 10px;
  background-color: transparent;
}

.qtip-tipsy .qtip-content {
  padding: 6px 10px;
}

.qtip-tipsy .qtip-icon {
  border-color: #222;
  text-shadow: none;
}

.qtip-tipsy .qtip-titlebar .ui-state-hover {
  border-color: #303030;
}

.qtip-tipped {
  border: 3px solid #959FA9;
  border-radius: 3px;
  background-color: #F9F9F9;
  color: #454545;
  font-weight: 400;
  font-family: serif;
}

.qtip-tipped .qtip-titlebar {
  border-bottom-width: 0;
  color: #fff;
  background: #3A79B8;
  background-image: -o-linear-gradient(top, #3A79B8, #2E629D);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8,endColorstr=#2E629D)";
}

.qtip-tipped .qtip-icon {
  border: 2px solid #285589;
  background: #285589;
}

.qtip-tipped .qtip-icon .ui-icon {
  background-color: #FBFBFB;
  color: #555;
}

.qtip-bootstrap {
  font-size: 14px;
  line-height: 20px;
  color: #333;
  padding: 1px;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}

.qtip-bootstrap .qtip-titlebar {
  padding: 8px 14px;
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0;
}

.qtip-bootstrap .qtip-titlebar .qtip-close {
  right: 11px;
  top: 45%;
  border-style: none;
}

.qtip-bootstrap .qtip-content {
  padding: 9px 14px;
}

.qtip-bootstrap .qtip-icon {
  background: 0 0;
}

.qtip-bootstrap .qtip-icon .ui-icon {
  width: auto;
  height: auto;
  float: right;
  font-size: 20px;
  font-weight: 700;
  line-height: 18px;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .2;
  filter: alpha(opacity=20);
}

#qtip-overlay, #qtip-overlay div {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.qtip-bootstrap .qtip-icon .ui-icon:hover {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: .4;
  filter: alpha(opacity=40);
}

.qtip:not(.ie9haxors) div.qtip-content, .qtip:not(.ie9haxors) div.qtip-titlebar {
  -webkit-filter: none;
  filter: none;
  -ms-filter: none;
}

.qtip .qtip-tip {
  margin: 0 auto;
  overflow: hidden;
  z-index: 10;
}

.qtip .qtip-tip {
  visibility: hidden;
}

.qtip .qtip-tip, .qtip .qtip-tip .qtip-vml, .qtip .qtip-tip canvas {
  position: absolute;
  color: #123456;
  background: 0 0;
  border: 0 dashed transparent;
}

.qtip .qtip-tip canvas {
  top: 0;
  left: 0;
}

.qtip .qtip-tip .qtip-vml {
  behavior: url(#default#VML);
  display: inline-block;
  visibility: visible;
}

#qtip-overlay {
  position: fixed;
}

#qtip-overlay div {
  position: absolute;
  background-color: #000;
  opacity: .7;
  filter: alpha(opacity=70);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.qtipmodal-ie6fix {
  position: absolute !important;
}

/* End Qtip Baseline */
/* Qtip Overrides
-----------------------------*/
.help,
.ajax-help {
  display: inline-block;
}

.help.inline,
.ajax-help.inline {
  display: inline;
}

@media print {
  .help,
  .ajax-help {
    /* Only affects print media */
    display: none;
  }
}

.help img,
.ajax-help img {
  width: 20px;
  height: 20px;
  margin: 0 0 0 5px;
  padding: 0;
}

/* Qtip Rewrites/Benefit Popups */
.qtip-help {
  padding: 24px;
  background: #FFFFFF;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.08);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.08);
  border: 2px solid #ebebeb;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1.375rem;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  color: #231f20;
}

@media screen and (min-width: 40em) {
  .qtip-help {
    /* Only affects medium screens and larger */
    width: 550px;
    max-width: 550px;
  }
}

.qtip-help h3 {
  margin-bottom: 15px;
  font-size: 1.3125rem;
}

.qtip-help h4 {
  font-size: 1.3125rem;
}

.qtip-help p {
  margin: 0 0 5px;
}

.qtip-help div {
  margin: 0 0 5px;
}

.qtip-help ul {
  margin: 0 0 5px;
  line-height: 1.375rem;
  list-style-type: disc;
  margin-left: 20px;
}

.qtip-help ol {
  margin: 0 0 5px;
  line-height: 1.375rem;
  list-style-type: decimal;
  margin-left: 20px;
}

.qtip-help img {
  width: auto;
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 39.9375em) {
  .qtip {
    left: 0 !important;
    min-width: inherit !important;
    max-width: inherit !important;
  }
}

.qtip-content {
  overflow-y: scroll;
  max-height: 200px;
}

.qtip .qtip-tip {
  clip: rect(0, 0, 0, 0);
}

.popup {
  width: 256px;
  margin: 10px auto 0;
  padding: 12px;
  background: #FFFFFF;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.08);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.08);
  border: 0;
  border-radius: 0;
  font-size: 1.0rem;
  line-height: 1.25;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  color: #231f20;
  display: block;
}

.infoDateTable th {
  padding: 5px 15px;
  border-bottom: 1px solid #F8F8F8;
  font-size: 1.4rem;
  text-align: center;
  vertical-align: top;
}

.infoDateTable td {
  width: 50%;
  padding: 5px 15px;
  vertical-align: top;
  font-size: 1.2rem;
}

.infoDateTable p {
  margin-bottom: 15px;
}

.infoDateTable tr:first-child th {
  font-size: 1.4rem;
}

/* End Qtip Overrides */
/* Loading Spinner */
.page-loading {
  position: fixed;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  margin: 0;
  left: 0;
  top: 0;
  z-index: 10000;
  background-color: rgba(79, 76, 77, 0.75);
}

.page-loading .loader {
  display: block;
  width: 94px;
  height: 94px;
}

/* Loading Spinner */
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.loader {
  display: block;
  border-radius: 50%;
  width: 94px;
  height: 94px;
  margin: 50px auto;
  border: 0.25rem solid rgba(254, 203, 47, 0.4);
  border-top-color: #fecb2f;
  -webkit-animation: spin 1s infinite linear;
  animation: spin 1s infinite linear;
}

/* End Loading Spinner */
/* benefits pop-up
-----------------------------*/
.price-table th .popup,
.price-table td .popup,
.benefits-table th .popup,
.benefits-table td .popup {
  visibility: hidden;
  display: none;
  position: absolute;
  z-index: 2;
  width: 256px;
  margin: 0 0 0 100px;
  padding: 24px;
  background: #FFFFFF;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.08);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.08);
  border: 2px solid #ebebeb;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1.375rem;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  color: #231f20;
}

@media screen and (min-width: 40em) {
  .price-table th:hover .popup,
  .price-table td:hover .popup,
  .benefits-table th:hover .popup,
  .benefits-table td:hover .popup {
    visibility: visible;
    display: block;
    cursor: pointer;
  }
}

/* end benefits pop-up */
/* Modals
-----------------------------*/
@media screen and (max-width: 72.1875em) {
  .reveal {
    /* Only affects large-medium screens and smaller */
    padding: 60px 20px;
  }
}

.reveal:focus {
  outline: none;
}

.reveal .button-well {
  border-top: none;
  text-align: center;
}

.reveal .button-well .primary-action {
  width: auto;
  min-width: 200px;
  padding: 0 30px;
}

@media screen and (max-width: 63.9375em) {
  .reveal .button-well .primary-action {
    padding: 0 25px;
  }
}

.reveal .button-well .secondary-action + .secondary-action {
  margin-left: 50px;
}

@media screen and (max-width: 63.9375em) {
  .reveal .button-well .secondary-action + .secondary-action {
    margin-left: 0;
    margin-top: 20px;
  }
}

.reveal .close-modal,
.reveal .modal-cancel-link {
  position: absolute;
  right: 40px;
  top: 40px;
  overflow: hidden;
  width: 24px;
  height: 24px;
  background: url("../images/buttons/close.svg") no-repeat -6px -6px;
  background-size: 32px 32px;
  text-indent: -1000px;
  cursor: pointer;
}

@media screen and (max-width: 63.9375em) {
  .reveal .close-modal,
  .reveal .modal-cancel-link {
    right: 20px;
    top: 20px;
  }
}

.reveal.log-out-modal p {
  max-width: 410px;
  margin: 0 auto 30px auto;
  font-size: 2.25rem;
  text-align: center;
}

.reveal.log-out-modal .button-well {
  margin-top: 30px;
}

.modal {
  width: 652px;
  max-width: 80%;
  max-height: 80%;
  margin: 0 auto;
  padding: 20px;
  background: #FFFFFF;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.08);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.08);
  border: solid 1px #231f20;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1.38;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  color: #231f20;
  text-align: center;
}

@media screen and (max-width: 39.9375em) {
  .modal {
    /* Only affects medium-small screens and larger */
    width: auto;
  }
}

.modal .scrollableArea {
  overflow: auto !important;
  max-height: 320px;
  margin: 0;
}

.modal .modal-image {
  max-width: 86px;
}

.modal h2,
.modal p {
  max-width: 460px;
  margin-left: auto;
  margin-right: auto;
}

.modal .post-collection,
.modal .email-collection {
  margin-left: 0;
}

.modal .post-collection label,
.modal .email-collection label {
  text-align: left;
}

.modal .button-well {
  margin: 10px 0;
  padding: 0;
  border-top: none;
}

@media screen and (max-width: 39.9375em) {
  .modal .button-well {
    /* Only affects medium-small screens and larger */
    width: auto;
  }
}

.modal .button-well .secondary-action {
  margin-left: 40px;
}

.modal .button-well .notice {
  margin-top: 20px;
  margin-left: 0;
  text-align: left;
}

.fancybox-bg {
  background: rgba(77, 77, 77, 0.8);
}

.fancybox-close {
  overflow: hidden;
  position: absolute;
  clip: rect(0, 0, 0, 0);
  height: 0;
  width: 0;
}

.fancybox-close-small {
  width: 22px;
  height: 22px;
}

.fancybox-close-small:hover, .fancybox-close-small:focus, .fancybox-close-small:active {
  background-color: #FFFFFF;
}

.fancybox-close-small:hover:after, .fancybox-close-small:focus:after, .fancybox-close-small:active:after {
  color: #107bbf;
  background-color: #FFFFFF;
}

.fancybox-close-small:after {
  top: 12px;
  right: 15px;
  width: 22px;
  height: 22px;
  font: 28px/28px "Museo Sans Rounded";
  color: #231f20;
  font-weight: 400;
  background: #FFFFFF;
  -webkit-transition: background .2s;
  transition: background .2s;
}

.fancybox-skin {
  background: none;
}

.log-out-modal .button-well {
  padding: 0;
}

/* End Modals */
/* -- dashboard -----------------------------*/
.path--manage-policies #page-title {
  margin: 0 0 40px;
  border: 0;
  padding: 0;
  text-align: left;
}

@media screen and (max-width: 63.9375em) {
  .path--manage-policies #page-title {
    margin-bottom: 1rem;
    text-align: left;
  }
}

.path--manage-policies #page-title + #travel-advisory {
  margin-top: 40px;
}

#dashboard-intro {
  margin-bottom: 40px;
}

#dashboard-intro h2 {
  margin-bottom: 15px;
}

@media screen and (max-width: 63.9375em) {
  #dashboard-intro h2 {
    display: inline-block;
    float: left;
    margin-bottom: 40px;
    font-size: 1rem;
  }
}

#dashboard-intro h2 span {
  text-transform: capitalize;
}

@media screen and (max-width: 63.9375em) {
  #dashboard-intro h2 span {
    font-weight: 700;
  }
}

#dashboard-intro p {
  margin-bottom: 0;
}

@media screen and (max-width: 63.9375em) {
  #dashboard-intro p {
    display: inline-block;
    float: left;
    margin-top: .75rem;
  }
}

#dashboard-intro .actions-wrapper {
  min-height: 74px;
  padding-top: 13px;
  border-left: 1px solid #959595;
  text-align: right;
}

@media screen and (max-width: 63.9375em) {
  #dashboard-intro .actions-wrapper {
    min-height: inherit;
    border-left: none;
    text-align: left;
    margin-top: 1rem;
  }
}

#dashboard-intro .actions-wrapper button {
  padding-left: 30px;
  padding-right: 30px;
}

#dashboard-intro .actions-wrapper button.secondary-action {
  color: #13B5EA;
  background-color: #FFFFFF;
  -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;
  border: 1px solid #13B5EA;
}

#dashboard-intro .actions-wrapper button + button {
  min-width: 200px;
  margin-left: 20px;
}

@media screen and (max-width: 63.9375em) {
  #dashboard-intro .actions-wrapper button + button {
    margin: 20px 0 0 0;
  }
}

#claims.policy-list-capsule .policy-table tbody td.destinations::before {
  content: 'Claim Date';
}

.policy-list-capsule {
  margin-bottom: 50px;
  padding-bottom: 0;
  border: 1px solid rgba(10, 10, 10, 0.25);
}

.policy-list-capsule .capsule-header {
  margin: 0 3rem 30px 3rem;
  padding: 2rem 0;
  border-bottom: 1px solid #959595;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .capsule-header {
    margin: 0;
    border-bottom: 0;
  }
}

.policy-list-capsule .capsule-header.active h2 {
  display: block;
  font-weight: 300;
  position: relative;
}

.policy-list-capsule .capsule-header.active h2::before {
  background: url("../images/icons/active-policies.svg") no-repeat 0 0;
  background-size: 36px 44px;
  content: '';
  display: inline-block;
  height: 40px;
  vertical-align: text-bottom;
  width: 44px;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .capsule-header.active {
    background-position: center 40px;
  }
}

.policy-list-capsule .capsule-header.cancelled h2 {
  display: block;
  font-weight: 300;
  position: relative;
}

.policy-list-capsule .capsule-header.cancelled h2::before {
  background: url("../images/icons/calendar.svg") no-repeat 0 0;
  background-size: 36px 44px;
  content: '';
  display: inline-block;
  height: 40px;
  vertical-align: text-bottom;
  width: 44px;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .capsule-header.cancelled {
    background-position: center 40px;
  }
}

.policy-list-capsule .capsule-header.claims h2 {
  display: block;
  font-weight: 300;
  position: relative;
}

.policy-list-capsule .capsule-header.claims h2::before {
  background: url("../images/icons/claims.svg") no-repeat 0 0;
  background-size: 36px 44px;
  content: '';
  display: inline-block;
  height: 40px;
  vertical-align: text-bottom;
  width: 44px;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .capsule-header.claims {
    background-position: center 40px;
  }
}

.policy-list-capsule .capsule-header.past h2 {
  display: block;
  font-weight: 300;
  position: relative;
}

.policy-list-capsule .capsule-header.past h2::before {
  background: url("../images/icons/past-policies.svg") no-repeat 0 0;
  background-size: 36px 44px;
  content: '';
  display: inline-block;
  height: 40px;
  vertical-align: text-bottom;
  width: 44px;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .capsule-header.past {
    background-position: center 40px;
  }
}

.policy-list-capsule .capsule-header h2 {
  font-size: 1.875rem;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .capsule-header h2 {
    text-align: left;
    padding-left: 1rem;
  }
}

.policy-list-capsule .policy-table {
  width: 100%;
  border-collapse: collapse;
  margin: 0;
}

.policy-list-capsule .policy-table tbody {
  border: 0;
}

.policy-list-capsule .policy-table thead {
  background-color: transparent;
  border: 0;
}

.policy-list-capsule .policy-table thead th {
  padding-bottom: 15px;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  width: 20%;
  padding-top: 0;
  padding-left: 0;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table thead th {
    visibility: hidden;
    position: absolute;
    clip: rect(0, 0, 0, 0);
  }
}

.policy-list-capsule .policy-table thead th:first-of-type {
  width: 30%;
  padding-left: 3rem;
}

.policy-list-capsule .policy-table thead th:last-of-type {
  width: 10%;
  padding-right: 3rem;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table tbody tr {
    position: relative;
    display: block;
    width: 100%;
  }
}

.policy-list-capsule .policy-table tbody tr:nth-of-type(odd) {
  background-color: #F8F8F8;
}

.policy-list-capsule .policy-table tbody td {
  padding: 15px 0;
  line-height: 1;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table tbody td {
    display: none;
    padding: 20px 15px;
    overflow: auto;
    white-space: normal;
    text-overflow: inherit;
    max-width: none;
  }
  .policy-list-capsule .policy-table tbody td:empty {
    display: none;
  }
}

.policy-list-capsule .policy-table tbody td:first-of-type {
  padding-left: 3rem;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table tbody td:first-of-type {
    padding-left: 15px;
    padding-top: 30px;
  }
}

.policy-list-capsule .policy-table tbody td:last-of-type {
  padding-right: 3rem;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table tbody td:last-of-type {
    padding-right: 15px;
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table tbody td.actions {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table tbody td.policy-number, .policy-list-capsule .policy-table tbody td.destinations {
    display: block;
  }
  .policy-list-capsule .policy-table tbody td.policy-number:before, .policy-list-capsule .policy-table tbody td.destinations:before {
    display: block;
    margin-bottom: 5px;
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table tbody td.destinations:before {
    content: 'Destinations';
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-table tbody td.policy-number {
    padding-bottom: 30px;
  }
  .policy-list-capsule .policy-table tbody td.policy-number:before {
    content: 'Upgrade number';
  }
}

.policy-list-capsule .policy-table tbody td span {
  display: block;
  max-width: 150px;
  margin-bottom: 5px;
}

.policy-list-capsule .policy-table tbody td span.departure:after {
  content: ' - ';
}

.policy-list-capsule .policy-actions {
  margin: 0;
  font-size: 1rem;
}

.policy-list-capsule .policy-actions li {
  padding-left: 35px;
  color: #107bbf;
  cursor: pointer;
}

.policy-list-capsule .policy-actions li.cancel {
  background: url("../images/icons/action-cancel.png") no-repeat 0 5px;
  background-size: 15px 15px;
}

.policy-list-capsule .policy-actions li.claim {
  background: url("../images/icons/action-claim.png") no-repeat 0 5px;
  background-size: 16px 14px;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-actions li.claim {
    display: none;
  }
}

.policy-list-capsule .policy-actions li.manage {
  background: url("../images/icons/action-manage.png") no-repeat 0 3px;
  background-size: 16px 14px;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-actions li.manage {
    width: 50px;
    height: 50px;
    background: url("../images/icons/action-arrow.svg") no-repeat -25px -25px;
    background-size: 100px 100px;
    text-indent: -1000px;
    position: relative;
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-actions li.manage a {
    display: block;
    width: 36px;
    height: 36px;
    position: absolute;
    left: 0;
    top: 0;
  }
}

.policy-list-capsule .policy-actions li.view {
  background: url("../images/icons/action-view-modify.png") no-repeat 0 3px;
  background-size: 15px 15px;
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-actions li.view {
    width: 50px;
    height: 50px;
    background: url("../images/icons/action-arrow.svg") no-repeat -25px -25px;
    background-size: 100px 100px;
    text-indent: -1000px;
    position: relative;
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-list-capsule .policy-actions li.view a {
    display: block;
    width: 36px;
    height: 36px;
    position: absolute;
    left: 0;
    top: 0;
  }
}

#base-policy-info.policy-list-capsule {
  padding-bottom: 2rem;
}

@media screen and (min-width: 64em) {
  #base-policy-info.policy-list-capsule {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

#base-policy-info h2 {
  font-weight: 300;
  margin: 0 0 20px;
}

#base-policy-info .lead {
  font-size: 100%;
}

@media screen and (min-width: 40em) {
  #base-policy-info .lead {
    font-size: 125%;
  }
}

#base-policy-info .policy-actions {
  float: right;
}

@media screen and (min-width: 40em) {
  #base-policy-info .policy-actions {
    display: none;
  }
}

.no-policy-message {
  max-width: 650px;
  margin: 0 auto;
  padding: 60px 0;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

@media screen and (max-width: 63.9375em) {
  .no-policy-message {
    max-width: none;
    margin: 0 20px;
    padding: 20px 0;
    font-size: 1rem;
  }
}

.no-policy-message + .button-well {
  padding: 0;
  margin: 0 0 40px;
  border-top: none;
  text-align: center;
}

@media screen and (max-width: 63.9375em) {
  .no-policy-message + .button-well {
    margin-left: 20px;
    margin-right: 20px;
  }
}

.no-policy-message + .button-well input[type=button] + input[type=button] {
  margin-left: 50px;
}

@media screen and (max-width: 63.9375em) {
  .no-policy-message + .button-well input[type=button] + input[type=button] {
    margin-left: 0;
    margin-top: 20px;
  }
}

/* -- /dashboard -----------------------------*/
/* -- search -----------------------------*/
#page-title {
  margin-bottom: 40px;
  border-bottom: 1px solid #bcbcbc;
}

@media screen and (max-width: 63.9375em) {
  #page-title {
    margin-bottom: 10px;
  }
}

#login-fields,
#search-fields {
  margin-bottom: 50px;
  border: 1px solid rgba(10, 10, 10, 0.25);
  background-color: #FFFFFF;
  border-radius: 6px;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.1);
}

#login-fields {
  padding-top: 60px;
  padding-bottom: 60px;
}

@media screen and (max-width: 63.9375em) {
  #login-fields {
    padding-top: 20px;
    padding-bottom: 0;
  }
}

#search-options {
  margin: 0;
  border-bottom: 1px solid rgba(10, 10, 10, 0.25);
}

@media screen and (max-width: 63.9375em) {
  #search-options {
    display: none;
  }
}

#search-options li {
  display: inline-block;
  float: left;
  width: calc(50% - 1px);
  padding: 33px 0;
  border-right: 1px solid rgba(10, 10, 10, 0.25);
  font-size: 1.5rem;
  font-weight: 300;
  text-align: center;
  cursor: pointer;
}

#search-options li:first-of-type {
  border-top-left-radius: 6px;
}

#search-options li:last-of-type {
  border-right: none;
  border-top-right-radius: 6px;
}

#search-options li.selected {
  font-weight: 700;
  background-color: #F8F8F8;
}

.path--search .messages--error {
  display: none;
}

#search-fields h2 {
  display: none;
}

@media screen and (max-width: 63.9375em) {
  #search-fields h2 {
    display: block;
    padding: 23px 0;
    font-size: 1.25rem;
    font-weight: 700;
    text-align: center;
    background-color: #F8F8F8;
    border-top: 1px solid rgba(10, 10, 10, 0.25);
    border-bottom: 1px solid rgba(10, 10, 10, 0.25);
  }
}

#search-fields h2 div:first-of-type h2 {
  border-top: none;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}

@media screen and (max-width: 63.9375em) {
  #search-by-policy,
  #search-by-quote {
    display: block;
  }
}

.search-container {
  display: none;
}

.search-container.search-container-active {
  display: block;
}

.search-path {
  margin-bottom: 0;
  padding: 40px 110px;
}

@media screen and (max-width: 63.9375em) {
  .search-path {
    padding: 20px;
  }
}

.search-path label {
  margin-top: 15px;
}

@media screen and (max-width: 63.9375em) {
  .search-path label {
    margin-top: 0;
  }
}

.search-path strong {
  display: inline-block;
  padding: 10px 0 35px 0;
  font-size: 1.5rem;
  color: #4f4c4d;
}

.search-path .form-item--error .error {
  border-color: #bcbcbc;
}

.search-path .form-item--error-message strong {
  padding: 0;
  font-size: .8rem;
  color: #FD0E35;
}

.search-path .mask-birth-date,
.search-path .mask-telephone {
  width: 50%;
}

.primary-action {
  min-width: 200px;
}

.search-container .button-well {
  margin: 0;
  padding: 0 0 60px 267px;
  border-top: none;
}

@media screen and (max-width: 63.9375em) {
  .search-container .button-well {
    padding-left: 0;
  }
}

#pagination + .search-container .button-well {
  padding-left: 0;
  text-align: center;
}

.search-container .button-well.row {
  margin: 0 20px;
}

.search-result-wrapper .button-well {
  margin: 0;
  padding: 0 0 60px 0;
  border-top: none;
  text-align: center;
}

.search-result-wrapper .button-well.row {
  margin: 0 20px;
}

#search-results {
  margin-bottom: 20px;
  border: 1px solid rgba(10, 10, 10, 0.25);
  background-color: #FFFFFF;
  border-radius: 6px;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.1);
}

#search-results .results-table {
  width: 100%;
  margin-bottom: 60px;
  border-collapse: collapse;
}

#search-results .results-table thead th {
  padding: 25px 0 20px 0;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  width: 12.5%;
  border-bottom: 1px solid #ebebeb;
}

@media screen and (max-width: 63.9375em) {
  #search-results .results-table thead th {
    visibility: hidden;
    position: absolute;
    clip: rect(0, 0, 0, 0);
  }
}

#search-results .results-table thead th:first-of-type {
  padding-left: 35px;
}

#search-results .results-table thead th:last-of-type {
  padding-right: 35px;
}

#search-results .results-table tbody {
  border: 0;
  background-color: transparent;
}

@media screen and (max-width: 63.9375em) {
  #search-results .results-table tbody tr {
    display: block;
    width: 100%;
  }
}

#search-results .results-table tbody tr:nth-of-type(odd) {
  background-color: transparent;
}

#search-results .results-table tbody tr:nth-of-type(even) {
  background-color: #F8F8F8;
}

#search-results .results-table tbody td {
  word-wrap: break-word;
  font-size: 0.875rem;
  max-width: 0;
  padding: 15px 5px 15px 0;
  line-height: 1;
}

@media screen and (max-width: 63.9375em) {
  #search-results .results-table tbody td {
    display: block;
    padding: 10px 15px;
    overflow: auto;
    white-space: normal;
    text-overflow: inherit;
    max-width: none;
  }
  #search-results .results-table tbody td:empty {
    display: none;
  }
}

#search-results .results-table tbody td:first-of-type {
  padding-left: 35px;
}

@media screen and (max-width: 63.9375em) {
  #search-results .results-table tbody td:first-of-type {
    padding-left: 15px;
  }
}

#search-results .results-table tbody td:last-of-type {
  padding-right: 35px;
}

@media screen and (max-width: 63.9375em) {
  #search-results .results-table tbody td:last-of-type {
    padding-right: 15px;
  }
}

#search-results .results-table tbody td span {
  display: block;
  max-width: 150px;
  margin-bottom: 5px;
}

#search-results .results-table tbody td span.departure:after {
  content: ' - ';
}

#pagination {
  margin-bottom: 20px;
}

#pagination ul {
  margin: 0 0 0 30px;
}

@media screen and (max-width: 63.9375em) {
  #pagination ul {
    margin-left: calc(50% - 50px);
  }
}

#pagination ul li {
  display: inline-block;
  float: left;
  font-size: 1.125rem;
  padding: 0 5px;
}

/* -- /search -----------------------------*/
/* Payment
--------------------------------------------*/
.payment-page {
  /* Declarations */
}

.payment-page #content {
  margin-top: 120px;
}

@media screen and (max-width: 63.9375em) {
  .payment-page #content {
    margin-top: 40px;
  }
}

.payment-page #payment {
  border-top: 1px solid #a7a7a7;
  padding-top: 29px;
}

.payment-page input[type="radio"] + label {
  padding: 5px 0 0 40px;
  border: 0;
  background-size: 24px 24px;
  text-align: left;
  width: auto;
  min-width: 0;
}

.payment-page input[type="radio"]:checked + label {
  background-size: 24px 24px;
}

.payment-page section h2 {
  font-size: 1.125rem;
  margin-bottom: 20px;
}

.payment-page p, .payment-page h3 {
  font-size: 0.75rem;
}

.payment-page .expire-fields {
  font-weight: 400;
}

.payment-page .expire-fields legend {
  margin-bottom: 0;
  padding-bottom: 6px;
}

.payment-page .expire-fields .start {
  padding: 0 20px 5px 0;
}

@media screen and (max-width: 39.9375em) {
  .payment-page .expire-fields .start {
    /* Only affects medium-small screens and larger */
    padding: 0 0 5px 0;
  }
}

.payment-page label[for=securityCode] .ajax-help {
  margin-bottom: -20px;
}

.payment-page .declarations {
  margin-left: 0;
}

@media screen and (max-width: 63.9375em) {
  .payment-page .declarations {
    font-size: 0.75rem;
    border-top: 1px solid #a7a7a7;
    padding-top: 30px;
  }
}

.payment-page .declarations li {
  padding-left: 70px;
  padding-bottom: 35px;
}

@media screen and (max-width: 63.9375em) {
  .payment-page .declarations li {
    padding-left: 45px;
    padding-bottom: 15px;
  }
}

.payment-page .declarations label#declaration1-error.error {
  margin-top: 0;
}

.payment-page .declarations label.error2 {
  float: none;
  clear: both;
  margin-top: 20px;
  margin-left: 0;
  padding-left: 0;
  text-indent: 0;
}

/* Policy Details or View/Modify Sheet
--------------------------------------------*/
/* -- policy details - view/modify page -----------------------------*/
#page-title {
  position: relative;
  padding-left: 0;
  text-align: left;
  padding-bottom: 30px;
  margin-bottom: 40px;
  border-bottom: 1px solid #bcbcbc;
}

@media screen and (max-width: 63.9375em) {
  #page-title {
    padding-left: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
}

@media screen and (min-width: 81.25em) {
  #page-title {
    padding-left: 0;
  }
}

#page-title h1 {
  margin-bottom: 2rem;
  text-align: left;
}

@media screen and (max-width: 63.9375em) {
  #page-title h1 {
    padding-left: 1rem;
  }
}

#page-title .back-link {
  position: absolute;
  top: 7px;
  left: 0;
  width: 21px;
  height: 42px;
  overflow: hidden;
  text-indent: -1000px;
  background: url("../images/icons/return.png") no-repeat 0 0;
  background-size: 21px 42px;
}

@media screen and (max-width: 63.9375em) {
  #page-title .back-link {
    top: 4px;
    left: 0;
    width: 10px;
    height: 20px;
    background-size: 10px 20px;
  }
}

@media screen and (min-width: 81.25em) {
  #page-title .back-link {
    margin-left: -70px;
  }
}

#page-title p {
  margin: 0;
  font-size: 1.5rem;
}

@media screen and (max-width: 63.9375em) {
  #page-title p {
    font-size: 1rem;
  }
}

.policy-details-capsule {
  margin-bottom: 50px;
  padding-bottom: 0;
  border: 1px solid rgba(10, 10, 10, 0.25);
  background-color: #FFFFFF;
}

.policy-details-capsule .capsule-header {
  margin: 0;
  padding: 35px 70px 35px 70px;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  background-color: #F8F8F8;
  border-bottom: 1px solid #ebebeb;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .capsule-header {
    padding: 1.5rem .5rem;
  }
}

.policy-details-capsule .capsule-header h2 {
  font-size: 1.875rem;
  font-weight: 300;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .capsule-header h2 {
    font-size: 1.125rem;
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .capsule-header h2 .policy-number {
    margin-top: 10px;
  }
}

.policy-details-capsule .policy-actions {
  margin: 0;
  padding: 0 0 0 70px;
  border-bottom: 1px solid rgba(10, 10, 10, 0.25);
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-actions {
    padding: 0;
  }
}

.policy-details-capsule .policy-actions li {
  display: inline-block;
  float: left;
  padding: 20px 8.25% 20px 0;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-actions li {
    display: block;
    float: none;
    padding: .5rem .5rem;
    font-size: 0.875rem;
  }
}

.policy-details-capsule .policy-actions li:last-of-type {
  padding-bottom: 1.25rem;
}

.policy-details-capsule .policy-actions li.actions-caret {
  display: none;
  padding: 1.25rem .5rem;
  font-size: 1rem;
  font-weight: 500;
  color: #13B5EA;
  background: url("../images/icons/caret-up.svg") no-repeat 95% center;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-actions li.actions-caret {
    display: block;
  }
}

.policy-details-capsule .policy-actions li span {
  color: #13B5EA;
  cursor: pointer;
  font-weight: 500;
}

.policy-details-capsule .policy-actions li span:hover {
  text-decoration: underline;
  color: #109cc9;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-actions.closed li {
    display: none;
  }
}

.policy-details-capsule .policy-actions.closed li.actions-caret {
  background: url("../images/icons/select-arrow.svg") no-repeat 95% center;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-actions.closed li.actions-caret {
    display: block;
  }
}

.policy-details-capsule .policy-list {
  padding: 40px 70px;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-list {
    padding: 1.25rem 1rem;
  }
}

.policy-details-capsule .edit-link {
  display: inline-block;
  float: right;
  margin-right: 10px;
  font-size: 0.875rem;
  font-weight: 500;
  text-transform: capitalize;
  color: #13B5EA;
  cursor: pointer;
}

.policy-details-capsule .claim-details-information {
  margin: 40px 70px 0 70px;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information {
    margin: 20px 20px 0 20px;
  }
}

.policy-details-capsule .claim-details-information .item-heading.claims {
  min-height: 80px;
  padding-left: 70px;
  display: block;
  background: url("../images/icons/claims.svg") no-repeat 0 0;
  background-size: 44px 48px;
}

.policy-details-capsule .claim-details-information .item-heading.claims h3 {
  display: inline-block;
  font-weight: 300;
  font-size: 1.5rem;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information .item-heading.claims h3 {
    float: none;
    font-weight: 700;
  }
}

.policy-details-capsule .claim-details-information .claims-table {
  width: 100%;
  border-collapse: collapse;
}

.policy-details-capsule .claim-details-information .claims-table thead th {
  padding: 0 0 15px 0;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  width: 20%;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information .claims-table thead th {
    visibility: hidden;
    position: absolute;
    clip: rect(0, 0, 0, 0);
  }
}

.policy-details-capsule .claim-details-information .claims-table thead th:first-of-type {
  padding-left: 10px;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information .claims-table tbody tr {
    position: relative;
    display: block;
    width: 100%;
  }
}

.policy-details-capsule .claim-details-information .claims-table tbody tr:nth-of-type(odd) {
  background-color: #ebebeb;
}

.policy-details-capsule .claim-details-information .claims-table tbody td {
  padding: 15px 0;
  line-height: 1;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information .claims-table tbody td {
    display: none;
    padding: 10px 15px;
    overflow: auto;
    white-space: normal;
    text-overflow: inherit;
    max-width: none;
  }
  .policy-details-capsule .claim-details-information .claims-table tbody td:empty {
    display: none;
  }
}

.policy-details-capsule .claim-details-information .claims-table tbody td:first-of-type {
  padding-left: 10px;
}

.policy-details-capsule .claim-details-information .claims-table tbody td:last-of-type {
  font-size: 0.875rem;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information .claims-table tbody td:last-of-type {
    padding-top: 0;
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information .claims-table tbody td.policy-number, .policy-details-capsule .claim-details-information .claims-table tbody td.destinations, .policy-details-capsule .claim-details-information .claims-table tbody td:last-of-type {
    display: block;
  }
  .policy-details-capsule .claim-details-information .claims-table tbody td.policy-number:before, .policy-details-capsule .claim-details-information .claims-table tbody td.destinations:before, .policy-details-capsule .claim-details-information .claims-table tbody td:last-of-type:before {
    display: block;
    margin-bottom: 5px;
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information .claims-table tbody td.destinations:before {
    content: 'Destinations';
  }
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .claim-details-information .claims-table tbody td.policy-number:before {
    content: 'Claim number';
  }
}

.policy-details-capsule .claim-details-information .claims-table tbody td span {
  display: block;
  max-width: 150px;
  margin-bottom: 5px;
}

.policy-details-capsule .claim-details-information .claims-table tbody td span.departure:after {
  content: ' - ';
}

.policy-details-capsule .policy-details-information {
  margin: 0;
  padding: 0;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-details-information {
    margin: 0;
  }
}

.policy-details-capsule .policy-details-information.medium-offset-1 {
  margin-left: 3.125%;
}

.policy-details-capsule .policy-details-information .trip-details h4,
.policy-details-capsule .policy-details-information .coverage-details h4,
.policy-details-capsule .policy-details-information .travellers h4 {
  padding-bottom: 5px;
  font-weight: 500;
  font-size: 0.875rem;
  color: #4f4c4d;
  text-transform: uppercase;
}

.policy-details-capsule .policy-details-information .trip-details {
  margin-bottom: 2rem;
}

.policy-details-capsule .policy-details-information .trip-details .item-heading::before {
  content: '';
  display: inline-block;
  background: url("../images/icons/luggage-premium.svg") no-repeat -15px 5px;
  background-size: 70px 50px;
  width: 50px;
  height: 60px;
  vertical-align: bottom;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-details-information .trip-details {
    margin-bottom: -.5rem;
    padding-bottom: 0;
  }
}

.policy-details-capsule .policy-details-information .trip-details ul {
  margin: 0 0 20px 0;
  padding-bottom: 10px;
  border-bottom: 1px solid #bcbcbc;
}

.policy-details-capsule .policy-details-information .trip-details ul li {
  display: inline-block;
  float: left;
  color: #4f4c4d;
}

.policy-details-capsule .policy-details-information .trip-details ul.travel-dates li + li:before {
  content: '-';
  padding: 0 10px;
}

.policy-details-capsule .policy-details-information .travellers .item-heading::before {
  content: '';
  display: inline-block;
  background: url("../images/icons/traveller.svg") no-repeat -15px 5px;
  background-size: 70px 50px;
  width: 50px;
  height: 60px;
  vertical-align: bottom;
}

.policy-details-capsule .policy-details-information .travellers .traveller-list li {
  margin-bottom: 20px;
  padding-bottom: 0;
  border-bottom: 1px solid #bcbcbc;
  color: #4f4c4d;
}

.policy-details-capsule .policy-details-information .travellers .traveller-list li:last-of-type {
  border-bottom: none;
  margin-top: -1rem;
  margin-bottom: .5rem;
}

.policy-details-capsule .policy-details-information .travellers .traveller-list .traveller {
  display: block;
  margin-bottom: 15px;
}

.policy-details-capsule .policy-details-information .travellers .traveller-list .traveller-emc {
  display: block;
  padding: 10px;
  color: #231f20;
  background: #ebebeb;
}

.policy-details-capsule .policy-details-information .travellers .traveller-list .traveller-emc .edit-link {
  margin-right: 0;
}

.policy-details-capsule .policy-details-information .travellers .traveller-list .add-traveller {
  display: block;
  padding-top: 10px;
  cursor: pointer;
  color: #13B5EA;
  font-weight: 500;
  font-size: 0.875rem;
}

.policy-details-capsule .policy-details-information .travellers .traveller-list .add-traveller:hover {
  text-decoration: underline;
  color: #109cc9;
}

.policy-details-capsule .policy-details-information .coverage-details {
  margin-bottom: 20px;
  border-bottom: 1px solid #bcbcbc;
}

.policy-details-capsule .policy-details-information .coverage-details .item-heading::before {
  content: '';
  display: inline-block;
  background: url("../images/icons/active-policies.svg") no-repeat -15px 5px;
  background-size: 70px 50px;
  width: 50px;
  height: 60px;
  vertical-align: bottom;
}

.policy-details-capsule .policy-details-information .coverage-details h4 {
  margin: 5px 0;
}

.policy-details-capsule .policy-details-information .coverage-details .coverage-items .plan-name {
  display: inline-block;
  padding-bottom: 12px;
}

.policy-details-capsule .policy-details-information .item-heading {
  margin-bottom: 20px;
}

.policy-details-capsule .policy-details-information .item-heading h3 {
  display: inline-block;
  font-weight: 300;
  font-size: 1.5rem;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-details-information .item-heading h3 {
    float: none;
    font-size: 1.25rem;
  }
}

.policy-details-capsule .policy-details-information .item-heading h4 {
  margin-top: 12px;
  font-weight: 700;
  font-size: 0.875rem;
}

@media screen and (max-width: 63.9375em) {
  .policy-details-capsule .policy-details-information .coverage-details .item-heading {
    padding-top: 0;
  }
}

.change-panel {
  margin-bottom: 30px;
}

.change-panel .panel-header {
  padding: 20px 15px;
  font-size: 0.875rem;
  text-align: center;
  background-color: #4ec4e2;
}

.change-panel .panel-header strong {
  display: block;
  font-size: 1.125rem;
  font-weight: 700;
}

.change-panel .panel-content {
  padding: 40px 25px;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-top: none;
  color: #4f4c4d;
}

.change-panel .panel-content .price-list {
  margin: 0 0 5px 0;
  padding: 0;
}

.change-panel .panel-content .price-list li {
  padding-bottom: 10px;
}

.change-panel .panel-content .price-list .item {
  display: inline-block;
}

.change-panel .panel-content .price-list .value {
  display: inline-block;
  float: right;
  font-size: 0.9375rem;
}

.change-panel .panel-content .price-list .total {
  margin-top: 10px;
  padding: 15px 0 20px 0;
  border-top: 1px solid #bcbcbc;
}

.change-panel .panel-content .price-list .total .item {
  font-weight: 700;
}

.change-panel .panel-content button.primary-action,
.change-panel .panel-content input.form-submit {
  border: 1px solid #13B5EA;
  margin-bottom: 0;
  min-width: inherit;
  width: 100%;
  white-space: normal;
}

.change-panel .panel-content button.primary-action:hover,
.change-panel .panel-content input.form-submit:hover {
  border: 1px solid #13B5EA;
}

.revert-link {
  text-align: center;
  color: #107bbf;
  cursor: pointer;
}

.success-message {
  padding: 20px;
  background: #60d154;
  color: #FFFFFF;
  font-weight: 700;
  text-align: center;
}

.logged-out .messages--error {
  display: none;
}

/* -- /policy details - view/modify page -----------------------------*/
.notes-panel .panel-header {
  padding: 18px 35px;
  background: #00746b;
}

.notes-panel .panel-header h3 {
  margin: 0;
  padding: 0;
  font-size: 1.125rem;
  line-height: 1;
  color: #FFFFFF;
}

.notes-panel .panel-body {
  padding: 30px;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-top: none;
  background: #FFFFFF;
}

.notes-panel .panel-body .notes-list {
  margin: 0;
  height: 350px;
  overflow-y: scroll;
}

.notes-panel .panel-body .notes-list li {
  margin: 0 0 20px 0;
}

.notes-panel .panel-body .notes-list li .attribution-line {
  display: inline-block;
  width: 100%;
  margin-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(10, 10, 10, 0.25);
  font-size: 0.875rem;
}

.notes-panel .panel-body .notes-list li .attribution-line strong {
  margin-right: 20px;
}

.notes-panel .new-note {
  padding: 20px 12px 10px 12px;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-top: none;
  background: #f2f2f2;
}

.notes-panel .new-note h4 {
  margin: 0 0 15px 25px;
  font-size: 1.125rem;
  font-weight: 700;
  color: #666666;
}

.notes-panel .new-note .note-entry {
  min-height: 185px;
  margin-bottom: 10px;
}

.notes-panel .new-note .note-button {
  width: 100%;
  color: #107bbf;
  background: transparent;
}

#edit-dates {
  /* Date Picker */
  /*time styling*/
}

#edit-dates .row .row.datepicker-container,
#edit-dates .datepicker-container {
  margin-left: 0;
  margin-right: 0;
}

#edit-dates .row .row.datepicker-container li:first-of-type,
#edit-dates .datepicker-container li:first-of-type {
  padding-right: 60px;
  position: relative;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .row .row.datepicker-container li:first-of-type,
  #edit-dates .datepicker-container li:first-of-type {
    /* Only affects medium screens and smaller */
    padding-right: 5px;
    background: none;
  }
}

@media screen and (min-width: 40em) {
  #edit-dates .row .row.datepicker-container li:first-of-type::after,
  #edit-dates .datepicker-container li:first-of-type::after {
    background: #a7a7a7;
    content: "";
    height: 1px;
    position: absolute;
    width: 60px;
    top: 55%;
    right: -55px;
  }
}

#edit-dates .row .row.datepicker-container li:last-of-type,
#edit-dates .datepicker-container li:last-of-type {
  padding-left: 60px;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .row .row.datepicker-container li:last-of-type,
  #edit-dates .datepicker-container li:last-of-type {
    /* Only affects medium screens and smaller */
    padding-left: 5px;
    background: none;
  }
}

#edit-dates .row .row.datepicker-container li input[type="text"],
#edit-dates .datepicker-container li input[type="text"] {
  background-color: transparent, transparent;
  background-image: url("../images/icons/calendar.svg"), url("../images/icons/select-arrow.svg");
  background-repeat: no-repeat, no-repeat;
  background-position: 0 50%, 95% 55%;
  background-size: 60px 60px, 16px 16px;
  padding: 2px 30px 0 72px;
  font-size: 1.5rem;
  font-weight: 300;
  height: 75px;
}

#edit-dates .calendar-container {
  position: relative;
  top: -23px;
  z-index: 10000;
}

#edit-dates .button-well {
  margin: 35px 0 20px 0;
  padding: 0;
  text-align: left;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .button-well {
    text-align: center;
  }
}

#edit-dates .date-picker {
  width: 170px;
  height: 25px;
  padding: 0;
  border: 0;
  line-height: 25px;
  padding-left: 10px;
  font-size: 0.75rem;
  font-family: "Museo Sans Rounded";
  font-weight: 700;
  cursor: pointer;
  color: #231f20;
  position: relative;
  z-index: 2;
}

#edit-dates .date-picker-wrapper {
  position: absolute;
  z-index: 1;
  margin-top: 3px;
  border: 1px solid #FFFFFF;
  background-color: #FFFFFF;
  padding: 0 7px 7px 7px;
  font-size: 0.875rem;
  line-height: 20px;
  color: #231f20;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  -webkit-box-shadow: 0px 2px 17px 0 rgba(0, 0, 0, 0.5);
  box-shadow: 0px 2px 17px 0 rgba(0, 0, 0, 0.5);
  -webkit-box-sizing: initial;
  box-sizing: initial;
  top: 0 !important;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .date-picker-wrapper {
    position: fixed;
    top: 0 !important;
    left: 0 !important;
    width: 100vw;
    height: 100vh;
    border-radius: 0;
    border: 0;
    margin: -10px 0 0 0;
    padding-top: 10px;
    padding-bottom: 30px;
    -webkit-box-shadow: none;
    box-shadow: none;
    max-height: none;
    max-width: none;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
}

#edit-dates .dp-clearfix {
  clear: both;
  height: 0;
  font-size: 0;
}

#edit-dates .custom-top {
  margin-bottom: 15px;
}

@media screen and (min-width: 72.25em) {
  #edit-dates .custom-top #mobileDepartureDateDisplay,
  #edit-dates .custom-top #mobileReturnDateDisplay,
  #edit-dates .custom-top .close-calendar {
    display: none;
  }
}

#edit-dates .custom-top .display-date-inputs {
  display: inline-block;
  height: 22px;
  width: 40%;
  padding: 2px 0 0 40px;
  margin: 15px 0;
  border: none;
  background: url("../images/icons/calendar.svg") no-repeat 10px 50%;
  background-size: 20px 20px;
  border-radius: 0;
}

#edit-dates .custom-top .display-date-inputs:last-of-type {
  border-left: 1px solid #FFFFFF;
}

#edit-dates .custom-top .close-calendar {
  width: 15px;
  margin-left: calc(20% - 25px);
}

#edit-dates .date-picker-wrapper.inline-wrapper {
  position: relative;
  -webkit-box-shadow: none;
  box-shadow: none;
  display: inline-block;
}

#edit-dates .date-picker-wrapper.single-date {
  width: auto;
}

#edit-dates .date-picker-wrapper.no-shortcuts {
  padding-bottom: 0;
}

#edit-dates .date-picker-wrapper.no-topbar {
  padding-top: 12px;
}

#edit-dates .date-picker-wrapper .footer {
  font-size: 0.6875rem;
  padding-top: 3px;
}

#edit-dates .date-picker-wrapper b {
  color: #666666;
  font-weight: 700;
}

#edit-dates .date-picker-wrapper a {
  color: #107bbf;
  text-decoration: underline;
}

#edit-dates .date-picker-wrapper .month-wrapper table th.month-name,
#edit-dates .date-picker-wrapper .month-name {
  text-transform: uppercase;
  font-family: "Museo Sans Rounded";
  font-weight: 700;
  font-size: 0.9375rem;
}

#edit-dates .date-picker-wrapper .select-wrapper {
  position: relative;
  overflow: hidden;
  display: inline-block;
  vertical-align: middle;
}

#edit-dates .date-picker-wrapper .select-wrapper:hover {
  text-decoration: underline;
}

#edit-dates .date-picker-wrapper .month-element {
  display: inline-block;
  vertical-align: middle;
}

#edit-dates .date-picker-wrapper .select-wrapper select {
  position: absolute;
  margin: 0;
  padding: 0;
  left: 0;
  top: -1px;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  text-transform: inherit;
  color: inherit;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
  outline: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=1)";
  filter: alpha(opacity=1);
  opacity: 0.01;
}

#edit-dates .date-picker-wrapper .month-wrapper {
  background-color: #FFFFFF;
  padding: 0;
  cursor: default;
  position: relative;
  _overflow: hidden;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .date-picker-wrapper .month-wrapper {
    width: 100% !important;
  }
}

#edit-dates .date-picker-wrapper .month-wrapper table {
  width: 266px;
  float: left;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .date-picker-wrapper .month-wrapper table {
    width: 85%;
    float: none;
    margin-left: 7.5%;
  }
}

#edit-dates .date-picker-wrapper .month-wrapper table.month2 {
  width: 266px;
  float: left;
  margin-right: 0;
}

#edit-dates .date-picker-wrapper .month-wrapper table th,
#edit-dates .date-picker-wrapper .month-wrapper table td {
  vertical-align: middle;
  text-align: center;
  line-height: 14px;
  margin: 0px;
  padding: 0px;
}

#edit-dates .date-picker-wrapper .month-wrapper table th {
  line-height: 14px;
  font-size: 0.875rem;
  font-family: "Museo Sans Rounded";
  font-weight: 700;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .date-picker-wrapper .month-wrapper table th {
    width: 14.285%;
  }
}

#edit-dates .date-picker-wrapper .month-wrapper table .day {
  min-width: 28px;
  max-width: 38px;
  min-height: 22px;
  max-height: 24px;
  padding: 8px 5px 2px 5px;
  line-height: 1;
  font-size: 0.875rem;
  margin: 3px auto;
  color: #a7a7a7;
  cursor: default;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .date-picker-wrapper .month-wrapper table .day {
    max-width: inherit;
    max-height: inherit;
  }
}

#edit-dates .date-picker-wrapper .month-wrapper table div.day.lastMonth, #edit-dates .date-picker-wrapper .month-wrapper table div.day.nextMonth {
  color: #231f20;
  cursor: default;
}

#edit-dates .date-picker-wrapper .month-wrapper table .day.checked {
  background-color: #fecb2f;
}

#edit-dates .date-picker-wrapper .month-wrapper table .week-name {
  height: 20px;
  line-height: 20px;
  font-weight: 100;
  text-transform: uppercase;
}

#edit-dates .date-picker-wrapper .month-wrapper table .day.has-tooltip {
  cursor: help !important;
}

#edit-dates .date-picker-wrapper .month-wrapper table .day.has-tooltip .tooltip {
  white-space: nowrap;
}

#edit-dates .date-picker-wrapper .time label {
  white-space: nowrap;
}

#edit-dates .date-picker-wrapper .month-wrapper table .day.toMonth.valid {
  color: #231f20;
  cursor: pointer;
}

#edit-dates .date-picker-wrapper .month-wrapper table .day.toMonth.hovering {
  background-color: #fecb2f;
}

#edit-dates .date-picker-wrapper .month-wrapper table .day.nextMonth, #edit-dates .date-picker-wrapper .month-wrapper table .day.lastMonth {
  display: none;
}

#edit-dates .date-picker-wrapper .month-wrapper table .day.real-today {
  background-color: #FFFFFF;
}

#edit-dates .date-picker-wrapper .month-wrapper table .day.real-today.checked, #edit-dates .date-picker-wrapper .month-wrapper table .day.real-today.hovering {
  background-color: #666666;
  color: #FFFFFF;
  font-family: "Museo Sans Rounded";
  font-weight: 700;
}

#edit-dates .date-picker-wrapper table .caption {
  height: 40px;
}

#edit-dates .date-picker-wrapper table .caption > th:first-of-type, #edit-dates .date-picker-wrapper table .caption > th:last-of-type {
  width: 27px;
}

#edit-dates .date-picker-wrapper table .caption .next,
#edit-dates .date-picker-wrapper table .caption .prev {
  padding: 0 5px;
  cursor: pointer;
}

#edit-dates .date-picker-wrapper table .caption .next {
  position: relative;
  left: -5px;
}

#edit-dates .date-picker-wrapper table .caption .next:hover,
#edit-dates .date-picker-wrapper table .caption .prev:hover {
  background-color: transparent;
  color: #231f20;
}

#edit-dates .date-picker-wrapper .gap {
  position: relative;
  z-index: 1;
  width: 3px;
  background-color: #FFFFFF;
  font-size: 0;
  line-height: 0;
  float: left;
  top: -5px;
  margin: 0 10px -10px;
  height: 0;
}

#edit-dates .date-picker-wrapper .gap .gap-lines {
  height: 100%;
  overflow: hidden;
}

#edit-dates .date-picker-wrapper .gap .gap-line {
  height: 15px;
  width: 5px;
  position: relative;
}

#edit-dates .date-picker-wrapper .gap .gap-line .gap-1 {
  z-index: 1;
  height: 0;
  border-left: 8px solid #FFFFFF;
  border-top: 8px solid #231f20;
  border-bottom: 8px solid #231f20;
}

#edit-dates .date-picker-wrapper .gap .gap-line .gap-2 {
  position: absolute;
  right: 0;
  top: 0px;
  z-index: 2;
  height: 0;
  border-left: 8px solid transparent;
  border-top: 8px solid #FFFFFF;
}

#edit-dates .date-picker-wrapper .gap .gap-line .gap-3 {
  position: absolute;
  right: 0;
  top: 8px;
  z-index: 2;
  height: 0;
  border-left: 8px solid transparent;
  border-bottom: 8px solid #FFFFFF;
}

#edit-dates .date-picker-wrapper .gap .gap-top-mask {
  width: 6px;
  height: 1px;
  position: absolute;
  top: -1px;
  left: 1px;
  background-color: #FFFFFF;
  z-index: 3;
}

#edit-dates .date-picker-wrapper .gap .gap-bottom-mask {
  width: 6px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 7px;
  background-color: #FFFFFF;
  z-index: 3;
}

#edit-dates .date-picker-wrapper .selected-days {
  display: none;
}

#edit-dates .date-picker-wrapper .drp_top-bar {
  line-height: 1.4;
  position: relative;
  padding: 0;
}

#edit-dates .date-picker-wrapper .drp_top-bar .error-top,
#edit-dates .date-picker-wrapper .drp_top-bar .normal-top {
  display: none;
}

#edit-dates .date-picker-wrapper .drp_top-bar .default-top {
  display: block;
}

#edit-dates .date-picker-wrapper .drp_top-bar.error .default-top {
  display: none;
}

#edit-dates .date-picker-wrapper .drp_top-bar.error .error-top {
  display: block;
  color: #FD0E35;
}

#edit-dates .date-picker-wrapper .drp_top-bar.normal .default-top {
  display: none;
}

#edit-dates .date-picker-wrapper .drp_top-bar.normal .normal-top {
  display: block;
}

#edit-dates .date-picker-wrapper .drp_top-bar.normal .normal-top .selection-top {
  color: #231f20;
}

#edit-dates .date-picker-wrapper .drp_top-bar .apply-btn {
  position: absolute;
  right: 0px;
  top: 6px;
  padding: 3px 5px;
  margin: 0;
  font-size: 0.75rem;
  border-radius: 4px;
  cursor: pointer;
  border: solid 1px #0076a3;
  background: #0095cd;
  background: -moz-linear-gradient(top, #00adee, #0078a5);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00adee', endColorstr='#0078a5');
  color: #FFFFFF;
  line-height: initial;
}

#edit-dates .date-picker-wrapper .drp_top-bar .apply-btn.disabled {
  cursor: pointer;
  color: #606060;
  border: solid 1px #b7b7b7;
  background: #fff;
  background: -moz-linear-gradient(top, #fff, #ededed);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed');
}

#edit-dates .date-picker-wrapper .time {
  position: relative;
}

#edit-dates .date-picker-wrapper.single-month .time {
  display: block;
}

#edit-dates .date-picker-wrapper .time input[type=range] {
  vertical-align: middle;
  width: 129px;
  padding: 0;
  margin: 0;
  height: 20px;
}

#edit-dates .date-picker-wrapper .time1 {
  width: 180px;
  padding: 0 5px;
  text-align: center;
}

#edit-dates .time2 {
  width: 180px;
  padding: 0 5px;
  text-align: center;
}

#edit-dates .date-picker-wrapper .time1 {
  float: left;
}

#edit-dates .date-picker-wrapper .time2 {
  float: right;
}

#edit-dates .date-picker-wrapper .hour {
  text-align: right;
}

#edit-dates .minute {
  text-align: right;
}

#edit-dates .date-picker-wrapper .hide {
  display: none;
}

#edit-dates .date-picker-wrapper .first-date-selected,
#edit-dates .date-picker-wrapper .last-date-selected {
  background-color: #666666 !important;
  color: #FFFFFF !important;
  border-radius: 0;
  font-family: "Museo Sans Rounded";
  font-weight: 700;
}

#edit-dates .date-picker-wrapper .first-date-selected:before,
#edit-dates .date-picker-wrapper .last-date-selected:before {
  content: " ";
  width: 100%;
  background-color: #666666;
}

@media screen and (max-width: 49.9375em) {
  #edit-dates .date-picker-wrapper .first-date-selected,
  #edit-dates .date-picker-wrapper .last-date-selected {
    max-width: 25px !important;
    max-height: 25px !important;
  }
}

#edit-dates .date-picker-wrapper .date-range-length-tip {
  position: absolute;
  margin-top: -4px;
  margin-left: -8px;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  display: none;
  background-color: rgba(10, 10, 10, 0.25);
  padding: 0 6px;
  border-radius: 2px;
  font-size: 0.75rem;
  line-height: 16px;
  -webkit-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
  -moz-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
  -ms-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
  -o-filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
  filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
}

#edit-dates .date-picker-wrapper .date-range-length-tip:after {
  content: '';
  position: absolute;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid transparent;
  left: 50%;
  margin-left: -4px;
  bottom: -4px;
}

#edit-dates .date-picker-wrapper.two-months.no-gap .month1 .next,
#edit-dates .date-picker-wrapper.two-months.no-gap .month2 .prev {
  display: none;
}

#edit-dates .date-picker-wrapper .week-number {
  padding: 5px 0;
  line-height: 1;
  font-size: 0.75rem;
  margin-bottom: 1px;
  color: #231f20;
  cursor: pointer;
}

#edit-dates .date-picker-wrapper .week-number.week-number-selected {
  color: #231f20;
  font-weight: bold;
}

@media screen and (min-width: 50em) {
  #edit-dates {
    min-height: 590px;
  }
}

#edit-destination {
  min-height: 550px;
  /* Country/Region Selector */
  /* Display Field */
  /* Selector Button */
  /* Display Grid */
  /* Country Lister */
  /* AutoComplete */
  /* Popular Destinations */
}

#edit-destination #country {
  overflow: hidden;
  position: relative;
  z-index: 5;
  float: left;
  display: block;
  width: 100%;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #FFFFFF;
}

#edit-destination #country.focusLevel {
  border: 1px solid #107bbf;
}

#edit-destination #country.focusLevel:focus, #edit-destination #country.focusLevel:active {
  border: 1px solid #107bbf;
}

#edit-destination label#country-error.error {
  position: relative;
  top: -13px;
  margin: 0;
}

#edit-destination .destination-menu-toggle {
  position: relative;
  float: right;
  width: 22px;
  height: 22px;
  margin: -50px 10px 0 0;
  padding: 0;
  border: 0;
  background: #FFFFFF url("../images/icons/select-arrow.svg") no-repeat 50% 50%;
  background-size: 16px 16px;
  overflow: hidden;
  text-indent: -300px;
  z-index: 6;
  cursor: pointer;
}

#edit-destination .destination-menu-toggle:hover, #edit-destination .destination-menu-toggle:focus, #edit-destination .destination-menu-toggle:active {
  background-color: #FFFFFF;
}

#edit-destination .destination-menu {
  position: absolute;
  top: 90px;
  z-index: 4;
  width: 100%;
  min-width: 272px;
  height: 380px;
  margin: 0;
  padding: 0;
  background-color: #FFFFFF;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.5);
  /* Region/Country Grouping */
  /* Labels/Legends */
  /* Opening Regions */
  /* Columns */
}

#edit-destination .destination-menu .region-container {
  overflow: auto;
  position: absolute;
  width: 100%;
  height: 275px;
  margin: 0;
  padding: 0;
  border: 0;
  -webkit-overflow-scrolling: touch;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu .region-container {
    /* Only affects large screens and larger */
    overflow: hidden;
    height: 385px;
    font-size: 0.9375rem;
  }
}

#edit-destination .destination-menu .region {
  width: 100%;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu .region {
    width: 385px;
  }
}

#edit-destination .destination-menu .region.active {
  z-index: 1000;
}

#edit-destination .destination-menu .region input[type="radio"]:checked + .region-lebel {
  background: #666666;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu .region input[type="radio"]:checked + .region-lebel {
    background: none;
  }
}

#edit-destination .destination-menu .region input[type="radio"]:checked + .region-lebel strong {
  color: #FFFFFF;
  background: #666666;
}

#edit-destination .destination-menu legend {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 0 !important;
  height: 0;
}

#edit-destination .destination-menu .region-lebel {
  margin: 0;
  width: 100%;
  background: none;
  -webkit-user-select: none;
  color: #666666;
  min-width: auto;
  min-height: auto;
  padding: 0;
  border: none;
  border-radius: 0;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu .region-lebel {
    display: block;
    width: 200px;
    height: auto;
  }
}

#edit-destination .destination-menu .region-lebel strong {
  display: block;
  padding: 10px 15px;
  font-family: Helvetica;
  font-weight: 400;
  font-size: 0.8125rem;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu .region-lebel strong {
    float: left;
    width: 250px;
    height: auto;
    background: none;
  }
}

#edit-destination .destination-menu input[type="radio"] + label ~ div.destination-list-wrapper {
  overflow: hidden;
  float: none;
  position: absolute;
  clip: rect(0, 0, 0, 0);
  width: 100%;
  height: 0;
  margin: 0;
  padding: 0;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu input[type="radio"] + label ~ div.destination-list-wrapper {
    overflow: auto;
  }
}

#edit-destination .destination-menu input[type="radio"]:checked + label ~ div.destination-list-wrapper {
  height: auto;
  position: absolute;
  top: 0;
  left: 250px;
  clip: auto;
}

@media screen and (max-width: 63.9375em) {
  #edit-destination .destination-menu input[type="radio"]:checked + label ~ div.destination-list-wrapper {
    position: inherit;
    top: auto;
    left: auto;
  }
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu input[type="radio"]:checked + label ~ div.destination-list-wrapper {
    float: left;
    height: 384px;
  }
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu input[type="radio"]:focus + label {
    outline: none;
  }
}

#edit-destination .destination-menu .destination-list {
  overflow: hidden;
  float: none;
  position: static;
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu .destination-list {
    /* Only affects large screens and larger */
    position: relative;
    z-index: 10;
    float: left !important;
    width: 160px;
    margin: 0;
  }
}

#edit-destination .destination-menu .destination-list input[type="radio"] {
  margin-left: 20px;
  z-index: 1;
}

#edit-destination .destination-menu .destination-list input[type="radio"]:checked + label {
  border-radius: 0;
  background: #666666;
  color: #FFFFFF;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu .destination-list li {
    margin: 0;
    padding: 0;
  }
}

#edit-destination .destination-menu .destination-list label {
  min-height: 35px;
  margin: 0 0 0 10px;
  padding: 13px 15px 0 10px;
  border: 0;
  background: none;
  font-size: 0.875rem;
  color: #666666;
  -webkit-user-select: none;
  cursor: pointer;
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-menu .destination-list label {
    /* Only affects large screens and larger */
    padding: 8px 0 0 10px;
  }
}

#edit-destination .destination-menu .destination-list label:hover {
  text-decoration: underline;
}

#edit-destination .destination-menu .destination-list label:focus {
  outline: none;
}

#edit-destination .destination-list {
  display: inline-block;
  float: left;
  margin: 0 0 16px 0;
  padding: 0;
}

#edit-destination .destination-list li {
  display: inline-block;
  float: left;
  margin: 5px 0 0;
  padding: 0 15px 0 0;
  background: none;
}

#edit-destination .destination-list li button {
  height: 50px;
  margin: 0;
  padding: 12px 45px 12px 25px;
  border: 1px solid #bcbcbc;
  border-radius: 25px;
  font-family: Helvetica;
  font-weight: 400;
  font-size: 0.9375rem;
  text-decoration: none;
  text-align: left;
  color: #231f20;
  background: #FFFFFF url("../images/buttons/close.svg") no-repeat;
  background-position: right 20px center;
  background-size: 13px 13px;
}

#edit-destination .destination-list li button:hover {
  border-color: #107bbf;
}

#edit-destination .add-destination {
  display: inline-block;
  float: left;
  overflow: hidden;
  width: 25px;
  height: 25px;
  margin: 12px 0 0 0;
  padding: 0;
  border: none;
  background: transparent url("../images/icons/add-icon.svg") no-repeat center;
  background-size: 25px 25px;
  text-indent: -1000px;
}

#edit-destination .add-destination:hover, #edit-destination .add-destination:active, #edit-destination .add-destination:focus {
  background-color: transparent;
}

#edit-destination .destination-autocomplete {
  display: none;
  position: absolute;
  z-index: 4;
  padding: 10px 0 0;
  top: 0;
}

#edit-destination .destination-autocomplete .ui-autocomplete {
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
  overflow-x: hidden;
  overflow-y: scroll;
  min-width: 272px;
  max-width: 780px;
  height: 250px;
  margin: 0;
  padding: 0 0 20px 0;
  border: none;
  border-radius: 0;
  background: #FFFFFF;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.5);
}

@media screen and (min-width: 64em) {
  #edit-destination .destination-autocomplete .ui-autocomplete {
    max-width: 280px;
  }
}

#edit-destination .destination-autocomplete .ui-menu-item,
#edit-destination .destination-autocomplete .ui-menu-item:hover,
#edit-destination .destination-autocomplete .ui-menu-item:focus,
#edit-destination .destination-autocomplete .ui-menu-item:active {
  display: block;
  width: 100%;
  height: 40px;
  padding: 7px 0 0 30px;
  background: transparent none !important;
  border: 0 !important;
  font-family: Helvetica;
  font-weight: 400;
  font-size: 0.9375rem;
  color: #666666;
  cursor: pointer;
  text-align: left;
  list-style-image: none;
}

#edit-destination .destination-autocomplete .ui-menu-item:focus,
#edit-destination .destination-autocomplete .ui-menu-item:hover:focus,
#edit-destination .destination-autocomplete .ui-menu-item:focus:focus,
#edit-destination .destination-autocomplete .ui-menu-item:active:focus {
  outline: none;
}

#edit-destination .destination-autocomplete .ui-menu .ui-state-focus {
  margin: 0;
  text-decoration: underline;
}

#edit-destination .ui-button:active {
  background: transparent none !important;
  border-color: #FFFFFF !important;
  color: #666666;
  text-decoration: underline;
}

#edit-destination .ui-button.ui-state-active:hover {
  background: transparent none !important;
  border-color: #FFFFFF !important;
  color: #666666;
  text-decoration: underline;
}

#edit-destination .popular {
  position: absolute;
  top: 0;
  z-index: 4;
  width: 100%;
  min-height: 150px;
  max-height: 390px;
  margin: 0;
  padding: 0 0 20px 0;
  border-radius: 0;
  background: #FFFFFF;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.5);
}

@media print {
  #edit-destination .popular {
    /* Only affects print media */
    display: none;
  }
}

#edit-destination .popular ul {
  width: 100%;
  margin: 10px 0 0;
  padding: 0;
}

#edit-destination .popular strong {
  display: block;
  margin-top: 20px;
  padding-left: 20px;
  color: #231f20;
  font-size: 1.3125rem;
}

#edit-destination .popular li {
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
}

#edit-destination .popular a {
  display: block;
  width: 100%;
  padding: 7px 0 7px 20px;
  background: none;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  text-decoration: none;
  text-align: left;
  color: #231f20;
  font-family: Helvetica;
  font-weight: 400;
  font-size: 0.9375rem;
}

#edit-destination .popular a:active, #edit-destination .popular a:focus, #edit-destination .popular a:hover {
  text-decoration: underline;
}

#edit-destination .popular a:focus {
  outline: none;
}

#edit-destination .selectRegion a {
  display: block;
  width: 100%;
  padding: 10px 0 10px 30px;
  background: none;
  border: 0;
  font-weight: normal;
  text-align: left;
  text-decoration: none;
}

#edit-destination .selectRegion a:active, #edit-destination .selectRegion a:focus, #edit-destination .selectRegion a:hover {
  text-decoration: underline;
}

#edit-destination .selectRegion a:focus {
  outline: none;
}

#edit-destination .selectRegion em {
  font-style: normal;
  color: #231f20;
}

#edit-destination section h2 {
  margin-right: 0;
  margin-left: 0;
}

#edit-destination .destination-list-wrapper {
  position: relative;
  display: block;
  clear: both;
  margin-top: 30px;
}

#edit-destination .ui-widget-header .ui-state-active {
  background: transparent none !important;
  border-color: #FFFFFF !important;
  color: #666666;
  text-decoration: underline;
}

#edit-destination a.ui-button:active {
  background: transparent none !important;
  border-color: #FFFFFF !important;
  color: #666666;
  text-decoration: underline;
}

#edit-destination .ui-menu .ui-menu-item-wrapper,
#edit-destination .ui-menu .ui-menu-item-wrapper.ui-state-active {
  padding: 0;
  margin: 0;
  border: none;
  background: none;
  color: #231f20;
  text-decoration: none;
  font-family: Helvetica;
  font-weight: 400;
  font-size: rem-cacl(15px);
}

#edit-destination .ui-menu .ui-menu-item-wrapper.ui-state-active,
#edit-destination .ui-menu .ui-menu-item-wrapper.ui-state-active.ui-state-active {
  text-decoration: underline;
}

#edit-destination .button-well {
  margin: 35px 0 20px 0;
  padding: 0;
  text-align: left;
}

@media screen and (max-width: 49.9375em) {
  #edit-destination .button-well {
    text-align: center;
  }
}

#edit-destination .popup-error-msg {
  display: block;
  margin: 40px 0;
  color: red;
}

#edit-plan {
  /* Coverage and Add-Ons
--------------------------------------------*/
}

#edit-plan h2.modal-title {
  font-size: 2.25rem;
  font-weight: 700;
  margin-bottom: 60px;
}

@media screen and (max-width: 72.1875em) {
  #edit-plan h2.modal-title {
    /* Only affects large-medium screens and smaller */
    padding: 90px 30px 20px 30px;
    margin: 0 -20px 20px -20px;
    border-bottom: 2px solid rgba(10, 10, 10, 0.25);
    font-size: 1.5rem;
    text-align: center;
    background: url("../images/icons/active-policies.svg") no-repeat center 0;
    background-size: 53px 68px;
  }
  #edit-plan h2.modal-title:after {
    content: url("../images/icons/mobile-details.png");
    display: block;
    margin-top: 20px;
  }
}

#edit-plan .offer-copy {
  padding-bottom: 40px;
}

#edit-plan .offer-copy h2 {
  margin-bottom: 20px;
  font-size: 1.875rem;
  font-weight: 700;
}

@media screen and (max-width: 63.9375em) {
  #edit-plan .offer-copy h2 {
    /* Only affects medium screens and smaller */
    margin: 20px 0;
    font-size: 1.125rem;
    text-align: center;
  }
}

#edit-plan .offer-copy p {
  font-size: 0.875rem;
  line-height: 1.5;
}

@media screen and (max-width: 63.9375em) {
  #edit-plan .offer-copy p {
    /* Only affects medium screens and smaller */
    text-align: center;
  }
}

#edit-plan .add-on-content {
  margin: 0 -40px -40px -40px;
  padding: 40px;
  background-color: #F8F8F8;
}

@media screen and (max-width: 72.1875em) {
  #edit-plan .add-on-content {
    /* Only affects large-medium screens and smaller */
    margin: 0 -20px -60px -20px;
    padding-right: 20px;
    padding-left: 20px;
    border-top: 2px solid rgba(10, 10, 10, 0.25);
  }
}

#edit-plan .add-on-content h2 {
  margin-bottom: 40px;
  font-size: 1.875rem;
  font-weight: 700;
}

@media screen and (max-width: 72.1875em) {
  #edit-plan .add-on-content h2 {
    /* Only affects large-medium screens and smaller */
    font-size: 1.125rem;
    text-align: center;
  }
}

#edit-plan .add-on-content .add-on-copy {
  margin-bottom: 40px;
  font-size: 1.125rem;
}

#edit-plan .add-on-content .lead-in {
  margin-bottom: 10px;
  font-size: 0.875rem;
}

#edit-plan .add-on-content .purchase-list {
  margin: 0 0 60px 0;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child), #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child),
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child),
#edit-plan .add-on-content .purchase-list li {
  float: left;
  text-align: center;
  max-height: 294px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .help, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .help,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .help,
#edit-plan .add-on-content .purchase-list li .help {
  position: absolute;
  top: 12px;
  right: 12px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item,
#edit-plan .add-on-content .purchase-list li .add-on-item {
  display: inline-block;
  position: relative;
  height: 269px;
  width: 100%;
  margin: 0 40px 20px 0;
  padding: 0;
  -webkit-box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.1);
  background-color: #FFFFFF;
  background-repeat: no-repeat;
  background-position: center 60px;
}

@media screen and (max-width: 72.1875em) {
  #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item,
  #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item,
  #edit-plan .add-on-content .purchase-list li .add-on-item {
    /* Only affects large-medium screens and smaller */
    margin: 0 0 40px 0;
  }
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.luggage, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.luggage, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.LUGG, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.LUGG,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.luggage,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.LUGG,
#edit-plan .add-on-content .purchase-list li .add-on-item.luggage,
#edit-plan .add-on-content .purchase-list li .add-on-item.LUGG {
  background-image: url("../images/icons/luggage.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.luggage-premium, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.luggage-premium, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.NEWFOROLD, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.NEWFOROLD,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.luggage-premium,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.NEWFOROLD,
#edit-plan .add-on-content .purchase-list li .add-on-item.luggage-premium,
#edit-plan .add-on-content .purchase-list li .add-on-item.NEWFOROLD {
  background-image: url("../images/icons/luggage-premium.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.motorcycle, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.motorcycle, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.MTCLTWO, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.MTCLTWO,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.motorcycle,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.MTCLTWO,
#edit-plan .add-on-content .purchase-list li .add-on-item.motorcycle,
#edit-plan .add-on-content .purchase-list li .add-on-item.MTCLTWO {
  background-image: url("../images/icons/motor-sport.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.cancellation, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.cancellation, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.CANX, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.CANX,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.cancellation,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.CANX,
#edit-plan .add-on-content .purchase-list li .add-on-item.cancellation,
#edit-plan .add-on-content .purchase-list li .add-on-item.CANX {
  background-image: url("../images/icons/cancellation.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.winter, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.winter, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.SNSPRTS, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.SNSPRTS, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.SNSPRTS3, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.SNSPRTS3,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.winter,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.SNSPRTS,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.SNSPRTS3,
#edit-plan .add-on-content .purchase-list li .add-on-item.winter,
#edit-plan .add-on-content .purchase-list li .add-on-item.SNSPRTS,
#edit-plan .add-on-content .purchase-list li .add-on-item.SNSPRTS3 {
  background-image: url("../images/icons/winter-sport.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.cruise, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.cruise, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.CRS, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.CRS, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.CRS2, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.CRS2,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.cruise,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.CRS,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.CRS2,
#edit-plan .add-on-content .purchase-list li .add-on-item.cruise,
#edit-plan .add-on-content .purchase-list li .add-on-item.CRS,
#edit-plan .add-on-content .purchase-list li .add-on-item.CRS2 {
  background-image: url("../images/icons/cruise.svg");
  background-size: 70px 70px;
  background-position-y: 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.rental-car, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.rental-car, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.RTCR, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.RTCR,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.rental-car,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.RTCR,
#edit-plan .add-on-content .purchase-list li .add-on-item.rental-car,
#edit-plan .add-on-content .purchase-list li .add-on-item.RTCR {
  background-image: url("../images/icons/car-rental.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.adventure, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.adventure, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.ADVACT, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.ADVACT, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.ADVACT3, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.ADVACT3,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.adventure,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.ADVACT,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.ADVACT3,
#edit-plan .add-on-content .purchase-list li .add-on-item.adventure,
#edit-plan .add-on-content .purchase-list li .add-on-item.ADVACT,
#edit-plan .add-on-content .purchase-list li .add-on-item.ADVACT3 {
  background-image: url("../images/icons/adventure.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.electronics, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.electronics, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.ELEC, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.ELEC,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.electronics,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.ELEC,
#edit-plan .add-on-content .purchase-list li .add-on-item.electronics,
#edit-plan .add-on-content .purchase-list li .add-on-item.ELEC {
  background-image: url("../images/icons/electronics.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.winter-plus, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.winter-plus, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.SNSPRTS2, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.SNSPRTS2,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.winter-plus,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.SNSPRTS2,
#edit-plan .add-on-content .purchase-list li .add-on-item.winter-plus,
#edit-plan .add-on-content .purchase-list li .add-on-item.SNSPRTS2 {
  background-image: url("../images/icons/winter-sport-plus.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.overseas-medical, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.overseas-medical, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item.AGECBA, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.AGECBA,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.overseas-medical,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item.AGECBA,
#edit-plan .add-on-content .purchase-list li .add-on-item.overseas-medical,
#edit-plan .add-on-content .purchase-list li .add-on-item.AGECBA {
  background-image: url("../images/icons/medical.svg");
  background-size: 70px 70px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item legend, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item legend,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item legend,
#edit-plan .add-on-content .purchase-list li .add-on-item legend {
  width: 100%;
  margin: 0;
  padding: 140px 0 0 0;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item legend .extra-title, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item legend .extra-title,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item legend .extra-title,
#edit-plan .add-on-content .purchase-list li .add-on-item legend .extra-title {
  font-size: 1rem;
  line-height: 1;
  margin-bottom: 0;
  padding: 0 20px;
  word-break: break-word;
  text-align: center;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item .extra-price, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .extra-price,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .extra-price,
#edit-plan .add-on-content .purchase-list li .add-on-item .extra-price {
  font-weight: 700;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item .selection, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection,
#edit-plan .add-on-content .purchase-list li .add-on-item .selection {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  max-height: 50px;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label,
#edit-plan .add-on-content .purchase-list li .add-on-item .selection input[type="checkbox"] + label {
  width: 100%;
  border: none;
  border-radius: 0;
  background: #f2f2f2;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label,
#edit-plan .add-on-content .purchase-list li .add-on-item .selection input[type="checkbox"] + label {
  width: 100%;
  border: none;
  border-radius: 0;
  background: #f2f2f2;
  overflow: hidden;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:hover, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:hover, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:focus, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:focus, #edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:active, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:active,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:hover,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:focus,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"] + label:active,
#edit-plan .add-on-content .purchase-list li .add-on-item .selection input[type="checkbox"] + label:hover,
#edit-plan .add-on-content .purchase-list li .add-on-item .selection input[type="checkbox"] + label:focus,
#edit-plan .add-on-content .purchase-list li .add-on-item .selection input[type="checkbox"] + label:active {
  color: #FFFFFF;
  background: #60d154;
}

#edit-plan .add-on-content .purchase-list li.column:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"]:checked + label, #edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"]:checked + label,
#edit-plan .add-on-content .purchase-list li.columns:last-child:not(:first-child) .add-on-item .selection input[type="checkbox"]:checked + label,
#edit-plan .add-on-content .purchase-list li .add-on-item .selection input[type="checkbox"]:checked + label {
  text-indent: -1000px;
  background: #60d154 url("../images/icons/checkmark-white.png") no-repeat center;
}

#edit-plan .add-on-content .view-all {
  position: relative;
  display: inline-block;
  width: 100%;
  margin-bottom: 10px;
  text-align: center;
  font-size: 1.125rem;
  color: #107bbf;
  cursor: pointer;
}

#edit-plan .add-on-content .view-all:before, #edit-plan .add-on-content .view-all:after {
  content: ' ';
  display: inline-block;
  width: calc(50% - 100px);
  height: 1px;
  margin-top: 12px;
  border-top: 1px solid rgba(10, 10, 10, 0.25);
}

#edit-plan .add-on-content .view-all:before {
  float: right;
}

#edit-plan .add-on-content .view-all:after {
  float: left;
}

#edit-plan .button-well {
  margin-top: 0;
  border-top: none;
  text-align: left;
}

@media screen and (max-width: 72.1875em) {
  #edit-plan .button-well {
    text-align: center;
  }
}

#edit-plan .button-well .primary-action {
  margin: 0;
}

#edit-luggage .add-on-icon, #edit-cancellation .add-on-icon, #edit-rental-car .add-on-icon,
#edit-LUGG .add-on-icon, #edit-CANX .add-on-icon, #edit-RTCR .add-on-icon, #edit-ADVACT .add-on-icon, #edit-MTCLTWO .add-on-icon {
  display: inline-block;
  float: left;
  max-width: 60px;
  margin: 0 30px 30px 0;
  max-height: 60px;
}

@media screen and (max-width: 63.9375em) {
  #edit-luggage .add-on-icon, #edit-cancellation .add-on-icon, #edit-rental-car .add-on-icon,
  #edit-LUGG .add-on-icon, #edit-CANX .add-on-icon, #edit-RTCR .add-on-icon, #edit-ADVACT .add-on-icon, #edit-MTCLTWO .add-on-icon {
    margin: 0 20px 20px 0;
  }
}

#edit-luggage h3, #edit-cancellation h3, #edit-rental-car h3,
#edit-LUGG h3, #edit-CANX h3, #edit-RTCR h3, #edit-ADVACT h3, #edit-MTCLTWO h3 {
  display: inline-block;
  float: left;
  margin-top: 10px;
}

#edit-luggage .help, #edit-cancellation .help, #edit-rental-car .help,
#edit-LUGG .help, #edit-CANX .help, #edit-RTCR .help, #edit-ADVACT .help, #edit-MTCLTWO .help {
  position: relative;
  top: 12px;
  left: 10px;
}

@media screen and (max-width: 63.9375em) {
  #edit-luggage .help, #edit-cancellation .help, #edit-rental-car .help,
  #edit-LUGG .help, #edit-CANX .help, #edit-RTCR .help, #edit-ADVACT .help, #edit-MTCLTWO .help {
    top: 10px;
  }
}

#edit-luggage .luggage-list, #edit-cancellation .luggage-list, #edit-rental-car .luggage-list,
#edit-LUGG .luggage-list, #edit-CANX .luggage-list, #edit-RTCR .luggage-list, #edit-ADVACT .luggage-list, #edit-MTCLTWO .luggage-list {
  display: block;
  min-height: 600px;
  margin: 50px auto;
}

@media screen and (max-width: 63.9375em) {
  #edit-luggage .luggage-list, #edit-cancellation .luggage-list, #edit-rental-car .luggage-list,
  #edit-LUGG .luggage-list, #edit-CANX .luggage-list, #edit-RTCR .luggage-list, #edit-ADVACT .luggage-list, #edit-MTCLTWO .luggage-list {
    min-width: 320px;
    width: calc(100% - 32px);
    margin: 20px auto;
  }
}

#edit-luggage .luggage-list .luggage-items-table, #edit-cancellation .luggage-list .luggage-items-table, #edit-rental-car .luggage-list .luggage-items-table,
#edit-LUGG .luggage-list .luggage-items-table, #edit-CANX .luggage-list .luggage-items-table, #edit-RTCR .luggage-list .luggage-items-table, #edit-ADVACT .luggage-list .luggage-items-table, #edit-MTCLTWO .luggage-list .luggage-items-table {
  width: 100%;
  padding-top: 20px;
  border-top: 1px solid rgba(10, 10, 10, 0.25);
}

#edit-luggage .luggage-list .luggage-items-table .add-item, #edit-cancellation .luggage-list .luggage-items-table .add-item, #edit-rental-car .luggage-list .luggage-items-table .add-item,
#edit-LUGG .luggage-list .luggage-items-table .add-item, #edit-CANX .luggage-list .luggage-items-table .add-item, #edit-RTCR .luggage-list .luggage-items-table .add-item, #edit-ADVACT .luggage-list .luggage-items-table .add-item, #edit-MTCLTWO .luggage-list .luggage-items-table .add-item {
  height: 50px;
  width: auto;
  padding-left: 40px;
  padding-right: 40px;
  border-radius: 25px;
}

#edit-luggage .luggage-list .luggage-items-table thead .row:last-of-type td, #edit-cancellation .luggage-list .luggage-items-table thead .row:last-of-type td, #edit-rental-car .luggage-list .luggage-items-table thead .row:last-of-type td,
#edit-LUGG .luggage-list .luggage-items-table thead .row:last-of-type td, #edit-CANX .luggage-list .luggage-items-table thead .row:last-of-type td, #edit-RTCR .luggage-list .luggage-items-table thead .row:last-of-type td, #edit-ADVACT .luggage-list .luggage-items-table thead .row:last-of-type td, #edit-MTCLTWO .luggage-list .luggage-items-table thead .row:last-of-type td {
  padding-bottom: 10px;
  text-align: center;
}

#edit-luggage .luggage-list .luggage-items-table tbody .row, #edit-cancellation .luggage-list .luggage-items-table tbody .row, #edit-rental-car .luggage-list .luggage-items-table tbody .row,
#edit-LUGG .luggage-list .luggage-items-table tbody .row, #edit-CANX .luggage-list .luggage-items-table tbody .row, #edit-RTCR .luggage-list .luggage-items-table tbody .row, #edit-ADVACT .luggage-list .luggage-items-table tbody .row, #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row {
  background-color: #F8F8F8;
}

#edit-luggage .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-cancellation .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-rental-car .luggage-list .luggage-items-table tbody .row:first-of-type td,
#edit-LUGG .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-CANX .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-RTCR .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-ADVACT .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row:first-of-type td {
  padding-top: 10px;
  border-top: 1px solid rgba(10, 10, 10, 0.25);
}

@media screen and (max-width: 63.9375em) {
  #edit-luggage .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-cancellation .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-rental-car .luggage-list .luggage-items-table tbody .row:first-of-type td,
  #edit-LUGG .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-CANX .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-RTCR .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-ADVACT .luggage-list .luggage-items-table tbody .row:first-of-type td, #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row:first-of-type td {
    border-top: none;
  }
}

#edit-luggage .luggage-list .luggage-items-table tbody .row:nth-child(odd), #edit-cancellation .luggage-list .luggage-items-table tbody .row:nth-child(odd), #edit-rental-car .luggage-list .luggage-items-table tbody .row:nth-child(odd),
#edit-LUGG .luggage-list .luggage-items-table tbody .row:nth-child(odd), #edit-CANX .luggage-list .luggage-items-table tbody .row:nth-child(odd), #edit-RTCR .luggage-list .luggage-items-table tbody .row:nth-child(odd), #edit-ADVACT .luggage-list .luggage-items-table tbody .row:nth-child(odd), #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row:nth-child(odd) {
  background-color: #FFFFFF;
}

#edit-luggage .luggage-list .luggage-items-table tbody .row td, #edit-cancellation .luggage-list .luggage-items-table tbody .row td, #edit-rental-car .luggage-list .luggage-items-table tbody .row td,
#edit-LUGG .luggage-list .luggage-items-table tbody .row td, #edit-CANX .luggage-list .luggage-items-table tbody .row td, #edit-RTCR .luggage-list .luggage-items-table tbody .row td, #edit-ADVACT .luggage-list .luggage-items-table tbody .row td, #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row td {
  vertical-align: middle;
  padding: 0 5px;
}

@media screen and (max-width: 63.9375em) {
  #edit-luggage .luggage-list .luggage-items-table tbody .row td, #edit-cancellation .luggage-list .luggage-items-table tbody .row td, #edit-rental-car .luggage-list .luggage-items-table tbody .row td,
  #edit-LUGG .luggage-list .luggage-items-table tbody .row td, #edit-CANX .luggage-list .luggage-items-table tbody .row td, #edit-RTCR .luggage-list .luggage-items-table tbody .row td, #edit-ADVACT .luggage-list .luggage-items-table tbody .row td, #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row td {
    padding: 5px 10px 5px 10px;
  }
}

#edit-luggage .luggage-list .luggage-items-table tbody .row .remove-item, #edit-cancellation .luggage-list .luggage-items-table tbody .row .remove-item, #edit-rental-car .luggage-list .luggage-items-table tbody .row .remove-item,
#edit-LUGG .luggage-list .luggage-items-table tbody .row .remove-item, #edit-CANX .luggage-list .luggage-items-table tbody .row .remove-item, #edit-RTCR .luggage-list .luggage-items-table tbody .row .remove-item, #edit-ADVACT .luggage-list .luggage-items-table tbody .row .remove-item, #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row .remove-item {
  display: inline-block;
  width: 100%;
  text-indent: 0;
  border: 1px solid #bcbcbc;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  line-height: 1.0625rem;
  color: #231f20;
  border-radius: 25px;
  background: #FFFFFF;
  -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;
}

@media screen and (max-width: 63.9375em) {
  #edit-luggage .luggage-list .luggage-items-table tbody .row .remove-item, #edit-cancellation .luggage-list .luggage-items-table tbody .row .remove-item, #edit-rental-car .luggage-list .luggage-items-table tbody .row .remove-item,
  #edit-LUGG .luggage-list .luggage-items-table tbody .row .remove-item, #edit-CANX .luggage-list .luggage-items-table tbody .row .remove-item, #edit-RTCR .luggage-list .luggage-items-table tbody .row .remove-item, #edit-ADVACT .luggage-list .luggage-items-table tbody .row .remove-item, #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row .remove-item {
    width: auto;
    margin-top: 5px;
  }
}

#edit-luggage .luggage-list .luggage-items-table tbody .row .remove-item.btn-remvoe, #edit-cancellation .luggage-list .luggage-items-table tbody .row .remove-item.btn-remvoe, #edit-rental-car .luggage-list .luggage-items-table tbody .row .remove-item.btn-remvoe,
#edit-LUGG .luggage-list .luggage-items-table tbody .row .remove-item.btn-remvoe, #edit-CANX .luggage-list .luggage-items-table tbody .row .remove-item.btn-remvoe, #edit-RTCR .luggage-list .luggage-items-table tbody .row .remove-item.btn-remvoe, #edit-ADVACT .luggage-list .luggage-items-table tbody .row .remove-item.btn-remvoe, #edit-MTCLTWO .luggage-list .luggage-items-table tbody .row .remove-item.btn-remvoe {
  height: 48px;
  padding: 0 25px;
  text-align: center;
  line-height: 48px;
}

#edit-luggage.rental-options, #edit-luggage.cancellation-options, #edit-cancellation.rental-options, #edit-cancellation.cancellation-options, #edit-rental-car.rental-options, #edit-rental-car.cancellation-options,
#edit-LUGG.rental-options,
#edit-LUGG.cancellation-options, #edit-CANX.rental-options, #edit-CANX.cancellation-options, #edit-RTCR.rental-options, #edit-RTCR.cancellation-options, #edit-ADVACT.rental-options, #edit-ADVACT.cancellation-options, #edit-MTCLTWO.rental-options, #edit-MTCLTWO.cancellation-options {
  display: block;
  min-height: 300px;
  margin: 50px auto;
}

#edit-luggage.rental-options .modal-button, #edit-luggage.cancellation-options .modal-button, #edit-cancellation.rental-options .modal-button, #edit-cancellation.cancellation-options .modal-button, #edit-rental-car.rental-options .modal-button, #edit-rental-car.cancellation-options .modal-button,
#edit-LUGG.rental-options .modal-button,
#edit-LUGG.cancellation-options .modal-button, #edit-CANX.rental-options .modal-button, #edit-CANX.cancellation-options .modal-button, #edit-RTCR.rental-options .modal-button, #edit-RTCR.cancellation-options .modal-button, #edit-ADVACT.rental-options .modal-button, #edit-ADVACT.cancellation-options .modal-button, #edit-MTCLTWO.rental-options .modal-button, #edit-MTCLTWO.cancellation-options .modal-button {
  height: 50px;
  width: auto;
  padding-left: 40px;
  padding-right: 40px;
  border-radius: 25px;
}

#edit-luggage .secondary-action, #edit-cancellation .secondary-action, #edit-rental-car .secondary-action,
#edit-LUGG .secondary-action, #edit-CANX .secondary-action, #edit-RTCR .secondary-action, #edit-ADVACT .secondary-action, #edit-MTCLTWO .secondary-action {
  color: #000000;
  background-color: #FFFFFF;
  -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;
  border: 1px solid #000000;
}

#edit-luggage .button-well, #edit-cancellation .button-well, #edit-rental-car .button-well,
#edit-LUGG .button-well, #edit-CANX .button-well, #edit-RTCR .button-well, #edit-ADVACT .button-well, #edit-MTCLTWO .button-well {
  margin-top: 0;
  border-top: none;
  text-align: left;
}

@media screen and (max-width: 72.1875em) {
  #edit-luggage .button-well, #edit-cancellation .button-well, #edit-rental-car .button-well,
  #edit-LUGG .button-well, #edit-CANX .button-well, #edit-RTCR .button-well, #edit-ADVACT .button-well, #edit-MTCLTWO .button-well {
    text-align: center;
  }
}

#edit-luggage .button-well .primary-action, #edit-cancellation .button-well .primary-action, #edit-rental-car .button-well .primary-action,
#edit-LUGG .button-well .primary-action, #edit-CANX .button-well .primary-action, #edit-RTCR .button-well .primary-action, #edit-ADVACT .button-well .primary-action, #edit-MTCLTWO .button-well .primary-action {
  margin: 0;
}

#edit-luggage .coverage-form label, #edit-cancellation .coverage-form label, #edit-rental-car .coverage-form label,
#edit-LUGG .coverage-form label, #edit-CANX .coverage-form label, #edit-RTCR .coverage-form label, #edit-ADVACT .coverage-form label, #edit-MTCLTWO .coverage-form label {
  padding: 0;
  margin-bottom: 20px;
  font-weight: 300;
}

#edit-traveller-primary, section[id^="edit-traveller-secondary-"], #add-traveller {
  /* Travellers */
  /* /Travellers */
}

#edit-traveller-primary .traveller-line, section[id^="edit-traveller-secondary-"] .traveller-line, #add-traveller .traveller-line {
  margin-bottom: 30px;
}

#edit-traveller-primary .traveller-line h3, section[id^="edit-traveller-secondary-"] .traveller-line h3, #add-traveller .traveller-line h3 {
  font-size: 1.125rem;
}

#edit-traveller-primary .traveller-line h3 .remove-link, section[id^="edit-traveller-secondary-"] .traveller-line h3 .remove-link, #add-traveller .traveller-line h3 .remove-link {
  display: inline-block;
  float: right;
  font-size: 0.875rem;
  font-weight: 300;
  color: #107bbf;
  cursor: pointer;
}

#edit-traveller-primary .no-edit, section[id^="edit-traveller-secondary-"] .no-edit, #add-traveller .no-edit {
  display: inline-block;
  font-size: 1.5rem;
  margin: 10px 0 50px 0;
}

@media screen and (max-width: 49.9375em) {
  #edit-traveller-primary .no-edit, section[id^="edit-traveller-secondary-"] .no-edit, #add-traveller .no-edit {
    font-size: 1.25rem;
    margin: 5px 0 20px 0;
  }
}

#edit-traveller-primary .mask-birth-date, section[id^="edit-traveller-secondary-"] .mask-birth-date, #add-traveller .mask-birth-date {
  padding: 2px 30px 2px 70px;
  background: url("../images/icons/calendar.svg") no-repeat 12px 50%;
  background-size: 32px 32px;
}

#edit-traveller-primary .healix, section[id^="edit-traveller-secondary-"] .healix, #add-traveller .healix {
  margin: 0;
  padding: 0;
}

#edit-traveller-primary .healix fieldset, section[id^="edit-traveller-secondary-"] .healix fieldset, #add-traveller .healix fieldset {
  margin-bottom: 20px;
}

#edit-traveller-primary .healix .healix-block, section[id^="edit-traveller-secondary-"] .healix .healix-block, #add-traveller .healix .healix-block {
  margin-bottom: 20px;
  margin-top: 20px;
  padding-top: 0;
}

#edit-traveller-primary .healix .healix-block > label, section[id^="edit-traveller-secondary-"] .healix .healix-block > label, #add-traveller .healix .healix-block > label {
  margin-bottom: 10px;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.375rem;
  color: #231f20;
}

#edit-traveller-primary .healix .healix-block > label.error2, #edit-traveller-primary .healix .healix-block > label.error, section[id^="edit-traveller-secondary-"] .healix .healix-block > label.error2, section[id^="edit-traveller-secondary-"] .healix .healix-block > label.error, #add-traveller .healix .healix-block > label.error2, #add-traveller .healix .healix-block > label.error {
  color: #ff3f57;
}

#edit-traveller-primary .healix .healix-block label.error, section[id^="edit-traveller-secondary-"] .healix .healix-block label.error, #add-traveller .healix .healix-block label.error {
  margin-top: 10px;
}

#edit-traveller-primary .healix .healix-block .unable, section[id^="edit-traveller-secondary-"] .healix .healix-block .unable, #add-traveller .healix .healix-block .unable {
  margin: 40px 0;
  color: #FD0E35;
  font-family: "Museo Sans Rounded";
  font-weight: 700;
  font-size: 0.9375rem;
}

#edit-traveller-primary .healix .healix-block .consent, section[id^="edit-traveller-secondary-"] .healix .healix-block .consent, #add-traveller .healix .healix-block .consent {
  margin-bottom: 20px;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  line-height: 1.375rem;
}

#edit-traveller-primary .healix .healix-block #emc_4_notice, section[id^="edit-traveller-secondary-"] .healix .healix-block #emc_4_notice, #add-traveller .healix .healix-block #emc_4_notice {
  margin-top: 20px;
}

#edit-traveller-primary .healix legend, section[id^="edit-traveller-secondary-"] .healix legend, #add-traveller .healix legend {
  display: table;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  white-space: normal;
  color: #231f20;
}

#edit-traveller-primary .healix .inner, section[id^="edit-traveller-secondary-"] .healix .inner, #add-traveller .healix .inner {
  display: inline;
  margin: 0;
  padding: 0;
  top: 0;
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .healix .emcInfo, section[id^="edit-traveller-secondary-"] .healix .emcInfo, #add-traveller .healix .emcInfo {
    /* Only affects medium-small screens and larger */
    margin-bottom: 0;
    padding-right: 0;
    padding-left: 0;
  }
}

#edit-traveller-primary .healix .button-well, section[id^="edit-traveller-secondary-"] .healix .button-well, #add-traveller .healix .button-well {
  margin: 20px 0;
  padding: 0;
  border: none;
}

#edit-traveller-primary .healix .button-well input[type="button"], section[id^="edit-traveller-secondary-"] .healix .button-well input[type="button"], #add-traveller .healix .button-well input[type="button"] {
  display: inline-block;
  min-width: 200px;
  height: 50px;
  padding-left: 32px;
  padding-right: 32px;
  border-radius: 0;
  font-family: "Museo Sans Rounded";
  font-weight: 300;
  font-size: 1rem;
  line-height: 1rem;
  background-color: #FFFFFF;
  border: 1px solid #bcbcbc;
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .healix .button-well input[type="button"], section[id^="edit-traveller-secondary-"] .healix .button-well input[type="button"], #add-traveller .healix .button-well input[type="button"] {
    /* Only affects medium-small screens and larger */
    width: auto;
  }
}

#edit-traveller-primary .healix .button-well input[type="button"]:hover, section[id^="edit-traveller-secondary-"] .healix .button-well input[type="button"]:hover, #add-traveller .healix .button-well input[type="button"]:hover {
  border: 1px solid #107bbf;
}

#edit-traveller-primary .healix .button-well input[type="button"]:focus, section[id^="edit-traveller-secondary-"] .healix .button-well input[type="button"]:focus, #add-traveller .healix .button-well input[type="button"]:focus {
  background: #DCDCDC;
}

#edit-traveller-primary .healix .button-well input[type="button"]:last-child, section[id^="edit-traveller-secondary-"] .healix .button-well input[type="button"]:last-child, #add-traveller .healix .button-well input[type="button"]:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 49.9375em) {
  #edit-traveller-primary .healix .button-well input[type="button"]:last-child, section[id^="edit-traveller-secondary-"] .healix .button-well input[type="button"]:last-child, #add-traveller .healix .button-well input[type="button"]:last-child {
    /* Only affects medium-small screens and larger */
    margin-top: 10px;
  }
}

#edit-traveller-primary .healix .button-well .decline-emc, section[id^="edit-traveller-secondary-"] .healix .button-well .decline-emc, #add-traveller .healix .button-well .decline-emc {
  margin-left: 40px;
}

#edit-traveller-primary .healix table, section[id^="edit-traveller-secondary-"] .healix table, #add-traveller .healix table {
  width: 100%;
  margin-top: 25px;
}

#edit-traveller-primary .healix thead, section[id^="edit-traveller-secondary-"] .healix thead, #add-traveller .healix thead {
  display: none;
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .healix thead, section[id^="edit-traveller-secondary-"] .healix thead, #add-traveller .healix thead {
    /* Only affects medium-small screens and larger */
    display: table-row-group;
  }
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .healix thead th, section[id^="edit-traveller-secondary-"] .healix thead th, #add-traveller .healix thead th {
    /* Only affects medium-small screens and larger */
    padding-bottom: 15px;
  }
}

#edit-traveller-primary .healix th, section[id^="edit-traveller-secondary-"] .healix th, #add-traveller .healix th {
  display: list-item;
  padding-bottom: 5px;
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .healix th, section[id^="edit-traveller-secondary-"] .healix th, #add-traveller .healix th {
    /* Only affects medium-small screens and larger */
    display: table-cell;
    padding-right: 10px;
    padding-bottom: 5px;
  }
}

#edit-traveller-primary .healix td, section[id^="edit-traveller-secondary-"] .healix td, #add-traveller .healix td {
  display: list-item;
  padding-bottom: 5px;
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .healix td, section[id^="edit-traveller-secondary-"] .healix td, #add-traveller .healix td {
    /* Only affects medium-small screens and larger */
    display: table-cell;
    padding-right: 10px;
    padding-bottom: 5px;
  }
}

#edit-traveller-primary .healix tr, section[id^="edit-traveller-secondary-"] .healix tr, #add-traveller .healix tr {
  display: block;
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .healix tr, section[id^="edit-traveller-secondary-"] .healix tr, #add-traveller .healix tr {
    /* Only affects medium-small screens and larger */
    display: table-row;
  }
}

#edit-traveller-primary .healix em, section[id^="edit-traveller-secondary-"] .healix em, #add-traveller .healix em {
  font-style: normal;
  font-weight: bold;
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .healix em, section[id^="edit-traveller-secondary-"] .healix em, #add-traveller .healix em {
    /* Only affects medium-small screens and larger */
    display: none;
  }
}

#edit-traveller-primary .notice, section[id^="edit-traveller-secondary-"] .notice, #add-traveller .notice {
  list-style-type: disc;
}

@media screen and (max-width: 49.9375em) {
  #edit-traveller-primary .notice, section[id^="edit-traveller-secondary-"] .notice, #add-traveller .notice {
    margin-left: 25px;
  }
}

@media screen and (min-width: 40em) {
  #edit-traveller-primary .notice, section[id^="edit-traveller-secondary-"] .notice, #add-traveller .notice {
    margin-left: 55px;
  }
}

#edit-traveller-primary .declaration h2, section[id^="edit-traveller-secondary-"] .declaration h2, #add-traveller .declaration h2 {
  font-size: 1.125rem;
  margin-bottom: 15px;
}

#edit-traveller-primary .declaration h3, section[id^="edit-traveller-secondary-"] .declaration h3, #add-traveller .declaration h3 {
  font-size: 0.75rem;
}

#edit-traveller-primary .declaration p, section[id^="edit-traveller-secondary-"] .declaration p, #add-traveller .declaration p {
  font-size: 0.75rem;
}

#edit-traveller-primary .button-well, section[id^="edit-traveller-secondary-"] .button-well, #add-traveller .button-well {
  margin: 35px 0 20px 0;
  padding: 0;
  text-align: left;
}

@media screen and (max-width: 49.9375em) {
  #edit-traveller-primary .button-well, section[id^="edit-traveller-secondary-"] .button-well, #add-traveller .button-well {
    text-align: center;
  }
}

#edit-traveller-primary .button-well input[type="submit"], section[id^="edit-traveller-secondary-"] .button-well input[type="submit"], #add-traveller .button-well input[type="submit"] {
  margin: 0;
}

#edit-traveller-primary .popup-error-msg, section[id^="edit-traveller-secondary-"] .popup-error-msg, #add-traveller .popup-error-msg {
  display: block;
  margin: 40px 0;
  color: red;
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal table {
  width: 100%;
  margin-top: 25px;
  margin-bottom: 40px;
  margin-left: 20px;
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal tbody tr:nth-of-type(odd) {
  background-color: transparent;
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal thead {
  display: none;
}

@media screen and (min-width: 40em) {
  section[id^="edit-emc-rejected-"].edit-emc-rejected-modal thead {
    /* Only affects medium-small screens and larger */
    display: table-row-group;
  }
}

@media screen and (min-width: 40em) {
  section[id^="edit-emc-rejected-"].edit-emc-rejected-modal thead th {
    /* Only affects medium-small screens and larger */
    padding-bottom: 15px;
  }
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal tr {
  display: block;
}

@media screen and (min-width: 40em) {
  section[id^="edit-emc-rejected-"].edit-emc-rejected-modal tr {
    /* Only affects medium-small screens and larger */
    display: table-row;
  }
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal th,
section[id^="edit-emc-rejected-"].edit-emc-rejected-modal .medical-conditoin__td {
  display: list-item;
  padding-bottom: 5px;
  width: 50%;
}

@media screen and (min-width: 40em) {
  section[id^="edit-emc-rejected-"].edit-emc-rejected-modal th,
  section[id^="edit-emc-rejected-"].edit-emc-rejected-modal .medical-conditoin__td {
    /* Only affects medium-small screens and larger */
    display: table-cell;
    padding-right: 10px;
    padding-bottom: 5px;
  }
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal td {
  display: list-item;
  padding-bottom: 5px;
}

@media screen and (min-width: 40em) {
  section[id^="edit-emc-rejected-"].edit-emc-rejected-modal td {
    /* Only affects medium-small screens and larger */
    display: table-cell;
    padding-right: 10px;
    padding-bottom: 5px;
  }
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal em {
  font-style: normal;
  font-weight: bold;
}

@media screen and (min-width: 40em) {
  section[id^="edit-emc-rejected-"].edit-emc-rejected-modal em {
    /* Only affects medium-small screens and larger */
    display: none;
  }
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal .button-well {
  margin: 35px 0 20px 0;
  padding: 0;
  text-align: left;
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal .button-well input[type="submit"] {
  margin: 0;
}

section[id^="edit-emc-rejected-"].edit-emc-rejected-modal .button-well-link {
  vertical-align: middle;
}

#claimForm input[type="submit"] {
  display: none;
}

.redirect-message {
  line-height: 50px;
}

.policy-details-capsule .policy-details-information .traveller-list li:nth-of-type(n+21) .add-traveller {
  display: none;
}

#view-all-benefits .benefits-table {
  width: 100%;
}

#view-all-benefits .benefits-table thead th {
  padding-top: 0;
}

#view-all-benefits .benefits-table thead th h3 {
  font-size: 1.875rem;
  line-height: 1;
  margin: 0 0 40px 0;
}

@media screen and (max-width: 63.9375em) {
  #view-all-benefits .benefits-table thead th h3 {
    font-size: 1.125rem;
    margin-bottom: 20px;
  }
}

#view-all-benefits .benefits-table th,
#view-all-benefits .benefits-table td {
  padding: 10px 0;
}

#view-all-benefits .benefits-table th.discount {
  padding-left: 25px;
}

#view-all-benefits .benefits-table td {
  text-align: right;
}

.reveal.cancel-policy-modal p {
  max-width: 610px;
  margin: 0 auto 30px auto;
  font-size: 2.25rem;
  text-align: center;
}

@media screen and (max-width: 63.9375em) {
  .reveal.cancel-policy-modal p {
    font-size: 1.125rem;
    margin-bottom: 20px;
  }
}

.reveal.cancel-policy-modal .button-well {
  margin-top: 30px;
}

.reveal.cancel-policy-modal .button-well input[type="submit"] {
  margin: 0;
}

.reveal.cancel-policy-modal .button-well-link {
  vertical-align: middle;
}

.reveal.medical-question-modal p {
  max-width: 640px;
  margin: 0 auto 30px auto;
  font-size: 1.5rem;
  text-align: center;
}

.reveal.over-age-modal h2,
.reveal.over-age-modal p {
  max-width: 640px;
  margin: 0 auto 30px auto;
}

.reveal h2 {
  font-weight: 300;
  margin-bottom: 40px;
  font-size: 3rem;
}

@media screen and (max-width: 63.9375em) {
  .reveal h2 {
    font-size: 1.125rem;
    margin-bottom: 20px;
  }
}

.reveal label {
  font-size: 1.25rem;
  font-weight: 300;
  margin-bottom: 6px;
}

.reveal h2.divider {
  font-size: 1.5rem;
  font-weight: 300;
  text-align: center;
}

@media screen and (max-width: 63.9375em) {
  .reveal h2.divider {
    margin-top: 30px;
    margin-bottom: 30px;
  }
}

.reveal h2.divider:before, .reveal h2.divider:after {
  display: inline-block;
  content: ' ';
  height: 1px;
  width: calc(50% - 80px);
  margin-top: 18px;
  border-top: 1px solid #666666;
}

@media screen and (max-width: 63.9375em) {
  .reveal h2.divider:before, .reveal h2.divider:after {
    width: calc(50% - 50px);
  }
}

.reveal h2.divider:before {
  float: left;
}

.reveal h2.divider:after {
  float: right;
}

.reveal .button-well {
  padding-top: 0;
  margin-top: 0;
}

.reveal .button-well.no-margin {
  margin: 0;
}

.reveal .button-well a {
  line-height: 50px;
}

.reveal .popup-error-msg {
  display: block;
  margin: 40px 0;
  color: red;
}

/* -- log-in -----------------------------*/
.icsp-login #page-title {
  padding: 0;
  margin: 0;
  border: 0;
}

.icsp-login #page-title h1 {
  margin-bottom: 20px;
}

.icsp-login #page-title p {
  font-size: 1.125rem;
}

.icsp-login #login-fields-client {
  margin-top: 35px;
  margin-bottom: 80px;
}

.icsp-login #login-fields-client a {
  font-size: 1.125rem;
}

.icsp-login .button-well {
  margin: 0 -0.21875rem 1.5rem;
  padding: 25px 0 0 0;
  border-top: none;
}

.icsp-login .row {
  margin-right: auto;
  margin-left: auto;
}

body.path--login div.drupal-messages.messages--error {
  display: none;
}

.user-login-form .form-item {
  margin-bottom: 20px;
}

thead {
  background-color: transparent;
  border: 0;
}

tbody tr:nth-of-type(odd) {
  background-color: #F8F8F8;
}

tbody tr:nth-of-type(even) {
  background-color: #FFFFFF;
}

.path--policy .block-page-title-block,
.path--login .block-page-title-block,
.path--2fa .block-page-title-block {
  display: none;
}

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

.clearfix {
  display: inline-block;
}

* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
  clear: both;
}

.popup-error-msg {
  display: block;
  margin: 40px 0;
  color: red;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsIl9wcm9qZWN0LXNldHRpbmdzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmFyaWFibGVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiX3NldHRpbmdzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLW1lbnUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19tYXRoLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3NsaWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19jb2xvci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIl9tYWluLnNjc3MiLCJtYWluL19mb250cy5zY3NzIiwibWFpbi9fZGVmYXVsdHMuc2NzcyIsIm1haW4vX2NvbnRhaW5lci5zY3NzIiwibWFpbi9fYXJ0aWNsZS5zY3NzIiwibWFpbi9fZm9ybXMuc2NzcyIsIm1haW4vX2hlYWRlci5zY3NzIiwibWFpbi9fZm9vdGVyLnNjc3MiLCJtYWluL190cmlwLWFkdmlzb3J5LnNjc3MiLCJtYWluL19wbGFuLXN1bW1hcnkuc2NzcyIsIm1haW4vX2J1dHRvbi13ZWxsLnNjc3MiLCJtYWluL19xdGlwLnNjc3MiLCJtYWluL19sb2FkaW5nLnNjc3MiLCJtYWluL19iZW5lZml0cy1wb3AtdXAuc2NzcyIsIm1haW4vX21vZGFscy5zY3NzIiwiX2Rhc2hib2FyZC5zY3NzIiwiX3NlYXJjaC5zY3NzIiwiX3BheW1lbnQuc2NzcyIsIl9wb2xpY3ktZGV0YWlscy5zY3NzIiwicG9saWN5LWRldGFpbHMvX3BhZ2UtZGlzcGxheS5zY3NzIiwicG9saWN5LWRldGFpbHMvX2Nzci1wYW5lbC5zY3NzIiwicG9saWN5LWRldGFpbHMvX3doZW4uc2NzcyIsInBvbGljeS1kZXRhaWxzL19kYXRlLXJhbmdlLXBpY2tlci5zY3NzIiwicG9saWN5LWRldGFpbHMvX3doZXJlLnNjc3MiLCJwb2xpY3ktZGV0YWlscy9fYWRkLW9ucy5zY3NzIiwicG9saWN5LWRldGFpbHMvX2FkZC1vbi1zdWItaXRlbXMuc2NzcyIsInBvbGljeS1kZXRhaWxzL190cmF2ZWxsZXJzLnNjc3MiLCJwb2xpY3ktZGV0YWlscy9fcmVqZWN0ZWQtZW1jLnNjc3MiLCJwb2xpY3ktZGV0YWlscy9fYWxsLWJlbmVmaXRzLnNjc3MiLCJwb2xpY3ktZGV0YWlscy9fY2FuY2VsLXBvbGljeS5zY3NzIiwicG9saWN5LWRldGFpbHMvX21lZGljYWwtcXVlc3Rpb24uc2NzcyIsInBvbGljeS1kZXRhaWxzL19vdmVyLWFnZS5zY3NzIiwicG9saWN5LWRldGFpbHMvX3NlbmQtY29pLnNjc3MiLCJfbG9nLWluLnNjc3MiLCJfY3VzdG9tLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDeUNqQjtFQUNFLGtDQVp3QztFQWF4QyxtQkFBa0I7RUFDbEIsaUJBakJtQjtFQWtCbkIscWNBSTZHO0NEM0M5Rzs7QUM4Q0Q7RUFDRSxrQ0F2QndDO0VBd0J4QyxtQkFBa0I7RUFDbEIsaUJBL0JvQjtFQWdDcEIscWNBSTZHO0NEL0M5Rzs7QUViRDs7Ozs7R0FLRztBQ3dDRCxpRUFBaUU7QUFHL0Q7b0ZBQ2dGO0FBRWhGOzs7OztPQUtHO0FBRUg7RUFDRSx3QkMxQ3VCO0VEMENTLE9BQU87RUFRckMsa0JBQWlCO0VBQUcsT0FBTztFQUU3QiwyQkFBMEI7RUFBRyxPQUFPO0VBQ3BDLCtCQUE4QjtFQUFHLE9BQU87Q0FDekM7O0FBSUQ7b0ZBQ2dGO0FBRWhGOztPQUVHO0FBRUg7RUFDRSxVQUFTO0NBQ1Y7O0FBRUQ7O09BRUc7QUFFSDs7Ozs7O0VBTUUsZUFB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Q2xCLGVBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixtQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixjQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLGFBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsY0FIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLHFCRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLGVDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsY0FIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixlQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUosb0JEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosV0NlcUQ7Q0x1RWhEOztBQUlDO0VNekZKLG1CQUFrQjtFQUNsQixVQUhtRDtDTjZGOUM7O0FBRUQ7RU03RkosbUJBQWtCO0VBQ2xCLFdBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixxQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixlQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLGNBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsZUFIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLGlCRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLGNDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsYUFIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixjQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUoscUJEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosZUNlcUQ7Q0x1RWhEOztBQUlDO0VNekZKLG1CQUFrQjtFQUNsQixjQUhtRDtDTjZGOUM7O0FBRUQ7RU03RkosbUJBQWtCO0VBQ2xCLGVBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixvQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixhQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLFlBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsYUFIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLHFCRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLGVDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsY0FIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixlQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUosbUJEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosY0NlcUQ7Q0x1RWhEOztBQUlDO0VNekZKLG1CQUFrQjtFQUNsQixhQUhtRDtDTjZGOUM7O0FBRUQ7RU03RkosbUJBQWtCO0VBQ2xCLGNBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixxQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixlQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLGNBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsZUFIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLG9CRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLFdDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsVUFIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixXQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUoscUJEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosZUNlcUQ7Q0x1RWhEOztBQUlDO0VNekZKLG1CQUFrQjtFQUNsQixjQUhtRDtDTjZGOUM7O0FBRUQ7RU03RkosbUJBQWtCO0VBQ2xCLGVBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixpQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixjQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLGFBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsY0FIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLHFCRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLGVDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsY0FIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixlQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUosb0JEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosYUNlcUQ7Q0x1RWhEOztBQUlDO0VNekZKLG1CQUFrQjtFQUNsQixZQUhtRDtDTjZGOUM7O0FBRUQ7RU03RkosbUJBQWtCO0VBQ2xCLGFBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixxQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixlQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLGNBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsZUFIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLG1CRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLGNDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsYUFIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixjQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUoscUJEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosZUNlcUQ7Q0x1RWhEOztBQUlDO0VNekZKLG1CQUFrQjtFQUNsQixjQUhtRDtDTjZGOUM7O0FBRUQ7RU03RkosbUJBQWtCO0VBQ2xCLGVBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixvQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixXQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLFVBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsV0FIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLHFCRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLGVDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsY0FIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixlQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUosaUJEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosY0NlcUQ7Q0x1RWhEOztBQUlDO0VNekZKLG1CQUFrQjtFQUNsQixhQUhtRDtDTjZGOUM7O0FBRUQ7RU03RkosbUJBQWtCO0VBQ2xCLGNBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixxQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixlQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLGNBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsZUFIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLG9CRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLGFDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsWUFIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixhQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUoscUJEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosZUNlcUQ7Q0x1RWhEOztBQUlDO0VNekZKLG1CQUFrQjtFQUNsQixjQUhtRDtDTjZGOUM7O0FBRUQ7RU03RkosbUJBQWtCO0VBQ2xCLGVBSG1EO0NOaUc5Qzs7QUFNSDtFTTFFSixtQkRicUQ7Q0x5RmhEOztBQXBCRDtFSXBGSixjQ2VxRDtDTHVFaEQ7O0FBSUM7RU16RkosbUJBQWtCO0VBQ2xCLGFBSG1EO0NONkY5Qzs7QUFFRDtFTTdGSixtQkFBa0I7RUFDbEIsY0FIbUQ7Q05pRzlDOztBQU1IO0VNMUVKLHFCRGJxRDtDTHlGaEQ7O0FBcEJEO0VJcEZKLGVDZXFEO0NMdUVoRDs7QUFJQztFTXpGSixtQkFBa0I7RUFDbEIsY0FIbUQ7Q042RjlDOztBQUVEO0VNN0ZKLG1CQUFrQjtFQUNsQixlQUhtRDtDTmlHOUM7O0FBTUg7RU0xRUosb0JEYnFEO0NMeUZoRDs7QUFwQkQ7RUlwRkosWUNlcUQ7Q0x1RWhEOztBQWdCRDtFTTFFSixxQkRicUQ7Q0x5RmhEOztBQUtEO0VPckdGLFlYK0V1RDtFVzlFdkQsWUFBdUI7Q0FpQ3hCOztBUG1FRztFTzdFQSxZQUFXO0NBQ1o7O0FQNEVDO0VPekVBLFlBQVc7Q0FDWjs7QVB3RUM7RU9yRUEsWVgrQ3FEO0NXOUN0RDs7QVBvRUM7RU9yR0YsWVgrRXVEO0VXOUV2RCxXQUF1QjtDQWlDeEI7O0FQbUVHO0VPN0VBLFlBQVc7Q0FDWjs7QVA0RUM7RU96RUEsWUFBVztDQUNaOztBUHdFQztFT3JFQSxZWCtDcUQ7Q1c5Q3REOztBUG9FQztFT3JHRixZWCtFdUQ7RVc5RXZELGlCQUF1QjtDQWlDeEI7O0FQbUVHO0VPN0VBLFlBQVc7Q0FDWjs7QVA0RUM7RU96RUEsWUFBVztDQUNaOztBUHdFQztFT3JFQSxZWCtDcUQ7Q1c5Q3REOztBUG9FQztFT3JHRixZWCtFdUQ7RVc5RXZELFdBQXVCO0NBaUN4Qjs7QVBtRUc7RU83RUEsWUFBVztDQUNaOztBUDRFQztFT3pFQSxZQUFXO0NBQ1o7O0FQd0VDO0VPckVBLFlYK0NxRDtDVzlDdEQ7O0FQb0VDO0VPckdGLFlYK0V1RDtFVzlFdkQsV0FBdUI7Q0FpQ3hCOztBUG1FRztFTzdFQSxZQUFXO0NBQ1o7O0FQNEVDO0VPekVBLFlBQVc7Q0FDWjs7QVB3RUM7RU9yRUEsWVgrQ3FEO0NXOUN0RDs7QVBvRUM7RU9yR0YsWVgrRXVEO0VXOUV2RCxpQkFBdUI7Q0FpQ3hCOztBUG1FRztFTzdFQSxZQUFXO0NBQ1o7O0FQNEVDO0VPekVBLFlBQVc7Q0FDWjs7QVB3RUM7RU9yRUEsWVgrQ3FEO0NXOUN0RDs7QVBvRUM7RU9yR0YsWVgrRXVEO0VXOUV2RCxpQkFBdUI7Q0FpQ3hCOztBUG1FRztFTzdFQSxZQUFXO0NBQ1o7O0FQNEVDO0VPekVBLFlBQVc7Q0FDWjs7QVB3RUM7RU9yRUEsWVgrQ3FEO0NXOUN0RDs7QVBvRUM7RU9yR0YsWVgrRXVEO0VXOUV2RCxhQUF1QjtDQWlDeEI7O0FQbUVHO0VPN0VBLFlBQVc7Q0FDWjs7QVA0RUM7RU96RUEsWUFBVztDQUNaOztBUHdFQztFT3JFQSxZWCtDcUQ7Q1c5Q3REOztBUDBFRDtFRTNHQSxpQkFGcUM7RUFHckMsZ0JBSHFDO0NGOEdXOztBQURoRDtFQUlJLGdCQUFlO0VBQ2YsZUFBYztDQUNmOztBQUdIO0VBQ0UsZ0JBQWU7RUFDZixlQUFjO0NBQ2Y7O0FBRUQ7RUV6SEEseUJBRnFDO0VBR3JDLHdCQUhxQztDRjRIb0I7O0FBSXpEO0VNN0hBLG1CQUFrQjtFQUNsQixrQkFBaUI7Q044SGhCOztBTW5JRDtFQUNFLFlBQVc7RUFDWCxZQUFXO0NBQ1o7O0FObUlEOzs7RU14SEYsaUJBQWdCO0VBQ2hCLFlBQVc7RUFDWCxnQkFBZTtFQUNmLGVBQWM7Q055SFg7O0FHRkM7RUh6REE7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixnQkRoQmdDO0dMNEYzQjtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixXQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsVUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLFdBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixpQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLFdDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixVQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsV0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLGlCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosV0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFVBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixXQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosaUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixZQ2VxRDtHTHVFaEQ7RUFnQkQ7SU0xRUoscUJEYnFEO0dMeUZoRDtFQUtEO0lPckdGLFlYK0V1RDtJVzlFdkQsWUFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELFdBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxpQkFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELFdBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxXQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxpQkFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELGFBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVAwRUQ7SUUzR0EsaUJBRnFDO0lBR3JDLGdCQUhxQztHRjhHVztFQURoRDtJQUlJLGdCQUFlO0lBQ2YsZUFBYztHQUNmO0VBR0g7SUFDRSxnQkFBZTtJQUNmLGVBQWM7R0FDZjtFQUVEO0lFekhBLHlCQUZxQztJQUdyQyx3QkFIcUM7R0Y0SG9CO0VBSXpEO0lNN0hBLG1CQUFrQjtJQUNsQixrQkFBaUI7R044SGhCO0VNbklEO0lBQ0UsWUFBVztJQUNYLFlBQVc7R0FDWjtFTm1JRDs7O0lNeEhGLGlCQUFnQjtJQUNoQixZQUFXO0lBQ1gsZ0JBQWU7SUFDZixlQUFjO0dOeUhYO0NWMHpESjs7QWE1ekRLO0VIekRBO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUosZ0JEaEJnQztHTDRGM0I7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosV0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFVBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixXQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosaUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixXQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsVUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLFdBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixpQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLFdDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixVQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsV0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLGlCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosWUNlcUQ7R0x1RWhEO0VBZ0JEO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFLRDtJT3JHRixZWCtFdUQ7SVc5RXZELFlBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxXQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxXQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsV0FBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELGlCQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxhQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQMEVEO0lFM0dBLGlCQUZxQztJQUdyQyxnQkFIcUM7R0Y4R1c7RUFEaEQ7SUFJSSxnQkFBZTtJQUNmLGVBQWM7R0FDZjtFQUdIO0lBQ0UsZ0JBQWU7SUFDZixlQUFjO0dBQ2Y7RUFFRDtJRXpIQSwwQkFGcUM7SUFHckMseUJBSHFDO0dGNEhvQjtFQUl6RDtJTTdIQSxtQkFBa0I7SUFDbEIsa0JBQWlCO0dOOEhoQjtFTW5JRDtJQUNFLFlBQVc7SUFDWCxZQUFXO0dBQ1o7RU5tSUQ7OztJTXhIRixpQkFBZ0I7SUFDaEIsWUFBVztJQUNYLGdCQUFlO0lBQ2YsZUFBYztHTnlIWDtDVjYzRUo7O0FhMTNFSztFSDlEQTtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLGdCRGhCZ0M7R0w0RjNCO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLFdDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixVQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsV0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLGlCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosV0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFVBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixXQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosaUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixXQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsVUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLFdBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixpQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLFlDZXFEO0dMdUVoRDtFQWdCRDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBS0Q7SU9yR0YsWVgrRXVEO0lXOUV2RCxZQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsV0FBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELGlCQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsV0FBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELFdBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxpQkFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELGlCQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsYUFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUDBFRDtJRTNHQSxpQkFGcUM7SUFHckMsZ0JBSHFDO0dGOEdXO0VBRGhEO0lBSUksZ0JBQWU7SUFDZixlQUFjO0dBQ2Y7RUFHSDtJQUNFLGdCQUFlO0lBQ2YsZUFBYztHQUNmO0VBRUQ7SUV6SEEsMEJBRnFDO0lBR3JDLHlCQUhxQztHRjRIb0I7RUFJekQ7SU03SEEsbUJBQWtCO0lBQ2xCLGtCQUFpQjtHTjhIaEI7RU1uSUQ7SUFDRSxZQUFXO0lBQ1gsWUFBVztHQUNaO0VObUlEOzs7SU14SEYsaUJBQWdCO0lBQ2hCLFlBQVc7SUFDWCxnQkFBZTtJQUNmLGVBQWM7R055SFg7Q1ZnOEZKOztBYTc3Rks7RUg5REE7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7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TmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLFdDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixVQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsV0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLGlCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosV0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFVBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixXQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosaUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixZQ2VxRDtHTHVFaEQ7RUFnQkQ7SU0xRUoscUJEYnFEO0dMeUZoRDtFQUtEO0lPckdGLFlYK0V1RDtJVzlFdkQsWUFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELFdBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxpQkFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELFdBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxXQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxpQkFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELGFBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVAwRUQ7SUUzR0EsaUJBRnFDO0lBR3JDLGdCQUhxQztHRjhHVztFQURoRDtJQUlJLGdCQUFlO0lBQ2YsZUFBYztHQUNmO0VBR0g7SUFDRSxnQkFBZTtJQUNmLGVBQWM7R0FDZjtFQUVEO0lFekhBLDBCQUZxQztJQUdyQyx5QkFIcUM7R0Y0SG9CO0VBSXpEO0lNN0hBLG1CQUFrQjtJQUNsQixrQkFBaUI7R044SGhCO0VNbklEO0lBQ0UsWUFBVztJQUNYLFlBQVc7R0FDWjtFTm1JRDs7O0lNeEhGLGlCQUFnQjtJQUNoQixZQUFXO0lBQ1gsZ0JBQWU7SUFDZixlQUFjO0dOeUhYO0NWbWdISjs7QWFoZ0hLO0VIOURBO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUosZ0JEaEJnQztHTDRGM0I7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosV0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFVBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixXQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosaUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixXQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsVUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLFdBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixpQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLFdDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixVQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsV0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLGlCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosWUNlcUQ7R0x1RWhEO0VBZ0JEO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFLRDtJT3JHRixZWCtFdUQ7SVc5RXZELFlBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxXQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxXQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsV0FBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELGlCQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxhQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQMEVEO0lFM0dBLGlCQUZxQztJQUdyQyxnQkFIcUM7R0Y4R1c7RUFEaEQ7SUFJSSxnQkFBZTtJQUNmLGVBQWM7R0FDZjtFQUdIO0lBQ0UsZ0JBQWU7SUFDZixlQUFjO0dBQ2Y7RUFFRDtJRXpIQSwwQkFGcUM7SUFHckMseUJBSHFDO0dGNEhvQjtFQUl6RDtJTTdIQSxtQkFBa0I7SUFDbEIsa0JBQWlCO0dOOEhoQjtFTW5JRDtJQUNFLFlBQVc7SUFDWCxZQUFXO0dBQ1o7RU5tSUQ7OztJTXhIRixpQkFBZ0I7SUFDaEIsWUFBVztJQUNYLGdCQUFlO0lBQ2YsZUFBYztHTnlIWDtDVnNrSUo7O0FhbmtJSztFSDlEQTtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLGdCRGhCZ0M7R0w0RjNCO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLFdDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixVQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsV0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLGlCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixhQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsWUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixtQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosV0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFVBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixXQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosaUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGFDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixZQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG1CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosY0NlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGFBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosb0JEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixXQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsVUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLFdBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixpQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGNDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R05pRzlDO0VBTUg7SU0xRUoscUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixlQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsY0FIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGVBSG1EO0dOaUc5QztFQU1IO0lNMUVKLG9CRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosYUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLFlBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixhQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLGVDZXFEO0dMdUVoRDtFQUlDO0lNekZKLG1CQUFrQjtJQUNsQixjQUhtRDtHTjZGOUM7RUFFRDtJTTdGSixtQkFBa0I7SUFDbEIsZUFIbUQ7R05pRzlDO0VBTUg7SU0xRUosbUJEYnFEO0dMeUZoRDtFQXBCRDtJSXBGSixjQ2VxRDtHTHVFaEQ7RUFJQztJTXpGSixtQkFBa0I7SUFDbEIsYUFIbUQ7R042RjlDO0VBRUQ7SU03RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dOaUc5QztFQU1IO0lNMUVKLHFCRGJxRDtHTHlGaEQ7RUFwQkQ7SUlwRkosZUNlcUQ7R0x1RWhEO0VBSUM7SU16RkosbUJBQWtCO0lBQ2xCLGNBSG1EO0dONkY5QztFQUVEO0lNN0ZKLG1CQUFrQjtJQUNsQixlQUhtRDtHTmlHOUM7RUFNSDtJTTFFSixvQkRicUQ7R0x5RmhEO0VBcEJEO0lJcEZKLFlDZXFEO0dMdUVoRDtFQWdCRDtJTTFFSixxQkRicUQ7R0x5RmhEO0VBS0Q7SU9yR0YsWVgrRXVEO0lXOUV2RCxZQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsV0FBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELGlCQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsV0FBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELFdBQXVCO0dBaUN4QjtFUG1FRztJTzdFQSxZQUFXO0dBQ1o7RVA0RUM7SU96RUEsWUFBVztHQUNaO0VQd0VDO0lPckVBLFlYK0NxRDtHVzlDdEQ7RVBvRUM7SU9yR0YsWVgrRXVEO0lXOUV2RCxpQkFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUG9FQztJT3JHRixZWCtFdUQ7SVc5RXZELGlCQUF1QjtHQWlDeEI7RVBtRUc7SU83RUEsWUFBVztHQUNaO0VQNEVDO0lPekVBLFlBQVc7R0FDWjtFUHdFQztJT3JFQSxZWCtDcUQ7R1c5Q3REO0VQb0VDO0lPckdGLFlYK0V1RDtJVzlFdkQsYUFBdUI7R0FpQ3hCO0VQbUVHO0lPN0VBLFlBQVc7R0FDWjtFUDRFQztJT3pFQSxZQUFXO0dBQ1o7RVB3RUM7SU9yRUEsWVgrQ3FEO0dXOUN0RDtFUDBFRDtJRTNHQSxpQkFGcUM7SUFHckMsZ0JBSHFDO0dGOEdXO0VBRGhEO0lBSUksZ0JBQWU7SUFDZixlQUFjO0dBQ2Y7RUFHSDtJQUNFLGdCQUFlO0lBQ2YsZUFBYztHQUNmO0VBRUQ7SUV6SEEsMEJBRnFDO0lBR3JDLHlCQUhxQztHRjRIb0I7RUFJekQ7SU03SEEsbUJBQWtCO0lBQ2xCLGtCQUFpQjtHTjhIaEI7RU1uSUQ7SUFDRSxZQUFXO0lBQ1gsWUFBVztHQUNaO0VObUlEOzs7SU14SEYsaUJBQWdCO0lBQ2hCLFlBQVc7SUFDWCxnQkFBZTtJQUNmLGVBQWM7R055SFg7Q1Z5b0pKOztBVXJvSkM7RUV0RkUsd0JKYXFEO0NFMkV0RDs7QUV0Rkc7RUFDQSxpQkFBZ0I7Q0FDakI7O0FDNEVDO0VITUo7SUV0RkUseUJKYXFEO0dFMkV0RDtFRXRGRztJQUNBLGlCQUFnQjtHQUNqQjtDWnd1Sko7O0FrQnhqSkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFtQkUsVUFBUztFQUNULFdBQVU7Q0FDWDs7QUFHRDtFQUNFLHVCWC9JNkI7RVdpSjdCLG1CQUFrQjtFQUNsQixrQlhuSnVCO0VXb0p2QixtQ1hsSnlDO0NXbUoxQzs7QUFHRDs7RUFFRSxtQkFBa0I7RUFDbEIscUJBQW9CO0NBQ3JCOztBQUdEOztFQUVFLGlCWHJPb0I7RVdzT3BCLHFCQUFvQjtDQUNyQjs7QUFHRDtFQUNFLHFCVnZOcUQ7RVV3TnJELHFCQUFvQjtDQUNyQjs7QUFHRDs7Ozs7O0VBTUUsa0NqQjVSc0M7RWlCNlJ0QyxtQlg5TXNCO0VXK010QixrQ2pCOVJzQztFaUIrUnRDLGVqQnJPcUI7RWlCc09yQixtQ1gxTHNDO0NXZ012Qzs7QUFoQkQ7Ozs7OztFQWFJLGVBQWM7RUFDZCxlWHpRZTtDVzBRaEI7O0FBUUc7RUFJSSxrQlZ2UDZDO0VVbVE3QyxlWDNPVztFV21QWCxjQUFhO0VBT2Isd0JWbFI2QztDVW9SaEQ7O0FBakNEO0VBSUksb0JWdlA2QztFVW1RN0MsZVgzT1c7RVdtUFgsY0FBYTtFQU9iLHdCVmxSNkM7Q1VvUmhEOztBQWpDRDtFQUlJLGdCVnZQNkM7RVVtUTdDLGVYM09XO0VXbVBYLGNBQWE7RUFPYix3QlZsUjZDO0NVb1JoRDs7QUFqQ0Q7RUFJSSxxQlZ2UDZDO0VVbVE3QyxlWDNPVztFV21QWCxjQUFhO0VBT2Isd0JWbFI2QztDVW9SaEQ7O0FBakNEO0VBSUksb0JWdlA2QztFVW1RN0MsZVgzT1c7RVdtUFgsY0FBYTtFQU9iLHdCVmxSNkM7Q1VvUmhEOztBQWpDRDtFQUlJLHFCVnZQNkM7RVVtUTdDLGVYM09XO0VXbVBYLGNBQWE7RUFPYix3QlZsUjZDO0NVb1JoRDs7QUxqTkg7RUtnTEU7SUFJSSxnQlZ2UDZDO0dVb1JoRDtFQWpDRDtJQUlJLGtCVnZQNkM7R1VvUmhEO0VBakNEO0lBSUksb0JWdlA2QztHVW9SaEQ7RUFqQ0Q7SUFJSSxxQlZ2UDZDO0dVb1JoRDtFQWpDRDtJQUlJLG9CVnZQNkM7R1VvUmhEO0VBakNEO0lBSUkscUJWdlA2QztHVW9SaEQ7Q2xCZ2xKUjs7QWtCMWtKQztFQUNFLHFCQUFvQjtFQUNwQixlakJoUm9CO0VpQmlScEIsc0JYbE95QjtFV29PekIsZ0JBQWU7Q0FhaEI7O0FBbEJEO0VBU0ksZVh6TzJEO0VXMk96RCwyQlh6T2dDO0NXMk9uQzs7QUFiSDtFQWdCSSxVQUFTO0NBQ1Y7O0FBSUg7RUFDRSxZQUFXO0VBRVgsb0JWbFRxRDtFVW1UckQsVUFBUztFQUNULHVCWHJQeUI7RVd1UHpCLGNBQWE7RUFDYixnQkFBZTtFQUNmLGdEakI5VG9DO0VpQitUcEMsZUFBYztDQUNmOztBQUdEOzs7RUFHRSx5QlZoVXFEO0VVaVVyRCw2Qlg5UHlCO0VXK1B6QixrQlhsUnVCO0NXbVJ4Qjs7QUFHRDtFQUNFLG1CQUFrQjtDQUNuQjs7QUFHRDtFQUNFLGtCVjVVcUQ7RVU2VXJELHNCWDNRa0I7Q1c0UW5COztBQUdEO0VBQ0Usa0JWbFZxRDtDVW1WdEQ7O0FBR0Q7RUFFSSxlVm5WTztFVW9WUCxpQkFBZ0I7Q0FDakI7O0FBSUg7RUFDRSxvQlh6UnlCO0NXK1IxQjs7QUFQRDtFQUlJLHNCWDFSOEI7RVcyUjlCLGlCWHZYa0I7Q1d3WG5COztBQUlIO0VBQ0Usb0JYeFQ2QjtFV3lUN0IsdUNWMVdxRDtFVTJXckQsK0JYMVlpQjtDV2dabEI7O0FBVEQ7RUFNSSxrQlg5VHFCO0VXK1RyQixZWDdZVTtDVzhZWDs7QUFJSDtFQUNFLGVBQWM7RUFDZCxxQlZ0WHFEO0VVdVhyRCxZWHJaWTtDVzBaYjs7QUFSRDtFQU1JLGNYNVNnQjtDVzZTakI7O0FBSUg7RUFDRSxrQ1g3Wlc7RVc4WlgsZWpCallxQjtFaUJrWXJCLGFBQVk7Q0FDYjs7QUFHRDtFQUNFLFVBQVM7Q0FDVjs7QUFHRDtFQUNFLHNDVjVZcUQ7RVU4WXJELDBCWDdhaUI7RVc4YWpCLDBCWC9hZ0I7RVdpYmhCLDZEWDNYbUU7RVc0WG5FLGlCWHZhc0I7RVd3YXRCLGVYaGJXO0NXaWJaOztBQUdEO0VBQ0UsVUFBUztFQUNULDRCVnBaUztFVXNaVCwwQlgzYmdCO0VXNmJoQiw2RFh2WW1FO0VXd1luRSxlWDNiVztDV2djWjs7QUM1Y0Q7RUFDRSxtQlpzSXlCO0VZckl6Qixz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bkIsZTNCcUR1QjtFUXNDdkIsc09BQXlOO0VtQnZGdk4sK0JBQThCO0VBQzlCLHdDQUEwRDtFQUMxRCw2QkFBNEI7RUFDNUIseUJBQXdCO0VBRXhCLHNCQUF1RDtFQUl2RCxtRHJCb1Y2QztFcUJwVjdDLDJDckJvVjZDO0NxQmpUOUM7O0FuQjZDRDtFbUIvQ0E7SW5Ca0RJLHdXQUF1VztHbUJoRDFXO0M1Qms1S0Y7O0E0Qmo3S0M7RUFDRSxjQUFhO0VBQ2IsMEIzQm9CbUI7RTJCbkJuQiwwQjNCYWtCO0UyQlpsQix5QnJCMFVxQjtFcUIxVXJCLGlCckIwVXFCO0VxQnZVbkIsbURyQnlVMkM7RXFCelUzQywyQ3JCeVUyQztDcUJ2VTlDOztBQUdEO0VBQ0UsMEIzQkt1QjtFMkJKdkIsb0JyQmlVK0I7Q3FCaFVoQzs7QUFHRDtFQUNFLGNBQWE7Q0FDZDs7QUFFRDtFQUNFLGFBQVk7RUFDWix1QkFBc0I7Q0FDdkI7O0FDakNEO0VBQ0Usc0J0QlNZO0VzQlJaLDBCQUErRDtDQUloRTs7QUFIQztFQUNFLGV0Qk1VO0NzQkxYOztBQUZEO0VBQ0UsZXRCTVU7Q3NCTFg7O0FBRkQ7RUFDRSxldEJNVTtDc0JMWDs7QUFGRDtFQUNFLGV0Qk1VO0NzQkxYOztBQXlCRDtFQUNFLGV0QnJCVTtDc0JzQlg7O0FBSUg7RUF6QkEsY0FBYTtFQUNiLG9CQUFnQztFQUNoQyxvQnJCK0J1RDtFcUI3QnZELG1CckI2QnVEO0VxQjVCdkQsaUJ0QlFzQjtFc0JQdEIsZXRCUGM7Q3NCZ0NiOztBQU5EO0VBSUksZUFBYztDQUNmOztBQ3NJSDtFQTlJQSxzQkFBcUI7RUFDckIsdUJBQXNCO0VBQ3RCLG1CdkJzS2tDO0V1QnJLbEMscUJ2Qm9LMEI7RXVCbEsxQix5QkFBd0I7RUFDeEIsOEJBQTZCO0VBQzdCLGlCdkJ3S2U7RXVCdktmLDBFdkJrTHVFO0V1QmxMdkUsa0V2QmtMdUU7RXVCaEx2RSxnQnZCeUtlO0V1QnhLZixlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLGdCQUFlO0VBcUNmLDBCN0IzRG9CO0U2QjREcEIsZTdCM0RvQjtDNkIr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SUkwUG9CLG1CQUFrQjtJQUNsQixvQkFBbUI7R0FHMUI7Q3ZGNmdaWjs7QW1GM3daRDtFSW9Rb0IsZXRGbExLO0VzRm1MTCxnQkFBZTtDQUNsQjs7QUp0UWpCO0VJMlFnQiwwQnRGMUxVO0NzRjJMYjs7QUo1UWI7RUkrUWdCLGFBQVk7RUFDWixrQkFBaUI7RUFDakIsaUJBQWdCO0VBQ2hCLDBCQUF5QjtDQUM1Qjs7QUpuUmI7RUlzUmdCLHdCQUF1QjtDQU0xQjs7QUo1UmI7RUl5Um9CLG9CQUFtQjtDQUN0Qjs7QUoxUmpCO0VJbVNRLG9CQUFtQjtDQUN0Qjs7QUpwU0w7RUkyU2dCLGV0RnpOUztFc0YwTlQsZ0JBQWU7Q0FDbEI7O0FKN1NiO0VJZ1RnQiwwQnRGL05VO0NzRmdPYjs7QUpqVGI7RUl1VFksY0FBYTtDQUNoQjs7QUp4VFQ7RUkyVFksMEJ0RjdQVTtDc0Z1UWI7O0FKclVUO0VJK1RnQiwwQnRGMVBXO0VzRjJQWCxldEZsUU07RXNGbVFOLGtDckJyVDBCO0VxQnNUMUIsaUJyQjdUSTtDcUI4VFA7O0FKblViO0VJMFVRLGFBQVk7Q0E2QmY7O0FKdldMO0VJZ1ZjLFlBQVc7Q0FDWjs7QUpqVmI7O0VJdVZZLGVBQWM7RUFDZCxnQkFBZTtDQUNsQjs7QUp6VlQ7RUk2VlksbUJBQWtCO0VBQ2xCLFdBQVU7Q0FDYjs7QUovVlQ7O0VJbVdZLDhCQUE2QjtFQUM3QixldEZsUmE7Q3NGbVJoQjs7QUpyV1Q7RUkwV1EsbUJBQWtCO0VBQ2xCLFdBQVU7RUFHVixXQUFVO0VBQ1YsMEJ0RmpUYztFc0ZrVGQsYUFBWTtFQUNaLGVBQWM7RUFDZCxZQUFXO0VBQ1gsVUFBUztFQUNULHFCQUFvQjtFQUdwQixVQUFTO0NBK0RaOztBSnRiTDtFSTBYWSxhQUFZO0VBQ1osaUJBQWdCO0NBQ25COztBSjVYVDtFSStYWSxhQUFZO0VBRVosV0FBVTtFQUNWLG1CQUFrQjtDQThCckI7O0FKaGFUO0VJcVlnQixXQUFVO0VBQ1YsVUFBUztFQUNULCtCdEZ6VU07RXNGMFVOLDhCdEZ0VFM7RXNGdVRULGlDdEZ2VFM7Q3NGd1Ra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QUFpQjtDQVNqQjs7QVA1R0Q7OztFT3NHRSxhQUFZO0VBQ1osWUFBVztFQUNYLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsb0JBQW1CO0NBQ25COztBUDNHRjs7RU8rR0MsZXpGdEVxQjtFeUZ1RXJCLDBCekZ4RXFCO0V5RnlFckIsMEVuRjBId0U7RW1GMUh4RSxrRW5GMEh3RTtFbUZ6SHhFLDBCekZ6RXFCO0N5RjBFckI7O0FQbkhEOztFT3VIQyxjQUFhO0VBQ2IsaUJBQWdCO0VBQ2hCLGlCQUFnQjtDQVNoQjs7QUFQQTtFUDNIRDs7SU80SEUsbUJBQWtCO0dBTW5CO0MxRmdpY0E7O0FtRmxxY0Q7O0VPZ0lFLFVBQVM7Q0FDVDs7QVBqSUY7O0VPdUlFLFdBQVU7RUFDVixvQkFBbUI7RUFDbkIsaUJBQWdCO0NBQ2hCOztBUHBJRjtFUTdCQSxnQkFBZ0I7RUE0UmhCLGlCQUFpQjtDUjdQaEI7O0FBRkQ7RVExQkUsb0JBQW1CO0NBY3BCOztBUllEO0VRdkJJLG9CbkY2RXFEO0NtRm5FdEQ7O0FSYUg7RVFwQk0sc0JBQXFCO0VBQ3JCLGFBQVk7RUFDWixvQm5Gd0VtRDtFbUZ2RW5ELGlCekJIaUI7RXlCSWpCLGUxRndEaUI7RTBGdkRqQixnQkFBZTtDQUNoQjs7QVJjTDtFUVJFLHNCQUFxQjtFQUNyQixrQm5GNkR1RDtFbUY1RHZELHNCQUFxQjtDQU10Qjs7QUFKQztFUklGO0lRSEksbUJuRnlEcUQ7SW1GeERyRCxxQkFBb0I7R0FFdkI7QzNGMnNjQTs7QW1GM3NjRDtFUUlFLDJCQUEwQjtFQUMxQixtRUFBbUQ7RUFDbkQsMkJBQTBCO0NBQzNCOztBUlBEO0VRZ0JFLFVBQVM7RUFDVCxXQUFVO0NBeUxYOztBUjFNRDtFUW9CSSxvQkFBbUI7Q0FDcEI7O0FSckJIO0VRd0JJLG9CQUFtQjtFQUNuQixpQkFBZ0I7RUFDaEIsZUFBYztDQXNDZjs7QVJoRUg7RVE2Qk0sb0JBQW1CO0VBQ25CLGtDekI5Q29DO0V5QitDcEMsaUJ6Qm5EaUI7RXlCb0RqQixnQm5Gc0JtRDtFbUZyQm5ELHNCbkZxQm1EO0VtRnBCbkQsZTFGb0JtQjtDMEZkcEI7O0FSeENMO0VRc0NRLGVwRmxCUTtDb0ZtQlQ7O0FSdkNQO0VRMkNNLGlCQUFnQjtDQUNqQjs7QVI1Q0w7RVErQ00sZUFBYztFQUNkLGUxRk9jO0UwRk5kLGtDekJqRW9DO0V5QmtFcEMsaUJ6QnpFYztFeUIwRWQscUJuRkdtRDtDbUZGcEQ7O0FScERMO0VRdURNLG9CQUFtQjtFQUNuQixrQ3pCeEVvQztFeUJ5RXBDLGlCekI3RWlCO0V5QjhFakIsc0JuRkptRDtDbUZLcEQ7O0FSM0RMO0VROERNLGlCQUFnQjtDQUNqQjs7QVIvREw7RVFtRUksZUFBYztFQUNkLGtDekJwRnNDO0V5QnFGdEMsaUJ6QnpGbUI7RXlCMEZuQixvQkFBbUI7RUFDbkIsZTFGakJxQjtDMEZrQnRCOztBUnhFSDtFUTJFSSxnQkFBZTtFQUNmLFVBQVM7RUFDVCxXQUFVO0VBQ1YsT0FBTTtDQUNQOztBQUlDO0VSbkZKO0lRb0ZNLGtEQUFrRDtJQUNsRCxpQkFBZ0I7SUFDaEIsaUJBQWdCO0lBQ2hCLGdCQUFlO0dBRWxCO0MzRm1zY0Y7O0FtRjV4Y0Q7RVE0RkksZUFBYztFQUNkLFdBQVU7RUFDVixhQUFZO0NBMENiOztBUnhJSDtFUWlHTSxzQkFBcUI7RUFDckIsaUJBQWdCO0VBQ2hCLGFBQVk7RUFDWixtQkFBa0I7RUFDbEIsb0JBQW1CO0VBQ25CLGlCcEZvSFc7RW9GbkhYLGtDekJ2SG9DO0V5QndIcEMsaUJ6QjVIaUI7RXlCNkhqQixnQm5GbkRtRDtFbUZvRG5ELGtCbkZwRG1EO0VtRnFEbkQsMEIxRnpFZ0I7RTBGMEVoQiwwQjFGMURrQjtDMEZpRm5COztBQXJCQztFUjlHTjtJUStHUSxrREFBa0Q7SUFDbEQsWUFBVztHQW1CZDtDM0ZxcmNKOztBbUZ4emNEO0VRb0hRLDBCMUY1RWU7QzBGNkVoQjs7QVJySFA7RVF3SFEsb0IxRmxGYztDMEZtRmY7O0FSekhQO0VRNEhRLGlCQUFnQjtDQU1qQjs7QUFKQztFUjlIUjtJUStIVSxrREFBa0Q7SUFDbEQsaUJBQWdCO0dBRW5CO0MzRnlzY047O0Ft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QWlHbnRkRDtFQTJDRyxZQUFXO0NBQ1g7O0FBNUNIO0VBK0NHLGFBQVk7Q0FDWjs7QUFoREg7RUFvREUsZUFBYztFQUNkLGNBQWE7Q0FTYjs7QUE5REY7RUF3REcsVUFBUztDQUNUOztBQXpESDtFQTRERyxrQkFBaUI7Q0FDakI7O0FBN0RIO0VBaUVHLGVBQWM7RUFDZCxlQUFjO0VBQ2QsV0FBVTtDQUNYOztBQ3BFRiw0Q0FBNEM7QUFDNUM7RUFFSSxXQUFVO0VBQ1YsVUFBUztFQUNULFVBQVM7Q0FTVjs7QUFiSDtFQU9NLG9CQUFtQjtDQUNwQjs7QUFSTDtFQVdNLG9CMUY0RW1EO0MwRjNFcEQ7O0FBWkw7RUFnQkksaUJBQWdCO0VBQ2hCLG9CQUFtQjtDQUtwQjs7QUF0Qkg7RUFvQk0sb0IxRm1FbUQ7QzBGbEVwRDs7QUFyQkw7RUF5QkksNkJBQTRCO0VBQzVCLG9CQUFtQjtFQUNuQixpQkFBZ0I7Q0FDakI7O0FBNUJIO0VBK0JJLG1CQUFrQjtFQUNsQixrQkFBaUI7Q0FDbEI7O0FBR0g7RUFFSSxjQUFhO0NBQ2Q7O0FBSUg7RUFFSSxvQkFBbUI7Q0FDcEI7O0FDL0NIO0VBQ0UsOEJBQTZCO0VBQzdCLFVBQVM7Q0FDVjs7QUFDRDtFQUdNLDBCbEcrRHFCO0NrRzlEdEI7O0FBSkw7RUFNTSwwQmxHMERnQjtDa0d6RGpCOztBQUlMOzs7RUFJSSxjQUFhO0NBQ2Q7O0FBR0g7RUFDRSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLGFBQVk7RUFDWixhQUFZO0VBQ1osWUFBVztFQUNYLFVBQVM7Q0FDVjs7QUFDRDtFQUNFLHNCQUFxQjtDQUN0Qjs7QUFDRDtFQUNFLFdBQVU7Q0FDWDs7QUFDRDtFQUNFLGVBQWM7RUFDZCxZQUFXO0NBQ1o7O0FBRUQ7RUFDRSxlQUFjO0VBQ2QsZUFBYztFQUNkLFdBQVU7Q0FDWCIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtMzAwLXdlYmZvbnQuZW90XCIpLCB1cmwoXCIuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtMzAwLXdlYmZvbnQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTMwMC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTMwMC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTMwMC13ZWJmb250LnN2ZyNtdXNlb19zYW5zX3JvdW5kZWRfMzAwcmVndWxhclwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC01MDAtd2ViZm9udC5lb3RcIiksIHVybChcIi4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC01MDAtd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQuc3ZnI211c2VvX3NhbnNfcm91bmRlZF81MDByZWd1bGFyXCIpIGZvcm1hdChcInN2Z1wiKTtcbn1cblxuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuMy4wXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cbi8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMiAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuZmlnY2FwdGlvbixcbmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG5cbi8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xufVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqL1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cbn1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqL1xufVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW0tc21hbGw9MzBlbSZtZWRpdW09NDBlbSZtZWRpdW0tbGFyZ2U9NTBlbSZsYXJnZS1tZWRpdW09NjRlbSZsYXJnZT03Mi4yNWVtJnhsYXJnZT04MS4yNWVtJnh4bGFyZ2U9ODcuNWVtXCI7XG59XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDcyLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLnJvdzo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnJvdyAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4zMTI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuMzEyNXJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjMxMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjMxMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjIxODc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yMTg3NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yMTg3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjE4NzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuMjVlbSkge1xuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjE4NzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjIxODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjIxODc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yMTg3NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjIxODc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yMTg3NXJlbTtcbiAgfVxufVxuXG4ucm93IC5yb3cuY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ucm93LmV4cGFuZGVkIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4ucm93LmV4cGFuZGVkIC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zMTI1cmVtO1xufVxuXG4ucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1uLCAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjE4NzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC4yMTg3NXJlbTtcbn1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjIxODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4yMTg3NXJlbTtcbiAgfVxufVxuXG4uY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5jb2x1bW4uZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLmVuZC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnNtYWxsLTEge1xuICB3aWR0aDogMy4xMjUlO1xufVxuXG4uc21hbGwtcHVzaC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAzLjEyNSU7XG59XG5cbi5zbWFsbC1wdWxsLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zLjEyNSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTtcbn1cblxuLnNtYWxsLTIge1xuICB3aWR0aDogNi4yNSU7XG59XG5cbi5zbWFsbC1wdXNoLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDYuMjUlO1xufVxuXG4uc21hbGwtcHVsbC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNi4yNSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiAzLjEyNSU7XG59XG5cbi5zbWFsbC0zIHtcbiAgd2lkdGg6IDkuMzc1JTtcbn1cblxuLnNtYWxsLXB1c2gtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOS4zNzUlO1xufVxuXG4uc21hbGwtcHVsbC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOS4zNzUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogNi4yNSU7XG59XG5cbi5zbWFsbC00IHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuXG4uc21hbGwtcHVzaC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAxMi41JTtcbn1cblxuLnNtYWxsLXB1bGwtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTEyLjUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogOS4zNzUlO1xufVxuXG4uc21hbGwtNSB7XG4gIHdpZHRoOiAxNS42MjUlO1xufVxuXG4uc21hbGwtcHVzaC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAxNS42MjUlO1xufVxuXG4uc21hbGwtcHVsbC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMTUuNjI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDEyLjUlO1xufVxuXG4uc21hbGwtNiB7XG4gIHdpZHRoOiAxOC43NSU7XG59XG5cbi5zbWFsbC1wdXNoLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDE4Ljc1JTtcbn1cblxuLnNtYWxsLXB1bGwtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTE4Ljc1JTtcbn1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDE1LjYyNSU7XG59XG5cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDIxLjg3NSU7XG59XG5cbi5zbWFsbC1wdXNoLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDIxLjg3NSU7XG59XG5cbi5zbWFsbC1wdWxsLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0yMS44NzUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogMTguNzUlO1xufVxuXG4uc21hbGwtOCB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5zbWFsbC1wdXNoLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDI1JTtcbn1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDIxLjg3NSU7XG59XG5cbi5zbWFsbC05IHtcbiAgd2lkdGg6IDI4LjEyNSU7XG59XG5cbi5zbWFsbC1wdXNoLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDI4LjEyNSU7XG59XG5cbi5zbWFsbC1wdWxsLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0yOC4xMjUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4uc21hbGwtMTAge1xuICB3aWR0aDogMzEuMjUlO1xufVxuXG4uc21hbGwtcHVzaC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzEuMjUlO1xufVxuXG4uc21hbGwtcHVsbC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTMxLjI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDI4LjEyNSU7XG59XG5cbi5zbWFsbC0xMSB7XG4gIHdpZHRoOiAzNC4zNzUlO1xufVxuXG4uc21hbGwtcHVzaC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzQuMzc1JTtcbn1cblxuLnNtYWxsLXB1bGwtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zNC4zNzUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDMxLjI1JTtcbn1cblxuLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDM3LjUlO1xufVxuXG4uc21hbGwtcHVzaC0xMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzcuNSU7XG59XG5cbi5zbWFsbC1wdWxsLTEyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMzcuNSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogMzQuMzc1JTtcbn1cblxuLnNtYWxsLTEzIHtcbiAgd2lkdGg6IDQwLjYyNSU7XG59XG5cbi5zbWFsbC1wdXNoLTEzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA0MC42MjUlO1xufVxuXG4uc21hbGwtcHVsbC0xMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQwLjYyNSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTIge1xuICBtYXJnaW4tbGVmdDogMzcuNSU7XG59XG5cbi5zbWFsbC0xNCB7XG4gIHdpZHRoOiA0My43NSU7XG59XG5cbi5zbWFsbC1wdXNoLTE0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA0My43NSU7XG59XG5cbi5zbWFsbC1wdWxsLTE0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNDMuNzUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTEzIHtcbiAgbWFyZ2luLWxlZnQ6IDQwLjYyNSU7XG59XG5cbi5zbWFsbC0xNSB7XG4gIHdpZHRoOiA0Ni44NzUlO1xufVxuXG4uc21hbGwtcHVzaC0xNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNDYuODc1JTtcbn1cblxuLnNtYWxsLXB1bGwtMTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC00Ni44NzUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTE0IHtcbiAgbWFyZ2luLWxlZnQ6IDQzLjc1JTtcbn1cblxuLnNtYWxsLTE2IHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnNtYWxsLXB1c2gtMTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDUwJTtcbn1cblxuLnNtYWxsLXB1bGwtMTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTUge1xuICBtYXJnaW4tbGVmdDogNDYuODc1JTtcbn1cblxuLnNtYWxsLTE3IHtcbiAgd2lkdGg6IDUzLjEyNSU7XG59XG5cbi5zbWFsbC1wdXNoLTE3IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1My4xMjUlO1xufVxuXG4uc21hbGwtcHVsbC0xNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTUzLjEyNSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTYge1xuICBtYXJnaW4tbGVmdDogNTAlO1xufVxuXG4uc21hbGwtMTgge1xuICB3aWR0aDogNTYuMjUlO1xufVxuXG4uc21hbGwtcHVzaC0xOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTYuMjUlO1xufVxuXG4uc21hbGwtcHVsbC0xOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTU2LjI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0xNyB7XG4gIG1hcmdpbi1sZWZ0OiA1My4xMjUlO1xufVxuXG4uc21hbGwtMTkge1xuICB3aWR0aDogNTkuMzc1JTtcbn1cblxuLnNtYWxsLXB1c2gtMTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDU5LjM3NSU7XG59XG5cbi5zbWFsbC1wdWxsLTE5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNTkuMzc1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0xOCB7XG4gIG1hcmdpbi1sZWZ0OiA1Ni4yNSU7XG59XG5cbi5zbWFsbC0yMCB7XG4gIHdpZHRoOiA2Mi41JTtcbn1cblxuLnNtYWxsLXB1c2gtMjAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDYyLjUlO1xufVxuXG4uc21hbGwtcHVsbC0yMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTYyLjUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTE5IHtcbiAgbWFyZ2luLWxlZnQ6IDU5LjM3NSU7XG59XG5cbi5zbWFsbC0yMSB7XG4gIHdpZHRoOiA2NS42MjUlO1xufVxuXG4uc21hbGwtcHVzaC0yMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNjUuNjI1JTtcbn1cblxuLnNtYWxsLXB1bGwtMjEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC02NS42MjUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTIwIHtcbiAgbWFyZ2luLWxlZnQ6IDYyLjUlO1xufVxuXG4uc21hbGwtMjIge1xuICB3aWR0aDogNjguNzUlO1xufVxuXG4uc21hbGwtcHVzaC0yMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNjguNzUlO1xufVxuXG4uc21hbGwtcHVsbC0yMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY4Ljc1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0yMSB7XG4gIG1hcmdpbi1sZWZ0OiA2NS42MjUlO1xufVxuXG4uc21hbGwtMjMge1xuICB3aWR0aDogNzEuODc1JTtcbn1cblxuLnNtYWxsLXB1c2gtMjMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDcxLjg3NSU7XG59XG5cbi5zbWFsbC1wdWxsLTIzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNzEuODc1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0yMiB7XG4gIG1hcmdpbi1sZWZ0OiA2OC43NSU7XG59XG5cbi5zbWFsbC0yNCB7XG4gIHdpZHRoOiA3NSU7XG59XG5cbi5zbWFsbC1wdXNoLTI0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA3NSU7XG59XG5cbi5zbWFsbC1wdWxsLTI0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNzUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTIzIHtcbiAgbWFyZ2luLWxlZnQ6IDcxLjg3NSU7XG59XG5cbi5zbWFsbC0yNSB7XG4gIHdpZHRoOiA3OC4xMjUlO1xufVxuXG4uc21hbGwtcHVzaC0yNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNzguMTI1JTtcbn1cblxuLnNtYWxsLXB1bGwtMjUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC03OC4xMjUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTI0IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLnNtYWxsLTI2IHtcbiAgd2lkdGg6IDgxLjI1JTtcbn1cblxuLnNtYWxsLXB1c2gtMjYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgxLjI1JTtcbn1cblxuLnNtYWxsLXB1bGwtMjYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04MS4yNSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMjUge1xuICBtYXJnaW4tbGVmdDogNzguMTI1JTtcbn1cblxuLnNtYWxsLTI3IHtcbiAgd2lkdGg6IDg0LjM3NSU7XG59XG5cbi5zbWFsbC1wdXNoLTI3IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4NC4zNzUlO1xufVxuXG4uc21hbGwtcHVsbC0yNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTg0LjM3NSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMjYge1xuICBtYXJnaW4tbGVmdDogODEuMjUlO1xufVxuXG4uc21hbGwtMjgge1xuICB3aWR0aDogODcuNSU7XG59XG5cbi5zbWFsbC1wdXNoLTI4IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4Ny41JTtcbn1cblxuLnNtYWxsLXB1bGwtMjgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04Ny41JTtcbn1cblxuLnNtYWxsLW9mZnNldC0yNyB7XG4gIG1hcmdpbi1sZWZ0OiA4NC4zNzUlO1xufVxuXG4uc21hbGwtMjkge1xuICB3aWR0aDogOTAuNjI1JTtcbn1cblxuLnNtYWxsLXB1c2gtMjkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDkwLjYyNSU7XG59XG5cbi5zbWFsbC1wdWxsLTI5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOTAuNjI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0yOCB7XG4gIG1hcmdpbi1sZWZ0OiA4Ny41JTtcbn1cblxuLnNtYWxsLTMwIHtcbiAgd2lkdGg6IDkzLjc1JTtcbn1cblxuLnNtYWxsLXB1c2gtMzAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDkzLjc1JTtcbn1cblxuLnNtYWxsLXB1bGwtMzAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC05My43NSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMjkge1xuICBtYXJnaW4tbGVmdDogOTAuNjI1JTtcbn1cblxuLnNtYWxsLTMxIHtcbiAgd2lkdGg6IDk2Ljg3NSU7XG59XG5cbi5zbWFsbC1wdXNoLTMxIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA5Ni44NzUlO1xufVxuXG4uc21hbGwtcHVsbC0zMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTk2Ljg3NSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMzAge1xuICBtYXJnaW4tbGVmdDogOTMuNzUlO1xufVxuXG4uc21hbGwtMzIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNtYWxsLW9mZnNldC0zMSB7XG4gIG1hcmdpbi1sZWZ0OiA5Ni44NzUlO1xufVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTAlO1xufVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDMzLjMzMzMzJTtcbn1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjAlO1xufVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE2LjY2NjY3JTtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNC4yODU3MSU7XG59XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uc21hbGwtY29sbGFwc2UgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5leHBhbmRlZC5yb3cgLnNtYWxsLWNvbGxhcHNlLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07XG59XG5cbi5zbWFsbC1jZW50ZXJlZCB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5zbWFsbC1jZW50ZXJlZCwgLnNtYWxsLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogbm9uZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11bmNlbnRlcmVkLFxuLnNtYWxsLXB1c2gtMCxcbi5zbWFsbC1wdWxsLTAge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLm1lZGl1bS1zbWFsbC0xIHtcbiAgICB3aWR0aDogMy4xMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMy4xMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMuMTI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0yIHtcbiAgICB3aWR0aDogNi4yNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2LjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02LjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMy4xMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtMyB7XG4gICAgd2lkdGg6IDkuMzc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkuMzc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDYuMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtNCB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTIuNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTIuNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDkuMzc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTUge1xuICAgIHdpZHRoOiAxNS42MjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTUuNjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNS42MjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMi41JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTYge1xuICAgIHdpZHRoOiAxOC43NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxOC43NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTguNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiAxNS42MjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtNyB7XG4gICAgd2lkdGg6IDIxLjg3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyMS44NzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTIxLjg3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4Ljc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTgge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiAyMS44NzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtOSB7XG4gICAgd2lkdGg6IDI4LjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyOC4xMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI4LjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTEwIHtcbiAgICB3aWR0aDogMzEuMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMxLjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzEuMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiAyOC4xMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtMTEge1xuICAgIHdpZHRoOiAzNC4zNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDM0LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTM0LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiAzMS4yNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDM3LjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDM3LjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zNy41JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDM0LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0xMyB7XG4gICAgd2lkdGg6IDQwLjYyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTEzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDAuNjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDAuNjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDM3LjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtMTQge1xuICAgIHdpZHRoOiA0My43NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTE0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDMuNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC0xNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00My43NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMTMge1xuICAgIG1hcmdpbi1sZWZ0OiA0MC42MjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtMTUge1xuICAgIHdpZHRoOiA0Ni44NzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0xNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQ2Ljg3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTE1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQ2Ljg3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMTQge1xuICAgIG1hcmdpbi1sZWZ0OiA0My43NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0xNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1c2gtMTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTE2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0xNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQ2Ljg3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0xNyB7XG4gICAgd2lkdGg6IDUzLjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTE3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTMuMTI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTMuMTI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0xNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTE4IHtcbiAgICB3aWR0aDogNTYuMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0xOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU2LjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTYuMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTE3IHtcbiAgICBtYXJnaW4tbGVmdDogNTMuMTI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTE5IHtcbiAgICB3aWR0aDogNTkuMzc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1c2gtMTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC0xOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OS4zNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTE4IHtcbiAgICBtYXJnaW4tbGVmdDogNTYuMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtMjAge1xuICAgIHdpZHRoOiA2Mi41JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1c2gtMjAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Mi41JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMjAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjIuNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMTkge1xuICAgIG1hcmdpbi1sZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtMjEge1xuICAgIHdpZHRoOiA2NS42MjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0yMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY1LjYyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTIxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY1LjYyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMjAge1xuICAgIG1hcmdpbi1sZWZ0OiA2Mi41JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTIyIHtcbiAgICB3aWR0aDogNjguNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0yMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY4Ljc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMjIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjguNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTIxIHtcbiAgICBtYXJnaW4tbGVmdDogNjUuNjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTIzIHtcbiAgICB3aWR0aDogNzEuODc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1c2gtMjMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3MS44NzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC0yMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03MS44NzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTIyIHtcbiAgICBtYXJnaW4tbGVmdDogNjguNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtMjQge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTI0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC0yNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMjMge1xuICAgIG1hcmdpbi1sZWZ0OiA3MS44NzUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtMjUge1xuICAgIHdpZHRoOiA3OC4xMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVzaC0yNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTI1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc4LjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1vZmZzZXQtMjQge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0yNiB7XG4gICAgd2lkdGg6IDgxLjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1c2gtMjYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4MS4yNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTI2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgxLjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0yNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0yNyB7XG4gICAgd2lkdGg6IDg0LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTI3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODQuMzc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMjcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODQuMzc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0yNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDgxLjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTI4IHtcbiAgICB3aWR0aDogODcuNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTI4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODcuNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTI4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTg3LjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTI3IHtcbiAgICBtYXJnaW4tbGVmdDogODQuMzc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTI5IHtcbiAgICB3aWR0aDogOTAuNjI1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1c2gtMjkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MC42MjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtcHVsbC0yOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MC42MjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtb2Zmc2V0LTI4IHtcbiAgICBtYXJnaW4tbGVmdDogODcuNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0zMCB7XG4gICAgd2lkdGg6IDkzLjc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1c2gtMzAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5My43NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTMwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkzLjc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0yOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkwLjYyNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC0zMSB7XG4gICAgd2lkdGg6IDk2Ljg3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1wdXNoLTMxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTYuODc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXB1bGwtMzEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTYuODc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0zMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDkzLjc1JTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLTMyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVkaXVtLXNtYWxsLW9mZnNldC0zMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDk2Ljg3NSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS1zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5tZWRpdW0tc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tc21hbGwtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tc21hbGwtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tc21hbGwtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5tZWRpdW0tc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tc21hbGwtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtOCA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLm1lZGl1bS1zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS1zbWFsbC11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmV4cGFuZGVkLnJvdyAubWVkaXVtLXNtYWxsLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIC5tZWRpdW0tc21hbGwtY2VudGVyZWQsIC5tZWRpdW0tc21hbGwtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS1zbWFsbC11bmNlbnRlcmVkLFxuICAubWVkaXVtLXNtYWxsLXB1c2gtMCxcbiAgLm1lZGl1bS1zbWFsbC1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDMuMTI1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMuMTI1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zLjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDYuMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNi4yNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNi4yNSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDMuMTI1JTtcbiAgfVxuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiA5LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOS4zNzUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiA2LjI1JTtcbiAgfVxuICAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDEyLjUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTEyLjUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiA5LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS01IHtcbiAgICB3aWR0aDogMTUuNjI1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE1LjYyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTUuNjI1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMTIuNSU7XG4gIH1cbiAgLm1lZGl1bS02IHtcbiAgICB3aWR0aDogMTguNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTguNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE4Ljc1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogMTUuNjI1JTtcbiAgfVxuICAubWVkaXVtLTcge1xuICAgIHdpZHRoOiAyMS44NzUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjEuODc1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yMS44NzUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiAxOC43NSU7XG4gIH1cbiAgLm1lZGl1bS04IHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogMjEuODc1JTtcbiAgfVxuICAubWVkaXVtLTkge1xuICAgIHdpZHRoOiAyOC4xMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjguMTI1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yOC4xMjUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDMxLjI1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMS4yNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMxLjI1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogMjguMTI1JTtcbiAgfVxuICAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogMzQuMzc1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzNC4zNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zNC4zNzUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogMzEuMjUlO1xuICB9XG4gIC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAzNy41JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzNy41JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzcuNSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiAzNC4zNzUlO1xuICB9XG4gIC5tZWRpdW0tMTMge1xuICAgIHdpZHRoOiA0MC42MjUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0xMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQwLjYyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTEzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQwLjYyNSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAzNy41JTtcbiAgfVxuICAubWVkaXVtLTE0IHtcbiAgICB3aWR0aDogNDMuNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0xNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQzLjc1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDMuNzUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEzIHtcbiAgICBtYXJnaW4tbGVmdDogNDAuNjI1JTtcbiAgfVxuICAubWVkaXVtLTE1IHtcbiAgICB3aWR0aDogNDYuODc1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0Ni44NzUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0xNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00Ni44NzUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTE0IHtcbiAgICBtYXJnaW4tbGVmdDogNDMuNzUlO1xuICB9XG4gIC5tZWRpdW0tMTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTE2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0xNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0Ni44NzUlO1xuICB9XG4gIC5tZWRpdW0tMTcge1xuICAgIHdpZHRoOiA1My4xMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0xNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUzLjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTE3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUzLjEyNSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm1lZGl1bS0xOCB7XG4gICAgd2lkdGg6IDU2LjI1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1Ni4yNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTE4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU2LjI1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDUzLjEyNSU7XG4gIH1cbiAgLm1lZGl1bS0xOSB7XG4gICAgd2lkdGg6IDU5LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTE5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTkuMzc1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTkuMzc1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDU2LjI1JTtcbiAgfVxuICAubWVkaXVtLTIwIHtcbiAgICB3aWR0aDogNjIuNSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTIwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjIuNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTIwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTYyLjUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTE5IHtcbiAgICBtYXJnaW4tbGVmdDogNTkuMzc1JTtcbiAgfVxuICAubWVkaXVtLTIxIHtcbiAgICB3aWR0aDogNjUuNjI1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMjEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2NS42MjUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0yMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02NS42MjUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIwIHtcbiAgICBtYXJnaW4tbGVmdDogNjIuNSU7XG4gIH1cbiAgLm1lZGl1bS0yMiB7XG4gICAgd2lkdGg6IDY4Ljc1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMjIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2OC43NSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTIyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY4Ljc1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0yMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDY1LjYyNSU7XG4gIH1cbiAgLm1lZGl1bS0yMyB7XG4gICAgd2lkdGg6IDcxLjg3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTIzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzEuODc1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMjMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzEuODc1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0yMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDY4Ljc1JTtcbiAgfVxuICAubWVkaXVtLTI0IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0yNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMjQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIzIHtcbiAgICBtYXJnaW4tbGVmdDogNzEuODc1JTtcbiAgfVxuICAubWVkaXVtLTI1IHtcbiAgICB3aWR0aDogNzguMTI1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMjUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3OC4xMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0yNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03OC4xMjUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTI0IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5tZWRpdW0tMjYge1xuICAgIHdpZHRoOiA4MS4yNSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTI2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODEuMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0yNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04MS4yNSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMjUge1xuICAgIG1hcmdpbi1sZWZ0OiA3OC4xMjUlO1xuICB9XG4gIC5tZWRpdW0tMjcge1xuICAgIHdpZHRoOiA4NC4zNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0yNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDg0LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTI3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTg0LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMjYge1xuICAgIG1hcmdpbi1sZWZ0OiA4MS4yNSU7XG4gIH1cbiAgLm1lZGl1bS0yOCB7XG4gICAgd2lkdGg6IDg3LjUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0yOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDg3LjUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0yOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04Ny41JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0yNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDg0LjM3NSU7XG4gIH1cbiAgLm1lZGl1bS0yOSB7XG4gICAgd2lkdGg6IDkwLjYyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTI5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTAuNjI1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMjkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTAuNjI1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0yOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDg3LjUlO1xuICB9XG4gIC5tZWRpdW0tMzAge1xuICAgIHdpZHRoOiA5My43NSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTMwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTMuNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0zMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05My43NSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMjkge1xuICAgIG1hcmdpbi1sZWZ0OiA5MC42MjUlO1xuICB9XG4gIC5tZWRpdW0tMzEge1xuICAgIHdpZHRoOiA5Ni44NzUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0zMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDk2Ljg3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTMxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTk2Ljg3NSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMzAge1xuICAgIG1hcmdpbi1sZWZ0OiA5My43NSU7XG4gIH1cbiAgLm1lZGl1bS0zMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMzEge1xuICAgIG1hcmdpbi1sZWZ0OiA5Ni44NzUlO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uLCAubWVkaXVtLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uLCAubWVkaXVtLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uLCAubWVkaXVtLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5leHBhbmRlZC5yb3cgLm1lZGl1bS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yMTg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjE4NzVyZW07XG4gIH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIC5tZWRpdW0tY2VudGVyZWQsIC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkLFxuICAubWVkaXVtLXB1c2gtMCxcbiAgLm1lZGl1bS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1lZGl1bS0xIHtcbiAgICB3aWR0aDogMy4xMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMy4xMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMuMTI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0yIHtcbiAgICB3aWR0aDogNi4yNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2LjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02LjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMy4xMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDkuMzc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkuMzc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05LjM3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDYuMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTIuNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTIuNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDkuMzc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTUge1xuICAgIHdpZHRoOiAxNS42MjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTUuNjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNS42MjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMi41JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTYge1xuICAgIHdpZHRoOiAxOC43NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxOC43NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTguNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiAxNS42MjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDIxLjg3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyMS44NzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTIxLjg3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4Ljc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTgge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiAyMS44NzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDI4LjEyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyOC4xMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI4LjEyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTEwIHtcbiAgICB3aWR0aDogMzEuMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMxLjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzEuMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiAyOC4xMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tMTEge1xuICAgIHdpZHRoOiAzNC4zNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDM0LjM3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTM0LjM3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiAzMS4yNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDM3LjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDM3LjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zNy41JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDM0LjM3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0xMyB7XG4gICAgd2lkdGg6IDQwLjYyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTEzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDAuNjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDAuNjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDM3LjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tMTQge1xuICAgIHdpZHRoOiA0My43NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTE0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDMuNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC0xNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00My43NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMTMge1xuICAgIG1hcmdpbi1sZWZ0OiA0MC42MjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tMTUge1xuICAgIHdpZHRoOiA0Ni44NzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0xNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQ2Ljg3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTE1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQ2Ljg3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMTQge1xuICAgIG1hcmdpbi1sZWZ0OiA0My43NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0xNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1c2gtMTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTE2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0xNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQ2Ljg3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0xNyB7XG4gICAgd2lkdGg6IDUzLjEyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTE3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTMuMTI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTMuMTI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0xNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTE4IHtcbiAgICB3aWR0aDogNTYuMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0xOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU2LjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTYuMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTE3IHtcbiAgICBtYXJnaW4tbGVmdDogNTMuMTI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTE5IHtcbiAgICB3aWR0aDogNTkuMzc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1c2gtMTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC0xOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OS4zNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTE4IHtcbiAgICBtYXJnaW4tbGVmdDogNTYuMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tMjAge1xuICAgIHdpZHRoOiA2Mi41JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1c2gtMjAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Mi41JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMjAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjIuNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMTkge1xuICAgIG1hcmdpbi1sZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tMjEge1xuICAgIHdpZHRoOiA2NS42MjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0yMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY1LjYyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTIxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY1LjYyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMjAge1xuICAgIG1hcmdpbi1sZWZ0OiA2Mi41JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTIyIHtcbiAgICB3aWR0aDogNjguNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0yMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY4Ljc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMjIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjguNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTIxIHtcbiAgICBtYXJnaW4tbGVmdDogNjUuNjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTIzIHtcbiAgICB3aWR0aDogNzEuODc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1c2gtMjMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3MS44NzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC0yMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03MS44NzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTIyIHtcbiAgICBtYXJnaW4tbGVmdDogNjguNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tMjQge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTI0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC0yNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMjMge1xuICAgIG1hcmdpbi1sZWZ0OiA3MS44NzUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tMjUge1xuICAgIHdpZHRoOiA3OC4xMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0yNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTI1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc4LjEyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1vZmZzZXQtMjQge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0yNiB7XG4gICAgd2lkdGg6IDgxLjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1c2gtMjYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4MS4yNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTI2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgxLjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0yNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0yNyB7XG4gICAgd2lkdGg6IDg0LjM3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTI3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODQuMzc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMjcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODQuMzc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0yNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDgxLjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTI4IHtcbiAgICB3aWR0aDogODcuNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTI4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODcuNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTI4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTg3LjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTI3IHtcbiAgICBtYXJnaW4tbGVmdDogODQuMzc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTI5IHtcbiAgICB3aWR0aDogOTAuNjI1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1c2gtMjkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MC42MjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tcHVsbC0yOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MC42MjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tb2Zmc2V0LTI4IHtcbiAgICBtYXJnaW4tbGVmdDogODcuNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0zMCB7XG4gICAgd2lkdGg6IDkzLjc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1c2gtMzAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5My43NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdWxsLTMwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkzLjc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0yOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkwLjYyNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS0zMSB7XG4gICAgd2lkdGg6IDk2Ljg3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1wdXNoLTMxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTYuODc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMzEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTYuODc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0zMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDkzLjc1JTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLTMyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLW9mZnNldC0zMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDk2Ljg3NSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLW1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtbWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5sYXJnZS1tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS1tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtbWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS1tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS1tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtbWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS1tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS1tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtbWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5sYXJnZS1tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS1tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtbWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5sYXJnZS1tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS1tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtbWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS1tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS1tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtbWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5sYXJnZS1tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS1tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS1tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLmxhcmdlLW1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLW1lZGl1bS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmV4cGFuZGVkLnJvdyAubGFyZ2UtbWVkaXVtLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjIxODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4yMTg3NXJlbTtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS1jZW50ZXJlZCwgLmxhcmdlLW1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtbWVkaXVtLXVuY2VudGVyZWQsXG4gIC5sYXJnZS1tZWRpdW0tcHVzaC0wLFxuICAubGFyZ2UtbWVkaXVtLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuMjVlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDMuMTI1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMy4xMjUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMy4xMjUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC5sYXJnZS0yIHtcbiAgICB3aWR0aDogNi4yNSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDYuMjUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNi4yNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMy4xMjUlO1xuICB9XG4gIC5sYXJnZS0zIHtcbiAgICB3aWR0aDogOS4zNzUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5LjM3NSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05LjM3NSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogNi4yNSU7XG4gIH1cbiAgLmxhcmdlLTQge1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAubGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTIuNSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xMi41JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiA5LjM3NSU7XG4gIH1cbiAgLmxhcmdlLTUge1xuICAgIHdpZHRoOiAxNS42MjUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNS42MjUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTUuNjI1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMi41JTtcbiAgfVxuICAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDE4Ljc1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTguNzUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTguNzUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1LjYyNSU7XG4gIH1cbiAgLmxhcmdlLTcge1xuICAgIHdpZHRoOiAyMS44NzUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyMS44NzUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjEuODc1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiAxOC43NSU7XG4gIH1cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiAyMS44NzUlO1xuICB9XG4gIC5sYXJnZS05IHtcbiAgICB3aWR0aDogMjguMTI1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjguMTI1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI4LjEyNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDMxLjI1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMxLjI1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMS4yNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogMjguMTI1JTtcbiAgfVxuICAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiAzNC4zNzUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzQuMzc1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zNC4zNzUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiAzMS4yNSU7XG4gIH1cbiAgLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMzcuNSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzNy41JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zNy41JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogMzQuMzc1JTtcbiAgfVxuICAubGFyZ2UtMTMge1xuICAgIHdpZHRoOiA0MC42MjUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTEzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDAuNjI1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MC42MjUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAzNy41JTtcbiAgfVxuICAubGFyZ2UtMTQge1xuICAgIHdpZHRoOiA0My43NSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0My43NSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDMuNzUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTMge1xuICAgIG1hcmdpbi1sZWZ0OiA0MC42MjUlO1xuICB9XG4gIC5sYXJnZS0xNSB7XG4gICAgd2lkdGg6IDQ2Ljg3NSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0Ni44NzUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTE1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQ2Ljg3NSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDQzLjc1JTtcbiAgfVxuICAubGFyZ2UtMTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0Ni44NzUlO1xuICB9XG4gIC5sYXJnZS0xNyB7XG4gICAgd2lkdGg6IDUzLjEyNSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1My4xMjUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTE3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUzLjEyNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAubGFyZ2UtMTgge1xuICAgIHdpZHRoOiA1Ni4yNSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1Ni4yNSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTYuMjUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1My4xMjUlO1xuICB9XG4gIC5sYXJnZS0xOSB7XG4gICAgd2lkdGg6IDU5LjM3NSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTE5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU5LjM3NSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDU2LjI1JTtcbiAgfVxuICAubGFyZ2UtMjAge1xuICAgIHdpZHRoOiA2Mi41JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDYyLjUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTIwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTYyLjUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTkge1xuICAgIG1hcmdpbi1sZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC5sYXJnZS0yMSB7XG4gICAgd2lkdGg6IDY1LjYyNSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMjEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2NS42MjUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTIxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY1LjYyNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDYyLjUlO1xuICB9XG4gIC5sYXJnZS0yMiB7XG4gICAgd2lkdGg6IDY4Ljc1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY4Ljc1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0yMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02OC43NSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDY1LjYyNSU7XG4gIH1cbiAgLmxhcmdlLTIzIHtcbiAgICB3aWR0aDogNzEuODc1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDcxLjg3NSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMjMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzEuODc1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTIyIHtcbiAgICBtYXJnaW4tbGVmdDogNjguNzUlO1xuICB9XG4gIC5sYXJnZS0yNCB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0yNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDcxLjg3NSU7XG4gIH1cbiAgLmxhcmdlLTI1IHtcbiAgICB3aWR0aDogNzguMTI1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMjUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzguMTI1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTI0IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS0yNiB7XG4gICAgd2lkdGg6IDgxLjI1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgxLjI1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0yNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04MS4yNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLmxhcmdlLTI3IHtcbiAgICB3aWR0aDogODQuMzc1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDg0LjM3NSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMjcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODQuMzc1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTI2IHtcbiAgICBtYXJnaW4tbGVmdDogODEuMjUlO1xuICB9XG4gIC5sYXJnZS0yOCB7XG4gICAgd2lkdGg6IDg3LjUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTI4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODcuNSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMjgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODcuNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDg0LjM3NSU7XG4gIH1cbiAgLmxhcmdlLTI5IHtcbiAgICB3aWR0aDogOTAuNjI1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkwLjYyNSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMjkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTAuNjI1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTI4IHtcbiAgICBtYXJnaW4tbGVmdDogODcuNSU7XG4gIH1cbiAgLmxhcmdlLTMwIHtcbiAgICB3aWR0aDogOTMuNzUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTMwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTMuNzUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTMwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkzLjc1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTI5IHtcbiAgICBtYXJnaW4tbGVmdDogOTAuNjI1JTtcbiAgfVxuICAubGFyZ2UtMzEge1xuICAgIHdpZHRoOiA5Ni44NzUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTMxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTYuODc1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0zMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05Ni44NzUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMzAge1xuICAgIG1hcmdpbi1sZWZ0OiA5My43NSU7XG4gIH1cbiAgLmxhcmdlLTMyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTMxIHtcbiAgICBtYXJnaW4tbGVmdDogOTYuODc1JTtcbiAgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC5sYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbiwgLmxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElO1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAubGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5leHBhbmRlZC5yb3cgLmxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yMTg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjE4NzVyZW07XG4gIH1cbiAgLmxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLmxhcmdlLWNlbnRlcmVkLCAubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsXG4gIC5sYXJnZS1wdXNoLTAsXG4gIC5sYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogMy4xMjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMy4xMjUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMuMTI1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogNi4yNSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2LjI1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02LjI1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMy4xMjUlO1xuICB9XG4gIC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDkuMzc1JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkuMzc1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05LjM3NSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDYuMjUlO1xuICB9XG4gIC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTIuNSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTIuNSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDkuMzc1JTtcbiAgfVxuICAueGxhcmdlLTUge1xuICAgIHdpZHRoOiAxNS42MjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTUuNjI1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNS42MjUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMi41JTtcbiAgfVxuICAueGxhcmdlLTYge1xuICAgIHdpZHRoOiAxOC43NSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxOC43NSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTguNzUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiAxNS42MjUlO1xuICB9XG4gIC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDIxLjg3NSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyMS44NzUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTIxLjg3NSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4Ljc1JTtcbiAgfVxuICAueGxhcmdlLTgge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiAyMS44NzUlO1xuICB9XG4gIC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDI4LjEyNSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyOC4xMjUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI4LjEyNSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogMzEuMjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMxLjI1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzEuMjUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiAyOC4xMjUlO1xuICB9XG4gIC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiAzNC4zNzUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDM0LjM3NSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTM0LjM3NSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiAzMS4yNSU7XG4gIH1cbiAgLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDM3LjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDM3LjUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zNy41JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDM0LjM3NSU7XG4gIH1cbiAgLnhsYXJnZS0xMyB7XG4gICAgd2lkdGg6IDQwLjYyNSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTEzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDAuNjI1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDAuNjI1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDM3LjUlO1xuICB9XG4gIC54bGFyZ2UtMTQge1xuICAgIHdpZHRoOiA0My43NSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTE0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDMuNzUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0xNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00My43NSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMTMge1xuICAgIG1hcmdpbi1sZWZ0OiA0MC42MjUlO1xuICB9XG4gIC54bGFyZ2UtMTUge1xuICAgIHdpZHRoOiA0Ni44NzUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQ2Ljg3NSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTE1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQ2Ljg3NSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMTQge1xuICAgIG1hcmdpbi1sZWZ0OiA0My43NSU7XG4gIH1cbiAgLnhsYXJnZS0xNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTE2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQ2Ljg3NSU7XG4gIH1cbiAgLnhsYXJnZS0xNyB7XG4gICAgd2lkdGg6IDUzLjEyNSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTE3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTMuMTI1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTMuMTI1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAueGxhcmdlLTE4IHtcbiAgICB3aWR0aDogNTYuMjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU2LjI1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTYuMjUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTE3IHtcbiAgICBtYXJnaW4tbGVmdDogNTMuMTI1JTtcbiAgfVxuICAueGxhcmdlLTE5IHtcbiAgICB3aWR0aDogNTkuMzc1JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0xOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OS4zNzUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTE4IHtcbiAgICBtYXJnaW4tbGVmdDogNTYuMjUlO1xuICB9XG4gIC54bGFyZ2UtMjAge1xuICAgIHdpZHRoOiA2Mi41JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMjAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Mi41JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMjAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjIuNSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMTkge1xuICAgIG1hcmdpbi1sZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC54bGFyZ2UtMjEge1xuICAgIHdpZHRoOiA2NS42MjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0yMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY1LjYyNSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTIxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY1LjYyNSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMjAge1xuICAgIG1hcmdpbi1sZWZ0OiA2Mi41JTtcbiAgfVxuICAueGxhcmdlLTIyIHtcbiAgICB3aWR0aDogNjguNzUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0yMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY4Ljc1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMjIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjguNzUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIxIHtcbiAgICBtYXJnaW4tbGVmdDogNjUuNjI1JTtcbiAgfVxuICAueGxhcmdlLTIzIHtcbiAgICB3aWR0aDogNzEuODc1JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMjMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3MS44NzUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0yMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03MS44NzUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIyIHtcbiAgICBtYXJnaW4tbGVmdDogNjguNzUlO1xuICB9XG4gIC54bGFyZ2UtMjQge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTI0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0yNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMjMge1xuICAgIG1hcmdpbi1sZWZ0OiA3MS44NzUlO1xuICB9XG4gIC54bGFyZ2UtMjUge1xuICAgIHdpZHRoOiA3OC4xMjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0yNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTI1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc4LjEyNSU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMjQge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLnhsYXJnZS0yNiB7XG4gICAgd2lkdGg6IDgxLjI1JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMjYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4MS4yNSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTI2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgxLjI1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0yNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLnhsYXJnZS0yNyB7XG4gICAgd2lkdGg6IDg0LjM3NSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTI3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODQuMzc1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMjcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODQuMzc1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0yNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDgxLjI1JTtcbiAgfVxuICAueGxhcmdlLTI4IHtcbiAgICB3aWR0aDogODcuNSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTI4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODcuNSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTI4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTg3LjUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTI3IHtcbiAgICBtYXJnaW4tbGVmdDogODQuMzc1JTtcbiAgfVxuICAueGxhcmdlLTI5IHtcbiAgICB3aWR0aDogOTAuNjI1JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMjkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MC42MjUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0yOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MC42MjUlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTI4IHtcbiAgICBtYXJnaW4tbGVmdDogODcuNSU7XG4gIH1cbiAgLnhsYXJnZS0zMCB7XG4gICAgd2lkdGg6IDkzLjc1JTtcbiAgfVxuICAueGxhcmdlLXB1c2gtMzAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5My43NSU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTMwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkzLjc1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0yOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkwLjYyNSU7XG4gIH1cbiAgLnhsYXJnZS0zMSB7XG4gICAgd2lkdGg6IDk2Ljg3NSU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTMxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTYuODc1JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMzEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTYuODc1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0zMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDkzLjc1JTtcbiAgfVxuICAueGxhcmdlLTMyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0zMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDk2Ljg3NSU7XG4gIH1cbiAgLnhsYXJnZS11cC0xID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElO1xuICB9XG4gIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLnhsYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnhsYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLnhsYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLnhsYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmV4cGFuZGVkLnJvdyAueGxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC54bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjIxODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4yMTg3NXJlbTtcbiAgfVxuICAueGxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLnhsYXJnZS1jZW50ZXJlZCwgLnhsYXJnZS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVuY2VudGVyZWQsXG4gIC54bGFyZ2UtcHVzaC0wLFxuICAueGxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiAzLjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMy4xMjUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zLjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogNi4yNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNi4yNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTYuMjUlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMy4xMjUlO1xuICB9XG4gIC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiA5LjM3NSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOS4zNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05LjM3NSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiA2LjI1JTtcbiAgfVxuICAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTIuNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTEyLjUlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogOS4zNzUlO1xuICB9XG4gIC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiAxNS42MjUlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE1LjYyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE1LjYyNSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMi41JTtcbiAgfVxuICAueHhsYXJnZS02IHtcbiAgICB3aWR0aDogMTguNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE4Ljc1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTguNzUlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogMTUuNjI1JTtcbiAgfVxuICAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogMjEuODc1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyMS44NzUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yMS44NzUlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogMTguNzUlO1xuICB9XG4gIC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiAyMS44NzUlO1xuICB9XG4gIC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiAyOC4xMjUlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI4LjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI4LjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiAzMS4yNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMxLjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMxLjI1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDI4LjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMTEge1xuICAgIHdpZHRoOiAzNC4zNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzNC4zNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzQuMzc1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiAzMS4yNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAzNy41JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTEyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzcuNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zNy41JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiAzNC4zNzUlO1xuICB9XG4gIC54eGxhcmdlLTEzIHtcbiAgICB3aWR0aDogNDAuNjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTEzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDAuNjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTEzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQwLjYyNSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMzcuNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMTQge1xuICAgIHdpZHRoOiA0My43NSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0xNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQzLjc1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTE0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQzLjc1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMTMge1xuICAgIG1hcmdpbi1sZWZ0OiA0MC42MjUlO1xuICB9XG4gIC54eGxhcmdlLTE1IHtcbiAgICB3aWR0aDogNDYuODc1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTE1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDYuODc1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTE1IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQ2Ljg3NSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTE0IHtcbiAgICBtYXJnaW4tbGVmdDogNDMuNzUlO1xuICB9XG4gIC54eGxhcmdlLTE2IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtMTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0xNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTE1IHtcbiAgICBtYXJnaW4tbGVmdDogNDYuODc1JTtcbiAgfVxuICAueHhsYXJnZS0xNyB7XG4gICAgd2lkdGg6IDUzLjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0xNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUzLjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0xNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01My4xMjUlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0xNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAueHhsYXJnZS0xOCB7XG4gICAgd2lkdGg6IDU2LjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTE4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTYuMjUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTYuMjUlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0xNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDUzLjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMTkge1xuICAgIHdpZHRoOiA1OS4zNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtMTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTkuMzc1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMTgge1xuICAgIG1hcmdpbi1sZWZ0OiA1Ni4yNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMjAge1xuICAgIHdpZHRoOiA2Mi41JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTIwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjIuNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0yMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Mi41JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMTkge1xuICAgIG1hcmdpbi1sZWZ0OiA1OS4zNzUlO1xuICB9XG4gIC54eGxhcmdlLTIxIHtcbiAgICB3aWR0aDogNjUuNjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTIxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjUuNjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTIxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY1LjYyNSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIwIHtcbiAgICBtYXJnaW4tbGVmdDogNjIuNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMjIge1xuICAgIHdpZHRoOiA2OC43NSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0yMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY4Ljc1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTIyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY4Ljc1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMjEge1xuICAgIG1hcmdpbi1sZWZ0OiA2NS42MjUlO1xuICB9XG4gIC54eGxhcmdlLTIzIHtcbiAgICB3aWR0aDogNzEuODc1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTIzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzEuODc1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTIzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTcxLjg3NSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIyIHtcbiAgICBtYXJnaW4tbGVmdDogNjguNzUlO1xuICB9XG4gIC54eGxhcmdlLTI0IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtMjQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0yNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIzIHtcbiAgICBtYXJnaW4tbGVmdDogNzEuODc1JTtcbiAgfVxuICAueHhsYXJnZS0yNSB7XG4gICAgd2lkdGg6IDc4LjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0yNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0yNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03OC4xMjUlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0yNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAueHhsYXJnZS0yNiB7XG4gICAgd2lkdGg6IDgxLjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTI2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODEuMjUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMjYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODEuMjUlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0yNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc4LjEyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMjcge1xuICAgIHdpZHRoOiA4NC4zNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtMjcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4NC4zNzUlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMjcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODQuMzc1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMjYge1xuICAgIG1hcmdpbi1sZWZ0OiA4MS4yNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMjgge1xuICAgIHdpZHRoOiA4Ny41JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTI4IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODcuNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0yOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04Ny41JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMjcge1xuICAgIG1hcmdpbi1sZWZ0OiA4NC4zNzUlO1xuICB9XG4gIC54eGxhcmdlLTI5IHtcbiAgICB3aWR0aDogOTAuNjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTI5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTAuNjI1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTI5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkwLjYyNSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTI4IHtcbiAgICBtYXJnaW4tbGVmdDogODcuNSU7XG4gIH1cbiAgLnh4bGFyZ2UtMzAge1xuICAgIHdpZHRoOiA5My43NSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC0zMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkzLjc1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTMwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkzLjc1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMjkge1xuICAgIG1hcmdpbi1sZWZ0OiA5MC42MjUlO1xuICB9XG4gIC54eGxhcmdlLTMxIHtcbiAgICB3aWR0aDogOTYuODc1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTMxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTYuODc1JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTMxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTk2Ljg3NSU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTMwIHtcbiAgICBtYXJnaW4tbGVmdDogOTMuNzUlO1xuICB9XG4gIC54eGxhcmdlLTMyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMzEge1xuICAgIG1hcmdpbi1sZWZ0OiA5Ni44NzUlO1xuICB9XG4gIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uLCAueHhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAueHhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAueHhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS11cC03ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElO1xuICB9XG4gIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTggPiAuY29sdW1uLCAueHhsYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAueHhsYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAueHhsYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC54eGxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZXhwYW5kZWQucm93IC54eGxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAueHhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjE4NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjIxODc1cmVtO1xuICB9XG4gIC54eGxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLnh4bGFyZ2UtY2VudGVyZWQsIC54eGxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVuY2VudGVyZWQsXG4gIC54eGxhcmdlLXB1c2gtMCxcbiAgLnh4bGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uY29sdW1uLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG5cbi5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jb2x1bW4tYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNDM3NXJlbTtcbiAgfVxuICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBjb2xvcjogIzIzMWYyMDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuaDEgc21hbGwsXG5oMiBzbWFsbCxcbmgzIHNtYWxsLFxuaDQgc21hbGwsXG5oNSBzbWFsbCxcbmg2IHNtYWxsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGNvbG9yOiAjY2FjYWNhO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgfVxuICBoNSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIH1cbn1cblxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzEzQjVFQTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmE6aG92ZXIsIGE6Zm9jdXMge1xuICBjb2xvcjogIzEwOWNjOTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbmEgaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDcyLjI1cmVtO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMC45Mzc1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmRsIGR0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMS4yNXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTtcbn1cblxuYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjMjIyO1xufVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogIzIyMjtcbn1cblxuY2l0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAlCBcIjtcbn1cblxuYWJiciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzBhMGEwYTtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIGN1cnNvcjogaGVscDtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjMjIyO1xufVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbnAgKyAuc3RhdCB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xufVxuXG4ubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAubWVkaXVtLXNtYWxsLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5tZWRpdW0tc21hbGwtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubWVkaXVtLXNtYWxsLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLmxhcmdlLW1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5sYXJnZS1tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjI1ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC54bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLnhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC54bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAueHhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLnh4bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAueHhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50O1xuICB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzIyMjtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTtcbiAgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbn1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi4zNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JjYmNiYztcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYTtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMjMxZjIwO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cblt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzEwN2JiZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxudGV4dGFyZWFbcm93c10ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmlucHV0OjpwbGFjZWhvbGRlcixcbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYmNiY2JjO1xufVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5bdHlwZT0nc3VibWl0J10sXG5bdHlwZT0nYnV0dG9uJ10ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcblt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsW2Zvcl0sXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG5sYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICBjb2xvcjogIzIzMWYyMDtcbn1cblxubGFiZWwubWlkZGxlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDA7XG59XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCA+ICoge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwsIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG59XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLmZpZWxkc2V0IGxlZ2VuZCB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW07XG4gIHBhZGRpbmc6IDAgMCAwIDAuNzVyZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi4zNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JjYmNiYztcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYTtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMjMxZjIwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODM0LCAzNCwgMzQlMjknPjwvcG9seWdvbj48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgfVxufVxuXG5zZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTA3YmJmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5cbnNlbGVjdDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbnNlbGVjdFttdWx0aXBsZV0ge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmYzZjU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlY2VlO1xufVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmM2Y1Nztcbn1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2ZmM2Y1Nztcbn1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZmYzZjU3O1xufVxuXG4uZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC42cmVtIDFyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLnRpbnkge1xuICBmb250LXNpemU6IDAuNnJlbTtcbn1cblxuLmJ1dHRvbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLmJ1dHRvbi5sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmJ1dHRvbi5leHBhbmRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmJ1dHRvbi5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyNjE5NTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ1dHRvbi53YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uYWxlcnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYzZjU3O1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZTAwMjA7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLmhvbGxvdyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuXG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgY29sb3I6ICMwYzNkNWQ7XG59XG5cbi5idXR0b24uaG9sbG93LnByaW1hcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgY29sb3I6ICMwYzNkNWQ7XG59XG5cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgY29sb3I6ICMzYjNiM2I7XG59XG5cbi5idXR0b24uaG9sbG93LnN1Y2Nlc3Mge1xuICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICBjb2xvcjogIzNhZGI3Njtcbn1cblxuLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgY29sb3I6ICMxNTc1Mzk7XG59XG5cbi5idXR0b24uaG9sbG93Lndhcm5pbmcge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cblxuLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgY29sb3I6ICM4MDU3MDA7XG59XG5cbi5idXR0b24uaG9sbG93LmFsZXJ0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmM2Y1NztcbiAgY29sb3I6ICNmZjNmNTc7XG59XG5cbi5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzlmMDAxNDtcbiAgY29sb3I6ICM5ZjAwMTQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcyB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZyB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0IHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmM2Y1NztcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC40ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cblxuLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gIHRvcDogLTAuMWVtO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5hY2NvcmRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG5cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG5cbi5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBjb250ZW50OiAnKyc7XG59XG5cbi5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBjb250ZW50OiAn4oCTJztcbn1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMyMzFmMjA7XG59XG5cbjpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbn1cblxuLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbn1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDIuMWVtO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJhZGdlLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJhZGdlLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmFkZ2Uuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uYmFkZ2Uud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uYmFkZ2UuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjZmYzZjU3O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYnJlYWRjcnVtYnM6OmJlZm9yZSwgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG59XG5cbi5icmVhZGNydW1iczo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmJyZWFkY3J1bWJzIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBtYXJnaW46IDAgMC43NXJlbTtcbiAgb3BhY2l0eTogMTtcbiAgY29udGVudDogXCIvXCI7XG4gIGNvbG9yOiAjY2FjYWNhO1xufVxuXG4uYnJlYWRjcnVtYnMgYSB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuXG4uYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnJlYWRjcnVtYnMgLmRpc2FibGVkIHtcbiAgY29sb3I6ICNjYWNhY2E7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDA7XG59XG5cbi5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4uYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmJ1dHRvbi1ncm91cCAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5idXR0b24tZ3JvdXAudGlueSAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjZyZW07XG59XG5cbi5idXR0b24tZ3JvdXAuc21hbGwgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuXG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkOjpiZWZvcmUsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYyg1MCUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygyNSUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSkgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygyMCUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNikgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyNjE5NTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjNmNTc7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZTAwMjA7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuMjVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI5LjkzNzVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAycmVtIDFyZW0gMnJlbSAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6ICMyMzFmMjA7XG59XG5cbi5jYWxsb3V0ID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYWxsb3V0LnByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDdlY2ZhO1xuICBjb2xvcjogIzIzMWYyMDtcbn1cblxuLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgY29sb3I6ICMyMzFmMjA7XG59XG5cbi5jYWxsb3V0LnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFmYWVhO1xuICBjb2xvcjogIzIzMWYyMDtcbn1cblxuLmNhbGxvdXQud2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzZDk7XG4gIGNvbG9yOiAjMjMxZjIwO1xufVxuXG4uY2FsbG91dC5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmUyZTY7XG4gIGNvbG9yOiAjMjMxZjIwO1xufVxuXG4uY2FsbG91dC5zbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG5cbi5jYWxsb3V0LmxhcmdlIHtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDNyZW07XG59XG5cbi5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICMyMzFmMjA7XG59XG5cbi5jYXJkID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1kaXZpZGVyIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cblxuLmNhcmQtZGl2aWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5jYXJkLXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjMjIyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuY2xvc2UtYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uY2xvc2UtYnV0dG9uLnNtYWxsIHtcbiAgcmlnaHQ6IDAuNjZyZW07XG4gIHRvcDogMC4zM2VtO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNsb3NlLWJ1dHRvbiwgLmNsb3NlLWJ1dHRvbi5tZWRpdW0ge1xuICByaWdodDogMXJlbTtcbiAgdG9wOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLm1lbnUge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLm1lbnUgPiBsaSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSA+IGxpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm1lbnUgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubWVudSBpbnB1dCxcbi5tZW51IHNlbGVjdCxcbi5tZW51IGEsXG4ubWVudSBidXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubWVudSA+IGxpID4gYSBpbWcsXG4ubWVudSA+IGxpID4gYSBpLFxuLm1lbnUgPiBsaSA+IGEgc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lbnUgPiBsaSA+IGEgaW1nICsgc3Bhbixcbi5tZW51ID4gbGkgPiBhIGkgKyBzcGFuLFxuLm1lbnUgPiBsaSA+IGEgc3ZnICsgc3BhbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZW51ID4gbGkgPiBhIGltZyxcbi5tZW51ID4gbGkgPiBhIGksXG4ubWVudSA+IGxpID4gYSBzdmcge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1lbnUgPiBsaSwgLm1lbnUuaG9yaXpvbnRhbCA+IGxpIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLm1lbnUuZXhwYW5kZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG5cbi5tZW51LmV4cGFuZGVkID4gbGk6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubWVudS52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5tZW51Lm1lZGl1bS1zbWFsbC1ob3Jpem9udGFsID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXNtYWxsLWV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1zbWFsbC1leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1zbWFsbC12ZXJ0aWNhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1leHBhbmRlZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgfVxuICAubWVudS5tZWRpdW0tZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVudS5sYXJnZS1tZWRpdW0taG9yaXpvbnRhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB9XG4gIC5tZW51LmxhcmdlLW1lZGl1bS1leHBhbmRlZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgfVxuICAubWVudS5sYXJnZS1tZWRpdW0tZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS5sYXJnZS1tZWRpdW0tdmVydGljYWwgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuMjVlbSkge1xuICAubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbiAgLm1lbnUueGxhcmdlLWV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB9XG4gIC5tZW51LnhsYXJnZS1leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbiAgLm1lbnUueHhsYXJnZS1leHBhbmRlZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgfVxuICAubWVudS54eGxhcmdlLWV4cGFuZGVkID4gbGk6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ubWVudS5zaW1wbGUgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5tZW51LnNpbXBsZSBhIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1lbnUuYWxpZ24tcmlnaHQ6OmJlZm9yZSwgLm1lbnUuYWxpZ24tcmlnaHQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLm1lbnUuYWxpZ24tcmlnaHQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5tZW51LmFsaWduLXJpZ2h0ID4gbGkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5tZW51Lmljb24tdG9wID4gbGkgPiBhIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWVudS5pY29uLXRvcCA+IGxpID4gYSBpbWcsXG4ubWVudS5pY29uLXRvcCA+IGxpID4gYSBpLFxuLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDAuMjVyZW07XG59XG5cbi5tZW51Lmljb24tdG9wLnZlcnRpY2FsIGEgPiBzcGFuIHtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4ubWVudS5uZXN0ZWQge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cblxuLm1lbnUgLmFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm1lbnUubWVudS1ib3JkZXJlZCBsaSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbi5tZW51Lm1lbnUtYm9yZGVyZWQgbGk6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4ubWVudS5tZW51LWhvdmVyIGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbn1cblxuLm1lbnUtdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5tZW51LWNlbnRlcmVkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubWVudS1pY29uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDdweCAwICNmZmYsIDAgMTRweCAwICNmZmY7XG4gIGNvbnRlbnQ6ICcnO1xufVxuXG4ubWVudS1pY29uOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgI2NhY2FjYSwgMCAxNHB4IDAgI2NhY2FjYTtcbn1cblxuLm1lbnUtaWNvbi5kYXJrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBib3gtc2hhZG93OiAwIDdweCAwICMwYTBhMGEsIDAgMTRweCAwICMwYTBhMGE7XG4gIGNvbnRlbnQ6ICcnO1xufVxuXG4ubWVudS1pY29uLmRhcms6aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzIyMjtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjMjIyLCAwIDE0cHggMCAjMjIyO1xufVxuXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtZHJpbGxkb3duIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pcy1kcmlsbGRvd24uYW5pbWF0ZS1oZWlnaHQge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbn1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbn1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG4uaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC02cHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuXG4uanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuXG4uZHJvcGRvd24tcGFuZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzAwcHg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uZHJvcGRvd24tcGFuZS5pcy1vcGVuIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMxM0I1RUEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiA1cHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24ubWVudSBhIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG59XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xufVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxM0I1RUEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxM0I1RUE7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1zbWFsbC1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tc21hbGwtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1zbWFsbC1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1zbWFsbC1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTNCNUVBIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tc21hbGwtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1zbWFsbC12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tc21hbGwtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1zbWFsbC12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1zbWFsbC12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTNCNUVBIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1zbWFsbC12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzEzQjVFQTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzEzQjVFQSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzEzQjVFQSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxM0I1RUE7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtbWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzEzQjVFQSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtbWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtbWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzEzQjVFQSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxM0I1RUE7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuMjVlbSkge1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTNCNUVBIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzEzQjVFQSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzEzQjVFQTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTNCNUVBIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTNCNUVBIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzEzQjVFQTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTNCNUVBIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxM0I1RUEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzEzQjVFQTtcbiAgfVxufVxuXG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTZweDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxM0I1RUEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzEzQjVFQTtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucmVzcG9uc2l2ZS1lbWJlZCwgLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lLFxuLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4ucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbywgLmZsZXgtdmlkZW8gaWZyYW1lLFxuLmZsZXgtdmlkZW8gb2JqZWN0LFxuLmZsZXgtdmlkZW8gZW1iZWQsXG4uZmxleC12aWRlbyB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuLCAuZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubGFiZWwucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubGFiZWwuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5sYWJlbC5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5sYWJlbC53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5sYWJlbC5hbGVydCB7XG4gIGJhY2tncm91bmQ6ICNmZjNmNTc7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5tZWRpYS1vYmplY3QgaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyOS45Mzc1ZW0pIHtcbiAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ubWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uLmJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLCB2aXNpYmlsaXR5IDAuNXMgZWFzZTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuXG4ub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ucG9zaXRpb24tbGVmdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ucG9zaXRpb24tbGVmdC5pcy1vcGVuIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDFweDtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4ucG9zaXRpb24tcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMjUwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLnBvc2l0aW9uLXJpZ2h0LmlzLW9wZW4gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2g6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDFweDtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4ucG9zaXRpb24tdG9wLmlzLW9wZW4gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLXB1c2g6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4ucG9zaXRpb24tYm90dG9tLmlzLW9wZW4gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1wdXNoOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bS1zbWFsbCB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0tc21hbGwgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtLXNtYWxsIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0tc21hbGwgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0tc21hbGwge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0tc21hbGwgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtLXNtYWxsIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtLXNtYWxsIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZS1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UtbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UtbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UtbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UtbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjI1ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXh4bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbn1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5vcmJpdC1zbGlkZS5uby1tb3Rpb251aS5pcy1hY3RpdmUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5vcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5vcmJpdC1wcmV2aW91cywgLm9yYml0LW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1wcmV2aW91cywgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1uZXh0IHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9yYml0LXByZXZpb3VzOmhvdmVyLCAub3JiaXQtbmV4dDpob3ZlciwgLm9yYml0LXByZXZpb3VzOmFjdGl2ZSwgLm9yYml0LW5leHQ6YWN0aXZlLCAub3JiaXQtcHJldmlvdXM6Zm9jdXMsIC5vcmJpdC1uZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpO1xufVxuXG4ub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiAwO1xufVxuXG4ub3JiaXQtbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1idWxsZXRzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgd2lkdGg6IDEuMnJlbTtcbiAgaGVpZ2h0OiAxLjJyZW07XG4gIG1hcmdpbjogMC4xcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG59XG5cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG59XG5cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4ucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnBhZ2luYXRpb24gbGkge1xuICBtYXJnaW4tcmlnaHQ6IDAuMDYyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLnBhZ2luYXRpb24gYSxcbi5wYWdpbmF0aW9uIGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ucGFnaW5hdGlvbiBhOmhvdmVyLFxuLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cblxuLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZCB7XG4gIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgY29sb3I6ICNjYWNhY2E7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4ucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGFiJztcbn1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGJiJztcbn1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xufVxuXG4ucHJvZ3Jlc3MucHJpbWFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xufVxuXG4ucHJvZ3Jlc3Muc2Vjb25kYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG59XG5cbi5wcm9ncmVzcy5zdWNjZXNzIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG59XG5cbi5wcm9ncmVzcy53YXJuaW5nIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG59XG5cbi5wcm9ncmVzcy5hbGVydCAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYzZjU3O1xufVxuXG4ucHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbn1cblxuLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZmY7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5zbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uc2xpZGVyLWZpbGwuaXMtZHJhZ2dpbmcge1xuICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xufVxuXG4uc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjRyZW07XG4gIGhlaWdodDogMS40cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuc2xpZGVyLWhhbmRsZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5zbGlkZXItaGFuZGxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0Njc5ZTtcbn1cblxuLnNsaWRlci1oYW5kbGUuaXMtZHJhZ2dpbmcge1xuICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xufVxuXG4uc2xpZGVyLmRpc2FibGVkLFxuLnNsaWRlcltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uc2xpZGVyLnZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcbn1cblxuLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWZpbGwge1xuICB0b3A6IDA7XG4gIHdpZHRoOiAwLjVyZW07XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbi5zbGlkZXIudmVydGljYWwgLnNsaWRlci1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTtcbn1cblxuLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICB0b3A6IDA7XG59XG5cbi5zdGlja3kuaXMtc3R1Y2suaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xufVxuXG4uc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogYXV0bztcbn1cblxuLnN0aWNreS5pcy1hbmNob3JlZC5pcy1hdC1ib3R0b20ge1xuICBib3R0b206IDA7XG59XG5cbmJvZHkuaXMtcmV2ZWFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5odG1sLmlzLXJldmVhbC1vcGVuLFxuaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuODUpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi5yZXZlYWwge1xuICB6LWluZGV4OiAxMDA2O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDQwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICBvdXRsaW5lOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG59XG5cbi5yZXZlYWwgLmNvbHVtbiwgLnJldmVhbCAuY29sdW1ucyxcbi5yZXZlYWwgLmNvbHVtbnMge1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwge1xuICAgIHdpZHRoOiA4NjVweDtcbiAgICBtYXgtd2lkdGg6IDcyLjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwgLnJldmVhbCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4ucmV2ZWFsLmNvbGxhcHNlIHtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC50aW55IHtcbiAgICB3aWR0aDogMzAlO1xuICAgIG1heC13aWR0aDogNzIuMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC5zbWFsbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDcyLjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwubGFyZ2Uge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWF4LXdpZHRoOiA3Mi4yNXJlbTtcbiAgfVxufVxuXG4ucmV2ZWFsLmZ1bGwge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI5LjkzNzVlbSkge1xuICAucmV2ZWFsIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi5zd2l0Y2gge1xuICBoZWlnaHQ6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmZmO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnN3aXRjaC1wYWRkbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dCArIC5zd2l0Y2gtcGFkZGxlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogMC4yNXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gIGNvbnRlbnQ6ICcnO1xufVxuXG5pbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGUge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xufVxuXG5pbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMi4yNXJlbTtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGlucHV0OmZvY3VzIH4gLnN3aXRjaC1wYWRkbGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uc3dpdGNoLWFjdGl2ZSwgLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnN3aXRjaC1hY3RpdmUge1xuICBsZWZ0OiA4JTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIHJpZ2h0OiAxNSU7XG59XG5cbmlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3dpdGNoLnRpbnkge1xuICBoZWlnaHQ6IDEuNXJlbTtcbn1cblxuLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xufVxuXG4uc3dpdGNoLnRpbnkgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAwLjI1cmVtO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xufVxuXG4uc3dpdGNoLnRpbnkgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDEuNzVyZW07XG59XG5cbi5zd2l0Y2guc21hbGwge1xuICBoZWlnaHQ6IDEuNzVyZW07XG59XG5cbi5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGUge1xuICB3aWR0aDogMy41cmVtO1xuICBoZWlnaHQ6IDEuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLnN3aXRjaC5zbWFsbCAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IDAuMjVyZW07XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG59XG5cbi5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDJyZW07XG59XG5cbi5zd2l0Y2gubGFyZ2Uge1xuICBoZWlnaHQ6IDIuNXJlbTtcbn1cblxuLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZSB7XG4gIHdpZHRoOiA1cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uc3dpdGNoLmxhcmdlIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogMC4yNXJlbTtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbn1cblxuLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMi43NXJlbTtcbn1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxudGhlYWQsIHRib2R5LCB0Zm9vdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmMmYyZjI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgY29sb3I6ICMyMzFmMjA7XG59XG5cbnRmb290IHtcbiAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgY29sb3I6ICMyMzFmMjA7XG59XG5cbnRoZWFkIHRyLCB0Zm9vdCB0ciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG50aGVhZCB0aCwgdGhlYWQgdGQsIHRmb290IHRoLCB0Zm9vdCB0ZCB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGJvZHkgdGgsIHRib2R5IHRkIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xufVxuXG50Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xufVxuXG50YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG50YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjJmMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTM3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbnRhYmxlLnNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xufVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG59XG5cbnRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbn1cblxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcbn1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi50YWJsZS1zY3JvbGwgdGFibGUge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLnRhYnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi50YWJzLnZlcnRpY2FsID4gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwO1xufVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnRhYnMucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG59XG5cbi50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMxNjczYjE7XG59XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi50YWJzLXRpdGxlID4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG5cbi50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMTQ2OGEwO1xufVxuXG4udGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzE3NzliYTtcbn1cblxuLnRhYnMtY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMjMxZjIwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLnRhYnMtcGFuZWxbYXJpYS1oaWRkZW49XCJmYWxzZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogc29saWQgNHB4ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG59XG5cbmEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjMsIDEyMSwgMTg2LCAwLjUpO1xufVxuXG5hLnRodW1ibmFpbCBpbWFnZSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi50aXRsZS1iYXIge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4udGl0bGUtYmFyOjpiZWZvcmUsIC50aXRsZS1iYXI6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLnRpdGxlLWJhcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cblxuLnRpdGxlLWJhci1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi50aXRsZS1iYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGl0bGUtYmFyLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjMjIyO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuNjQ5NXJlbSk7XG4gIHotaW5kZXg6IDEyMDA7XG4gIG1heC13aWR0aDogMTByZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnRvb2x0aXA6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHRvcDogMTAwJTtcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4udG9vbHRpcC5sZWZ0OjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBhMGEwYTtcbiAgdG9wOiA1MCU7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4udG9vbHRpcC5yaWdodDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHRvcDogNTAlO1xuICByaWdodDogMTAwJTtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi50b3AtYmFyIHtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuXG4udG9wLWJhcjo6YmVmb3JlLCAudG9wLWJhcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4udG9wLWJhcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnRvcC1iYXIsXG4udG9wLWJhciB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG5cbi50b3AtYmFyIGlucHV0IHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4udG9wLWJhciAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4udG9wLWJhciBpbnB1dC5idXR0b24ge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtLXNtYWxsIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bS1zbWFsbCAudG9wLWJhci1yaWdodCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTM3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyLjE4NzVlbSkge1xuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZS1tZWRpdW0gLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UtbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MS4xODc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg3LjQzNzVlbSkge1xuICAudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteGxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udG9wLWJhci5zdGFja2VkLWZvci14eGxhcmdlIC50b3AtYmFyLWxlZnQsXG4udG9wLWJhci5zdGFja2VkLWZvci14eGxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XG59XG5cbi50b3AtYmFyLXRpdGxlIC5tZW51LWljb24ge1xuICBib3R0b206IDJweDtcbn1cblxuLnRvcC1iYXItbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udG9wLWJhci1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI5LjkzNzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tc21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyOS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1zbWFsbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA0OS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2UtbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDcyLjE4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2UtbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjI1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuMjVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3Mi4xODc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzIuMjVlbSkgYW5kIChtYXgtd2lkdGg6IDgxLjE4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyLjE4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgxLjE4NzVlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtYXgtd2lkdGg6IDg3LjQzNzVlbSkge1xuICAuaGlkZS1mb3IteGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MS4xODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmhpZGUtZm9yLXh4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4Ny40Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLXh4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmhpZGUtZm9yLXh4bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg3LjQzNzVlbSkge1xuICAuc2hvdy1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG59XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uY2xlYXJmaXg6OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG59XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLyogTWFpbiBTdHlsZSBTaGVldFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTMwMC13ZWJmb250LmVvdFwiKSwgdXJsKFwiLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTMwMC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC0zMDAtd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC0zMDAtd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC0zMDAtd2ViZm9udC5zdmcjbXVzZW9fc2Fuc19yb3VuZGVkXzMwMHJlZ3VsYXJcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQuZW90XCIpLCB1cmwoXCIuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTUwMC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTUwMC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTUwMC13ZWJmb250LnN2ZyNtdXNlb19zYW5zX3JvdW5kZWRfNTAwcmVndWxhclwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJDQkFTbGFiXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1SZWd1bGFyLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLVJlZ3VsYXIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksIHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkNCQVNsYWJcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLUJvbGQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItQm9sZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSwgdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJDQkFTbGFiXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1FeHRyYUJvbGQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItRXh0cmFCb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLUV4dHJhQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1FeHRyYUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLUV4dHJhQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJDQkFTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ0JBU2Fuc1dlYi1MaWdodC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ0JBU2Fuc1dlYi1MaWdodC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSwgdXJsKFwiLi4vZm9udHMvQ0JBU2Fuc1dlYi1MaWdodC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQ0JBU2Fuc1dlYi1MaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItTGlnaHQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiQ0JBU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItQm9sZC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ0JBU2Fuc1dlYi1Cb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIuLi9mb250cy9DQkFTYW5zV2ViLUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJpY29tb29uLWxlZ29cIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24udHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpYy1OZXVlXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1SZWd1bGFyLmVvdD8jaWVmaXhcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1SZWd1bGFyLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIuLi9mb250cy9IZWx2ZXRpYy1OZXVlLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljLU5ldWVcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9IZWx2ZXRpYy1OZXVlLUJvbGQuZW90PyNpZWZpeFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9IZWx2ZXRpYy1OZXVlLUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWMtTmV1ZVwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtRXh0cmFCb2xkLmVvdD8jaWVmaXhcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1FeHRyYUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtRXh0cmFCb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9IZWx2ZXRpYy1OZXVlLUV4dHJhQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtRXh0cmFCb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxubGVnZW5kLCBsYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSwgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMTI1cHg7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIHRleHQtaW5kZW50OiAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmNiY2JjO1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMDYyNXJlbTtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgdXJsKFwiLi4vaW1hZ2VzL2J1dHRvbnMvcmFkaW8uc3ZnXCIpIG5vLXJlcGVhdCA3cHggN3B4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucHJpbWFyeS1hY3Rpb24sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLCBbdHlwZT0nYnV0dG9uJ10sXG5idXR0b24sIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHBhZGRpbmc6IDAuNnJlbSAxcmVtO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzEzQjVFQTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xufVxuXG4vKiBEZWZhdWx0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogLS0tIEJsb2NrIEVsZW1lbnRzIC0tLSAqL1xuaHRtbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtaW4td2lkdGg6IDMyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICBib2R5IHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgcHJpbnQgbWVkaWEgKi9cbiAgICBtaW4td2lkdGg6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbiAgfVxufVxuXG4vKiAtLS0gVGV4dCBFbGVtZW50cyAtLS0gKi9cbmEge1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLyogLS0tIEhlYWRlciBUZXh0IC0tLSAqL1xuaDEge1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICBoMSB7XG4gICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5oMiB7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAyMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuaDIgYSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIGgyIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgcHJpbnQgbWVkaWEgKi9cbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbmgzIHtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwIDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIGgzIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgcHJpbnQgbWVkaWEgKi9cbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbnN0cm9uZyB7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4vKiAtLS0gTGlzdCBJdGVtcyAtLS0gKi9cbnVsIGxpIHtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbn1cblxub2wgbGkge1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xufVxuXG4vKiAtLS0gVGFibGUgIEVsZW1lbnRzIC0tLSAqL1xudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG50ZCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi8qIC0tLSBGb3JtL0lucHV0cyAtLS0gKi9cbmxlZ2VuZCB7XG4gIGNvbG9yOiAjMjMxZjIwO1xufVxuXG5sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxubGFiZWwuZXJyb3IsIGxhYmVsLmVycm9yMiwgbGFiZWwuZGF0ZUVycm9yIHtcbiAgbWFyZ2luOiAtMTBweCAwIDEwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogI0ZEMEUzNTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuaW5wdXRbdHlwZT1lbWFpbF06Oi1tcy1jbGVhcixcbmlucHV0W3R5cGU9dGV4dF06Oi1tcy1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5lcnJvci1pbWFnZSB7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG5cbi8qIFN1Ym1pdCAqL1xuaW5wdXRbdHlwZT1cImVtYWlsXCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJlbWFpbFwiXTphY3RpdmUsXG5pbnB1dFt0eXBlPVwidGV4dFwiXTpob3ZlcixcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInRleHRcIl06YWN0aXZlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzEwN2JiZjtcbn1cblxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLmZvY3VzTGV2ZWwsXG5pbnB1dFt0eXBlPVwidGV4dFwiXS5mb2N1c0xldmVsIHtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmFjdGl2ZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMDdiYmY7XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgcGFkZGluZzogMDtcbn1cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTpob3ZlciwgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cywgaW5wdXRbdHlwZT1cIm51bWJlclwiXTphY3RpdmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTA3YmJmO1xufVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6aG92ZXIsIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmZvY3VzLCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDphY3RpdmUge1xuICBib3JkZXItY29sb3I6ICMxMDdiYmY7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgdXJsKFwiLi4vaW1hZ2VzL2J1dHRvbnMvcmFkaW8tb24ucG5nXCIpIG5vLXJlcGVhdCA3cHggN3B4O1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXIsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmZvY3VzLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDphY3RpdmUge1xuICBib3JkZXItY29sb3I6ICMxMDdiYmY7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQ0RDREM7XG59XG5cbi5wcmltYXJ5LWFjdGlvbjpob3ZlciwgLnByaW1hcnktYWN0aW9uOmZvY3VzLCAucHJpbWFyeS1hY3Rpb246YWN0aXZlLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5wcmltYXJ5LWFjdGlvbjpmb2N1cyxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAucHJpbWFyeS1hY3Rpb24sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuW3R5cGU9J2J1dHRvbiddOmhvdmVyLCBbdHlwZT0nYnV0dG9uJ106Zm9jdXMsIFt0eXBlPSdidXR0b24nXTphY3RpdmUsXG5idXR0b246aG92ZXIsXG5idXR0b246Zm9jdXMsXG5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbn1cblxuW3R5cGU9J2J1dHRvbiddOmZvY3VzLFxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgW3R5cGU9J2J1dHRvbiddLFxuICBidXR0b24ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXVtkaXNhYmxlZF06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlciwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpmb2N1cywgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTphY3RpdmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJidXR0b25cIl06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdW2Rpc2FibGVkXTpob3ZlciwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXVtkaXNhYmxlZF06Zm9jdXMsIGlucHV0W3R5cGU9XCJidXR0b25cIl1bZGlzYWJsZWRdOmFjdGl2ZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXVtkaXNhYmxlZF06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4vKiBTZWxlY3QgKi9cbnNlbGVjdCB7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGIHVybChcIi4uL2ltYWdlcy9pY29ucy9zZWxlY3QtYXJyb3cuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1pbmRlbnQ6IDAuMDAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuc2VsZWN0OmhvdmVyLCBzZWxlY3Q6Zm9jdXMsIHNlbGVjdDphY3RpdmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTA3YmJmO1xufVxuXG5zZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8qIEVycm9yL1ZhbGlkYXRpb24gKi9cbi5lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogI0ZEMEUzNTtcbiAgY29sb3I6ICNGRDBFMzU7XG59XG5cbi5lcnJvciBoMiB7XG4gIGNvbG9yOiAjRkQwRTM1O1xufVxuXG5pbnB1dC5lcnJvcixcbnNlbGVjdC5lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogI0ZEMEUzNTtcbiAgY29sb3I6ICMyMzFmMjA7XG59XG5cbi5lcnJvcjIge1xuICBib3JkZXItY29sb3I6ICNGRDBFMzU7XG59XG5cbi5lcnJvcjIgaDIge1xuICBjb2xvcjogI0ZEMEUzNTtcbn1cblxuLmRydXBhbC1tZXNzYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5mb3JtLWl0ZW0tLWVycm9yLW1lc3NhZ2Ugc3Ryb25nIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAuOHJlbTtcbiAgY29sb3I6ICNGRDBFMzU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLyogRW5kIERlZmF1bHRzICovXG4vKiBDb250YWluZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNvdXRlci1jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyLjE4NzVlbSkge1xuICAjb3V0ZXItY29udGFpbmVyIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbGFyZ2UtbWVkaXVtIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICBwYWRkaW5nOiAwIDE2cHg7XG4gIH1cbn1cblxuI2NvbnRlbnQge1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2NvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cblxuLyogRW5kIENvbnRhaW5lciAqL1xuLyogQXJ0aWNsZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuc2VjdGlvbi5ib2R5LWNvbnRlbnQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgc2VjdGlvbi5ib2R5LWNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB9XG59XG5cbnNlY3Rpb24uYm9keS1jb250ZW50ICNhcnRpY2xlLWJvZHkge1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIHNlY3Rpb24uYm9keS1jb250ZW50ICNhcnRpY2xlLWJvZHkgaDEge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuc2VjdGlvbi5ib2R5LWNvbnRlbnQgI2FydGljbGUtYm9keSBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbnNlY3Rpb24uYm9keS1jb250ZW50ICNhcnRpY2xlLWJvZHkgaDMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG5zZWN0aW9uLmJvZHktY29udGVudCAjYXJ0aWNsZS1ib2R5IGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuc2VjdGlvbi5ib2R5LWNvbnRlbnQgI2FydGljbGUtYm9keSBoNSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbnNlY3Rpb24uYm9keS1jb250ZW50ICNhcnRpY2xlLWJvZHkgdGFibGUgdGgsXG5zZWN0aW9uLmJvZHktY29udGVudCAjYXJ0aWNsZS1ib2R5IHRhYmxlIHRkIHtcbiAgcGFkZGluZzogNXB4IDEwcHggNXB4IDA7XG59XG5cbnNlY3Rpb24uYm9keS1jb250ZW50ICNhcnRpY2xlLWJvZHkgYnV0dG9uIHtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xufVxuXG5zZWN0aW9uLmJvZHktY29udGVudCAjYXJ0aWNsZS1ib2R5IGJ1dHRvbjpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMDdiYmY7XG59XG5cbnNlY3Rpb24gLmluYm91bmQtbWVzc2FnZSxcbnNlY3Rpb24gLmVycm9yLW1lc3NhZ2Uge1xuICBtYXJnaW46IDEyMHB4IGF1dG87XG59XG5cbnNlY3Rpb24gLmluYm91bmQtbWVzc2FnZSBoMSxcbnNlY3Rpb24gLmVycm9yLW1lc3NhZ2UgaDEge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDIuNXJlbTtcbn1cblxuc2VjdGlvbiAuaW5ib3VuZC1tZXNzYWdlIHAsXG5zZWN0aW9uIC5lcnJvci1tZXNzYWdlIHAge1xuICBtYXgtd2lkdGg6IDQ1NnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuc2VjdGlvbiBoMiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzIzMWYyMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLyogRW5kIEFydGljbGUgKi9cbi8qIEZvcm1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucHVyY2hhc2UtbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucHVyY2hhc2UtbGlzdCA+IGxpIHtcbiAgcGFkZGluZzogMCAyMHB4IDVweCAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnB1cmNoYXNlLWxpc3QgPiBsaSB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICBwYWRkaW5nOiAwIDAgNXB4IDA7XG4gIH1cbn1cblxuLnB1cmNoYXNlLWxpc3QgPiBsaS5zdGFydCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnB1cmNoYXNlLWxpc3QgPiBsaS5lbmQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ucHVyY2hhc2UtbGlzdCBwIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4vKiBSYWRpby9DaGVja2JveCBjb250YWluZXJzICovXG4ucmFkaW8tbGlzdCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5yYWRpby1saXN0IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDIwcHggMCAwO1xufVxuXG4ucmFkaW8tbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnJhZGlvLWxpc3QgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtaW5kZW50OiAtMjBweDtcbn1cblxuLmNoZWNrTGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmNoZWNrTGlzdCBsaSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jaGVja0xpc3QgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwge1xuICBtaW4taGVpZ2h0OiAwO1xufVxuXG4uY2hlY2tMaXN0IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuaW5wdXQuZG9iIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGIHVybChcIi4uL2ltYWdlcy9pY29ucy9zZWxlY3QtYXJyb3cuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMjBweCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTBweCA2cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4vKiBFbmQgRm9ybXMgKi9cbi8qIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI2hlYWRlciB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRENEQ0RDO1xufVxuXG4jYnctc3ViLW5hdiB7XG4gIGJhY2tncm91bmQ6ICMwMDU1OTY7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2J3LXN1Yi1uYXYge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cblxuI2J3LXN1Yi1uYXYgbmF2ID4gLmNvbHVtbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjYnctc3ViLW5hdiBuYXYgPiAuY29sdW1ucyB7XG4gICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgfVxufVxuXG4jYnctc3ViLW5hdiBhLFxuI2J3LXN1Yi1uYXYgLmRpdmlkZXIge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4jYnctc3ViLW5hdiAuZGl2aWRlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNidy1zdWItbmF2IC5kaXZpZGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgfVxufVxuXG4jYnctc3ViLW5hdiBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2J3LXN1Yi1uYXYgYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbn1cblxuI2J3LXN1Yi1uYXYgYTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA4MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNpdGUtaGVhZGVyIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICBoZWlnaHQ6IDU1cHg7XG4gICAgcGFkZGluZzogMCAwIDAgMTZweDtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXIgLnNpdGUtbG9nbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW46IDIzcHggMThweCAxOHB4IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2l0ZS1oZWFkZXIgLnNpdGUtbG9nbyB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgbWFyZ2luOiA3cHggMTBweCAwIDA7XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyIC5zaXRlLWxvZ28gaW1nIHtcbiAgd2lkdGg6IGluaGVyaXQ7XG4gIGhlaWdodDogaW5oZXJpdDtcbn1cblxuLnNpdGUtaGVhZGVyIC5jbG9zZS1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2J1dHRvbnMvY2xvc2Uuc3ZnXCIpIG5vLXJlcGVhdCAtNnB4IC02cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMzJweCAzMnB4O1xuICB0ZXh0LWluZGVudDogLTEwMDBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zaXRlLWhlYWRlciAuY2xvc2UtbGluayB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgbWFyZ2luLXRvcDogMThweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLnNpdGUtaGVhZGVyIC5jbG9zZS1saW5rIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgcHJpbnQgbWVkaWEgKi9cbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qIEVuZCBIZWFkZXJzICovXG4vKiBGb290ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmZvb3RlciAuc2l0ZS1mb290ZXIge1xuICBtaW4taGVpZ2h0OiAxMjVweDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTM3NWVtKSB7XG4gIGZvb3RlciAuc2l0ZS1mb290ZXIge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgcGFkZGluZzogMCAyMHB4O1xuICB9XG59XG5cbmZvb3RlciAuc2l0ZS1mb290ZXIgLmNtLWxvZ28tZm9vdGVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXgtd2lkdGg6IDEwMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45Mzc1ZW0pIHtcbiAgZm9vdGVyIC5zaXRlLWZvb3RlciAuY20tbG9nby1mb290ZXIge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuZm9vdGVyIC5zaXRlLWZvb3RlciBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuZm9vdGVyIC5zaXRlLWZvb3RlciBwLmNvcHlyaWdodCBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG5mb290ZXIgLnNpdGUtZm9vdGVyIHAuY29weXJpZ2h0IGEgKyBhOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogXCJ8XCI7XG4gIG1hcmdpbjogMCAxMHB4O1xuICBjb2xvcjogIzIzMWYyMDtcbn1cblxuLyogRW5kIEZvb3RlciAqL1xuLyogVHJpcCBBZHZpc29yeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI3RyYXZlbC1hZHZpc29yeSB7XG4gIHBhZGRpbmc6IDE1cHggMTVweCAxNXB4IDEwMHB4O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZDogI2QzNDY0NiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvdHJhdmVsLWFkdmlzb3J5LnBuZ1wiKSBuby1yZXBlYXQgODBweCAxOHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDRweCAxNHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI3RyYXZlbC1hZHZpc29yeSB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1sYXJnZSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHBhZGRpbmc6IDcwcHggMzBweCAyMHB4IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy90cmF2ZWwtYWR2aXNvcnktbW9iaWxlLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMjBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDM3cHggMzNweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI3RyYXZlbC1hZHZpc29yeSBzdHJvbmcge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tbGFyZ2Ugc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cblxuI3RyYXZlbC1hZHZpc29yeSArIC5wb2xpY3ktbGlzdC1jYXBzdWxlIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbiN0cmF2ZWwtYWR2aXNvcnkgcCB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAjdHJhdmVsLWFkdmlzb3J5IHAge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tbGFyZ2Ugc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB9XG59XG5cbi8qIEVuZCBUcmlwIEFkdmlzb3J5ICovXG4vKiBQbGFuIFN1bW1hcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5pcy1zdHVjayAucGxhbi1zdW1tYXJ5IHtcbiAgd2lkdGg6IDM1NXB4O1xufVxuXG4ucGxhbi1zdW1tYXJ5IGgyIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDY0cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBsYW4tc3VtbWFyeSBoMiB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wbGFuLXN1bW1hcnkgaDIge1xuICAgIHBhZGRpbmctdG9wOiAyMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNhN2E3YTc7XG4gIH1cbn1cblxuLnBsYW4tc3VtbWFyeSAucHJpY2UtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDIycHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYTdhN2E3O1xuICBib3JkZXItc3BhY2luZzogaW5oZXJpdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wbGFuLXN1bW1hcnkgLnByaWNlLXRhYmxlIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG59XG5cbi5wbGFuLXN1bW1hcnkgLnByaWNlLXRhYmxlIHRib2R5LCAucGxhbi1zdW1tYXJ5IC5wcmljZS10YWJsZSB0aGVhZCB7XG4gIGJvcmRlcjogMDtcbn1cblxuLnBsYW4tc3VtbWFyeSAucHJpY2UtdGFibGUgdHIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBsYW4tc3VtbWFyeSAucHJpY2UtdGFibGUgdGgsXG4ucGxhbi1zdW1tYXJ5IC5wcmljZS10YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbn1cblxuLnBsYW4tc3VtbWFyeSAucHJpY2UtdGFibGUgdGguZGlzY291bnQge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG59XG5cbi5wbGFuLXN1bW1hcnkgLnByaWNlLXRhYmxlIHRkIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5wbGFuLXN1bW1hcnkgLnByaWNlLXRhYmxlIHRyOm50aC1sYXN0LW9mLXR5cGUoMikgdGgsXG4ucGxhbi1zdW1tYXJ5IC5wcmljZS10YWJsZSB0cjpudGgtbGFzdC1vZi10eXBlKDIpIHRkIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG59XG5cbi5wbGFuLXN1bW1hcnkgLnByaWNlLXRhYmxlIC50b3RhbCB0aCxcbi5wbGFuLXN1bW1hcnkgLnByaWNlLXRhYmxlIC50b3RhbCB0ZCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2E3YTdhNztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wbGFuLXN1bW1hcnkgLnByaWNlLXRhYmxlIC50b3RhbCB0aCxcbiAgLnBsYW4tc3VtbWFyeSAucHJpY2UtdGFibGUgLnRvdGFsIHRkIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgfVxufVxuXG4ucGxhbi1zdW1tYXJ5IC5yZW1vdmUtb3B0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbjogNXB4IDAgMCAxMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvYnV0dG9ucy9jbG9zZS5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDEycHg7XG4gIHRleHQtaW5kZW50OiAxMDAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLnBsYW4tc3VtbWFyeSAucmVtb3ZlLW9wdGlvbiB7XG4gICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucGxhbi1zdW1tYXJ5IC5zdW1tYXJ5LWFjdGlvbnMge1xuICBtYXJnaW4tdG9wOiAyNXB4O1xufVxuXG4vKiBFbmQgUGxhbiBTdW1tZXJ5ICovXG4vKiBCdXR0b24gV2VsbCAqL1xuLmJ1dHRvbi13ZWxsIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYTdhN2E3O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmJ1dHRvbi13ZWxsIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLmJ1dHRvbi13ZWxsIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgcHJpbnQgbWVkaWEgKi9cbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5idXR0b24td2VsbCAucHJpbWFyeS1hY3Rpb24sXG4uYnV0dG9uLXdlbGwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxM0I1RUE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuYnV0dG9uLXdlbGwgLnByaW1hcnktYWN0aW9uLFxuICAuYnV0dG9uLXdlbGwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLmJ1dHRvbi13ZWxsIC5wcmltYXJ5LWFjdGlvbixcbiAgLmJ1dHRvbi13ZWxsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmJ1dHRvbi13ZWxsIC5wcmltYXJ5LWFjdGlvbjpmb2N1cyxcbi5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmJ1dHRvbi13ZWxsIC5wcmltYXJ5LWFjdGlvbjpkaXNhYmxlZCxcbi5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmRpc2FibGVkIHtcbiAgY29sb3I6IGdyYXk7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLXdlbGwgLnNlY29uZGFyeS1hY3Rpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxODBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMC42cmVtIDFyZW07XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmJ1dHRvbi13ZWxsIC5zZWNvbmRhcnktYWN0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICAuYnV0dG9uLXdlbGwgLnNlY29uZGFyeS1hY3Rpb24ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmJ1dHRvbi13ZWxsIC5zZWNvbmRhcnktYWN0aW9uOmhvdmVyLCAuYnV0dG9uLXdlbGwgLnNlY29uZGFyeS1hY3Rpb246Zm9jdXMsIC5idXR0b24td2VsbCAuc2Vjb25kYXJ5LWFjdGlvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXItY29sb3I6ICMxMDdiYmY7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5idXR0b24td2VsbCAuc2Vjb25kYXJ5LWFjdGlvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5idXR0b24td2VsbCAuYnV0dG9uLXdlbGwtbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuYnV0dG9uLXdlbGwgLmJ1dHRvbi13ZWxsLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLmJ1dHRvbi13ZWxsIC5idXR0b24td2VsbC1saW5rIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgcHJpbnQgbWVkaWEgKi9cbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qIFF0aXAgQmFzZWxpbmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNxdGlwLW92ZXJsYXkuYmx1cnMsIC5xdGlwLWNsb3NlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucXRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTI4MDAwcHg7XG4gIHRvcDogLTI4MDAwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMjgwcHg7XG4gIG1pbi13aWR0aDogNTBweDtcbiAgZm9udC1zaXplOiAxMC41cHg7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICBkaXJlY3Rpb246IGx0cjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLnF0aXAtY29udGVudCwgLnF0aXAtdGl0bGViYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5xdGlwLWNvbnRlbnQge1xuICBwYWRkaW5nOiA1cHggOXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi5xdGlwLXRpdGxlYmFyIHtcbiAgcGFkZGluZzogNXB4IDM1cHggNXB4IDEwcHg7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnF0aXAtdGl0bGViYXIgKyAucXRpcC1jb250ZW50IHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpcC1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC05cHg7XG4gIHRvcDogLTlweDtcbiAgei1pbmRleDogMTE7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4ucXRpcC10aXRsZWJhciAucXRpcC1jbG9zZSB7XG4gIHJpZ2h0OiA0cHg7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtOXB4O1xufVxuXG4qIGh0bWwgLnF0aXAtdGl0bGViYXIgLnF0aXAtY2xvc2Uge1xuICB0b3A6IDE2cHg7XG59XG5cbi5xdGlwLWljb24gLnVpLWljb24sIC5xdGlwLXRpdGxlYmFyIC51aS1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtaW5kZW50OiAtMTAwMGVtO1xuICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLnF0aXAtaWNvbiwgLnF0aXAtaWNvbiAudWktaWNvbiB7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogM3B4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5xdGlwLWljb24gLnVpLWljb24ge1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWluZGVudDogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCA3MDAgMTBweC8xM3B4IFRhaG9tYSxzYW5zLXNlcmlmO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogLTEwMGVtIC0xMDBlbSBuby1yZXBlYXQ7XG59XG5cbi5xdGlwLWRlZmF1bHQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRjFEMDMxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkEzO1xuICBjb2xvcjogIzU1NTtcbn1cblxuLnF0aXAtZGVmYXVsdCAucXRpcC10aXRsZWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkVGOTM7XG59XG5cbi5xdGlwLWRlZmF1bHQgLnF0aXAtaWNvbiB7XG4gIGJvcmRlci1jb2xvcjogI0NDQztcbiAgYmFja2dyb3VuZDogI0YxRjFGMTtcbiAgY29sb3I6ICM3Nzc7XG59XG5cbi5xdGlwLWRlZmF1bHQgLnF0aXAtdGl0bGViYXIgLnF0aXAtY2xvc2Uge1xuICBib3JkZXItY29sb3I6ICNBQUE7XG4gIGNvbG9yOiAjMTExO1xufVxuXG4ucXRpcC1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI0UyRTJFMjtcbiAgY29sb3I6ICM0NTQ1NDU7XG59XG5cbi5xdGlwLWxpZ2h0IC5xdGlwLXRpdGxlYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbn1cblxuLnF0aXAtZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MDUwNTA7XG4gIGJvcmRlci1jb2xvcjogIzMwMzAzMDtcbiAgY29sb3I6ICNmM2YzZjM7XG59XG5cbi5xdGlwLWRhcmsgLnF0aXAtdGl0bGViYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA0MDQwO1xufVxuXG4ucXRpcC1kYXJrIC5xdGlwLWljb24ge1xuICBib3JkZXItY29sb3I6ICM0NDQ7XG59XG5cbi5xdGlwLWRhcmsgLnF0aXAtdGl0bGViYXIgLnVpLXN0YXRlLWhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzAzMDMwO1xufVxuXG4ucXRpcC1jcmVhbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQkY3QUE7XG4gIGJvcmRlci1jb2xvcjogI0Y5RTk4RTtcbiAgY29sb3I6ICNBMjdEMzU7XG59XG5cbi5xdGlwLXJlZCwgLnF0aXAtcmVkIC5xdGlwLWljb24sIC5xdGlwLXJlZCAucXRpcC10aXRsZWJhciAudWktc3RhdGUtaG92ZXIge1xuICBib3JkZXItY29sb3I6ICNEOTUyNTI7XG59XG5cbi5xdGlwLWNyZWFtIC5xdGlwLXRpdGxlYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YwREU3RDtcbn1cblxuLnF0aXAtY3JlYW0gLnF0aXAtY2xvc2UgLnF0aXAtaWNvbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MnB4IDA7XG59XG5cbi5xdGlwLXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNzhCODM7XG4gIGNvbG9yOiAjOTEyMzIzO1xufVxuXG4ucXRpcC1yZWQgLnF0aXAtdGl0bGViYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjA2RDY1O1xufVxuXG4ucXRpcC1yZWQgLnF0aXAtY2xvc2UgLnF0aXAtaWNvbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDJweCAwO1xufVxuXG4ucXRpcC1ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDQUVEOUU7XG4gIGJvcmRlci1jb2xvcjogIzkwRDkzRjtcbiAgY29sb3I6ICMzRjYyMTk7XG59XG5cbi5xdGlwLWdyZWVuIC5xdGlwLXRpdGxlYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0IwREU3ODtcbn1cblxuLnF0aXAtZ3JlZW4gLnF0aXAtY2xvc2UgLnF0aXAtaWNvbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MnB4IDA7XG59XG5cbi5xdGlwLWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTVGNkZFO1xuICBib3JkZXItY29sb3I6ICNBREQ5RUQ7XG4gIGNvbG9yOiAjNUU5OUJEO1xufVxuXG4ucXRpcC1ibHVlIC5xdGlwLXRpdGxlYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0QwRTlGNTtcbn1cblxuLnF0aXAtYmx1ZSAucXRpcC1jbG9zZSAucXRpcC1pY29uIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTJweCAwO1xufVxuXG4ucXRpcC1zaGFkb3cge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDFweCAxcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAtbW96LWJveC1zaGFkb3c6IDFweCAxcHggM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3gtc2hhZG93OiAxcHggMXB4IDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLnF0aXAtYm9vdHN0cmFwLCAucXRpcC1yb3VuZGVkLCAucXRpcC10aXBzeSB7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4ucXRpcC1yb3VuZGVkIC5xdGlwLXRpdGxlYmFyIHtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG59XG5cbi5xdGlwLXlvdXR1YmUge1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgM3B4ICMzMzM7XG4gIC1tb3otYm94LXNoYWRvdzogMCAwIDNweCAjMzMzO1xuICBib3gtc2hhZG93OiAwIDAgM3B4ICMzMzM7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQ6ICM0QTRBNEE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCwgIzRBNEE0QSksIGNvbG9yLXN0b3AoMTAwJSwgIzAwMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICM0QTRBNEEgMCwgIzAwMCAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNEE0QTRBIDAsICMwMDAgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjNEE0QTRBIDAsICMwMDAgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICM0QTRBNEEgMCwgIzAwMCAxMDAlKTtcbn1cblxuLnF0aXAteW91dHViZSAucXRpcC10aXRsZWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0QTRBNEE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ucXRpcC15b3V0dWJlIC5xdGlwLWNvbnRlbnQge1xuICBwYWRkaW5nOiAuNzVlbTtcbiAgZm9udDogMTJweCBhcmlhbCxzYW5zLXNlcmlmO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5HcmFkaWVudChHcmFkaWVudFR5cGU9MCwgU3RhcnRDb2xvclN0cj0jNGE0YTRhLCBFbmRDb2xvclN0cj0jMDAwMDAwKTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuR3JhZGllbnQoR3JhZGllbnRUeXBlPTAsU3RhcnRDb2xvclN0cj0jNGE0YTRhLEVuZENvbG9yU3RyPSMwMDAwMDApO1wiO1xufVxuXG4ucXRpcC15b3V0dWJlIC5xdGlwLWljb24ge1xuICBib3JkZXItY29sb3I6ICMyMjI7XG59XG5cbi5xdGlwLXlvdXR1YmUgLnF0aXAtdGl0bGViYXIgLnVpLXN0YXRlLWhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzAzMDMwO1xufVxuXG4ucXRpcC1qdG9vbHMge1xuICBiYWNrZ3JvdW5kOiAjMjMyMzIzO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oIzcxNzE3MSksIHRvKCMyMzIzMjMpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNzE3MTcxLCAjMjMyMzIzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjNzE3MTcxLCAjMjMyMzIzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM3MTcxNzEsICMyMzIzMjMpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjNzE3MTcxLCAjMjMyMzIzKTtcbiAgYm9yZGVyOiAycHggc29saWQgI2RkZDtcbiAgYm9yZGVyOiAycHggc29saWQgI2YxZjFmMTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDEycHggIzMzMztcbiAgLW1vei1ib3gtc2hhZG93OiAwIDAgMTJweCAjMzMzO1xuICBib3gtc2hhZG93OiAwIDAgMTJweCAjMzMzO1xufVxuXG4ucXRpcC1qdG9vbHMgLnF0aXAtdGl0bGViYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jNzE3MTcxLCBlbmRDb2xvcnN0cj0jNEE0QTRBKTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jNzE3MTcxLGVuZENvbG9yc3RyPSM0QTRBNEEpXCI7XG59XG5cbi5xdGlwLWp0b29scyAucXRpcC1jb250ZW50IHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jNEE0QTRBLCBlbmRDb2xvcnN0cj0jMjMyMzIzKTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jNEE0QTRBLGVuZENvbG9yc3RyPSMyMzIzMjMpXCI7XG59XG5cbi5xdGlwLWp0b29scyAucXRpcC1jb250ZW50LCAucXRpcC1qdG9vbHMgLnF0aXAtdGl0bGViYXIge1xuICBiYWNrZ3JvdW5kOiAwIDA7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDAgZGFzaGVkIHRyYW5zcGFyZW50O1xufVxuXG4ucXRpcC1qdG9vbHMgLnF0aXAtaWNvbiB7XG4gIGJvcmRlci1jb2xvcjogIzU1NTtcbn1cblxuLnF0aXAtanRvb2xzIC5xdGlwLXRpdGxlYmFyIC51aS1zdGF0ZS1ob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzMzMztcbn1cblxuLnF0aXAtY2x1ZXRpcCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAtbW96LWJveC1zaGFkb3c6IDRweCA0cHggNXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogNHB4IDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDlEOUMyO1xuICBjb2xvcjogIzExMTtcbiAgYm9yZGVyOiAwIGRhc2hlZCB0cmFuc3BhcmVudDtcbn1cblxuLnF0aXAtY2x1ZXRpcCAucXRpcC10aXRsZWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4Nzg3NkE7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDAgZGFzaGVkIHRyYW5zcGFyZW50O1xufVxuXG4ucXRpcC1jbHVldGlwIC5xdGlwLWljb24ge1xuICBib3JkZXItY29sb3I6ICM4MDgwNjQ7XG59XG5cbi5xdGlwLWNsdWV0aXAgLnF0aXAtdGl0bGViYXIgLnVpLXN0YXRlLWhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjk2OTUyO1xuICBjb2xvcjogIzY5Njk1Mjtcbn1cblxuLnF0aXAtdGlwc3kge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtZmFtaWx5OiAnTHVjaWRhIEdyYW5kZScsc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHRleHQtc2hhZG93OiAwIDFweCAjMDAwO1xufVxuXG4ucXRpcC10aXBzeSAucXRpcC10aXRsZWJhciB7XG4gIHBhZGRpbmc6IDZweCAzNXB4IDAgMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5xdGlwLXRpcHN5IC5xdGlwLWNvbnRlbnQge1xuICBwYWRkaW5nOiA2cHggMTBweDtcbn1cblxuLnF0aXAtdGlwc3kgLnF0aXAtaWNvbiB7XG4gIGJvcmRlci1jb2xvcjogIzIyMjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5xdGlwLXRpcHN5IC5xdGlwLXRpdGxlYmFyIC51aS1zdGF0ZS1ob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzMwMzAzMDtcbn1cblxuLnF0aXAtdGlwcGVkIHtcbiAgYm9yZGVyOiAzcHggc29saWQgIzk1OUZBOTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOUY5Rjk7XG4gIGNvbG9yOiAjNDU0NTQ1O1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogc2VyaWY7XG59XG5cbi5xdGlwLXRpcHBlZCAucXRpcC10aXRsZWJhciB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjM0E3OUI4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCMzQTc5QjgpLCB0bygjMkU2MjlEKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzNBNzlCOCwgIzJFNjI5RCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzNBNzlCOCwgIzJFNjI5RCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjM0E3OUI4LCAjMkU2MjlEKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzNBNzlCOCwgIzJFNjI5RCk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9IzNBNzlCOCwgZW5kQ29sb3JzdHI9IzJFNjI5RCk7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9IzNBNzlCOCxlbmRDb2xvcnN0cj0jMkU2MjlEKVwiO1xufVxuXG4ucXRpcC10aXBwZWQgLnF0aXAtaWNvbiB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMyODU1ODk7XG4gIGJhY2tncm91bmQ6ICMyODU1ODk7XG59XG5cbi5xdGlwLXRpcHBlZCAucXRpcC1pY29uIC51aS1pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZCRkJGQjtcbiAgY29sb3I6ICM1NTU7XG59XG5cbi5xdGlwLWJvb3RzdHJhcCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGNvbG9yOiAjMzMzO1xuICBwYWRkaW5nOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA2cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNnB4O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC1tb3otYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIC1tb3otYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xufVxuXG4ucXRpcC1ib290c3RyYXAgLnF0aXAtdGl0bGViYXIge1xuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ViZWJlYjtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcbiAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG59XG5cbi5xdGlwLWJvb3RzdHJhcCAucXRpcC10aXRsZWJhciAucXRpcC1jbG9zZSB7XG4gIHJpZ2h0OiAxMXB4O1xuICB0b3A6IDQ1JTtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4ucXRpcC1ib290c3RyYXAgLnF0aXAtY29udGVudCB7XG4gIHBhZGRpbmc6IDlweCAxNHB4O1xufVxuXG4ucXRpcC1ib290c3RyYXAgLnF0aXAtaWNvbiB7XG4gIGJhY2tncm91bmQ6IDAgMDtcbn1cblxuLnF0aXAtYm9vdHN0cmFwIC5xdGlwLWljb24gLnVpLWljb24ge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmO1xuICBvcGFjaXR5OiAuMjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTIwKTtcbn1cblxuI3F0aXAtb3ZlcmxheSwgI3F0aXAtb3ZlcmxheSBkaXYge1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5xdGlwLWJvb3RzdHJhcCAucXRpcC1pY29uIC51aS1pY29uOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAuNDtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTQwKTtcbn1cblxuLnF0aXA6bm90KC5pZTloYXhvcnMpIGRpdi5xdGlwLWNvbnRlbnQsIC5xdGlwOm5vdCguaWU5aGF4b3JzKSBkaXYucXRpcC10aXRsZWJhciB7XG4gIGZpbHRlcjogbm9uZTtcbiAgLW1zLWZpbHRlcjogbm9uZTtcbn1cblxuLnF0aXAgLnF0aXAtdGlwIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ucXRpcCAucXRpcC10aXAge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5xdGlwIC5xdGlwLXRpcCwgLnF0aXAgLnF0aXAtdGlwIC5xdGlwLXZtbCwgLnF0aXAgLnF0aXAtdGlwIGNhbnZhcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICMxMjM0NTY7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiAwIGRhc2hlZCB0cmFuc3BhcmVudDtcbn1cblxuLnF0aXAgLnF0aXAtdGlwIGNhbnZhcyB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLnF0aXAgLnF0aXAtdGlwIC5xdGlwLXZtbCB7XG4gIGJlaGF2aW9yOiB1cmwoI2RlZmF1bHQjVk1MKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4jcXRpcC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4jcXRpcC1vdmVybGF5IGRpdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgb3BhY2l0eTogLjc7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT03MCk7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9NzApXCI7XG59XG5cbi5xdGlwbW9kYWwtaWU2Zml4IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG59XG5cbi8qIEVuZCBRdGlwIEJhc2VsaW5lICovXG4vKiBRdGlwIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmhlbHAsXG4uYWpheC1oZWxwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uaGVscC5pbmxpbmUsXG4uYWpheC1oZWxwLmlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLmhlbHAsXG4gIC5hamF4LWhlbHAge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhlbHAgaW1nLFxuLmFqYXgtaGVscCBpbWcge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDAgMCAwIDVweDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyogUXRpcCBSZXdyaXRlcy9CZW5lZml0IFBvcHVwcyAqL1xuLnF0aXAtaGVscCB7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZWJlYmViO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMjMxZjIwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5xdGlwLWhlbHAge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgd2lkdGg6IDU1MHB4O1xuICAgIG1heC13aWR0aDogNTUwcHg7XG4gIH1cbn1cblxuLnF0aXAtaGVscCBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xufVxuXG4ucXRpcC1oZWxwIGg0IHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG59XG5cbi5xdGlwLWhlbHAgcCB7XG4gIG1hcmdpbjogMCAwIDVweDtcbn1cblxuLnF0aXAtaGVscCBkaXYge1xuICBtYXJnaW46IDAgMCA1cHg7XG59XG5cbi5xdGlwLWhlbHAgdWwge1xuICBtYXJnaW46IDAgMCA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICBtYXJnaW4tbGVmdDogMjBweDtcbn1cblxuLnF0aXAtaGVscCBvbCB7XG4gIG1hcmdpbjogMCAwIDVweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuXG4ucXRpcC1oZWxwIGltZyB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5xdGlwIHtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnF0aXAtY29udGVudCB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG59XG5cbi5xdGlwIC5xdGlwLXRpcCB7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG59XG5cbi5wb3B1cCB7XG4gIHdpZHRoOiAyNTZweDtcbiAgbWFyZ2luOiAxMHB4IGF1dG8gMDtcbiAgcGFkZGluZzogMTJweDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAxLjByZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaW5mb0RhdGVUYWJsZSB0aCB7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Y4RjhGODtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmluZm9EYXRlVGFibGUgdGQge1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nOiA1cHggMTVweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG59XG5cbi5pbmZvRGF0ZVRhYmxlIHAge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uaW5mb0RhdGVUYWJsZSB0cjpmaXJzdC1jaGlsZCB0aCB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG4vKiBFbmQgUXRpcCBPdmVycmlkZXMgKi9cbi8qIExvYWRpbmcgU3Bpbm5lciAqL1xuLnBhZ2UtbG9hZGluZyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg3OSwgNzYsIDc3LCAwLjc1KTtcbn1cblxuLnBhZ2UtbG9hZGluZyAubG9hZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA5NHB4O1xuICBoZWlnaHQ6IDk0cHg7XG59XG5cbi8qIExvYWRpbmcgU3Bpbm5lciAqL1xuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLmxvYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiA5NHB4O1xuICBoZWlnaHQ6IDk0cHg7XG4gIG1hcmdpbjogNTBweCBhdXRvO1xuICBib3JkZXI6IDAuMjVyZW0gc29saWQgcmdiYSgyNTQsIDIwMywgNDcsIDAuNCk7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZWNiMmY7XG4gIGFuaW1hdGlvbjogc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbi8qIEVuZCBMb2FkaW5nIFNwaW5uZXIgKi9cbi8qIGJlbmVmaXRzIHBvcC11cFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnByaWNlLXRhYmxlIHRoIC5wb3B1cCxcbi5wcmljZS10YWJsZSB0ZCAucG9wdXAsXG4uYmVuZWZpdHMtdGFibGUgdGggLnBvcHVwLFxuLmJlbmVmaXRzLXRhYmxlIHRkIC5wb3B1cCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMjU2cHg7XG4gIG1hcmdpbjogMCAwIDAgMTAwcHg7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZWJlYmViO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMjMxZjIwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wcmljZS10YWJsZSB0aDpob3ZlciAucG9wdXAsXG4gIC5wcmljZS10YWJsZSB0ZDpob3ZlciAucG9wdXAsXG4gIC5iZW5lZml0cy10YWJsZSB0aDpob3ZlciAucG9wdXAsXG4gIC5iZW5lZml0cy10YWJsZSB0ZDpob3ZlciAucG9wdXAge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8qIGVuZCBiZW5lZml0cyBwb3AtdXAgKi9cbi8qIE1vZGFsc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIuMTg3NWVtKSB7XG4gIC5yZXZlYWwge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBsYXJnZS1tZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgIHBhZGRpbmc6IDYwcHggMjBweDtcbiAgfVxufVxuXG4ucmV2ZWFsOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnJldmVhbCAuYnV0dG9uLXdlbGwge1xuICBib3JkZXItdG9wOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5yZXZlYWwgLmJ1dHRvbi13ZWxsIC5wcmltYXJ5LWFjdGlvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAwIDMwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucmV2ZWFsIC5idXR0b24td2VsbCAucHJpbWFyeS1hY3Rpb24ge1xuICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgfVxufVxuXG4ucmV2ZWFsIC5idXR0b24td2VsbCAuc2Vjb25kYXJ5LWFjdGlvbiArIC5zZWNvbmRhcnktYWN0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDUwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucmV2ZWFsIC5idXR0b24td2VsbCAuc2Vjb25kYXJ5LWFjdGlvbiArIC5zZWNvbmRhcnktYWN0aW9uIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5cbi5yZXZlYWwgLmNsb3NlLW1vZGFsLFxuLnJldmVhbCAubW9kYWwtY2FuY2VsLWxpbmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA0MHB4O1xuICB0b3A6IDQwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9idXR0b25zL2Nsb3NlLnN2Z1wiKSBuby1yZXBlYXQgLTZweCAtNnB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDMycHggMzJweDtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5yZXZlYWwgLmNsb3NlLW1vZGFsLFxuICAucmV2ZWFsIC5tb2RhbC1jYW5jZWwtbGluayB7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAyMHB4O1xuICB9XG59XG5cbi5yZXZlYWwubG9nLW91dC1tb2RhbCBwIHtcbiAgbWF4LXdpZHRoOiA0MTBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMzBweCBhdXRvO1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnJldmVhbC5sb2ctb3V0LW1vZGFsIC5idXR0b24td2VsbCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi5tb2RhbCB7XG4gIHdpZHRoOiA2NTJweDtcbiAgbWF4LXdpZHRoOiA4MCU7XG4gIG1heC1oZWlnaHQ6IDgwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3JkZXI6IHNvbGlkIDFweCAjMjMxZjIwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM4O1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5tb2RhbCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwgLnNjcm9sbGFibGVBcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogMzIwcHg7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1vZGFsIC5tb2RhbC1pbWFnZSB7XG4gIG1heC13aWR0aDogODZweDtcbn1cblxuLm1vZGFsIGgyLFxuLm1vZGFsIHAge1xuICBtYXgtd2lkdGg6IDQ2MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4ubW9kYWwgLnBvc3QtY29sbGVjdGlvbixcbi5tb2RhbCAuZW1haWwtY29sbGVjdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ubW9kYWwgLnBvc3QtY29sbGVjdGlvbiBsYWJlbCxcbi5tb2RhbCAuZW1haWwtY29sbGVjdGlvbiBsYWJlbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5tb2RhbCAuYnV0dG9uLXdlbGwge1xuICBtYXJnaW46IDEwcHggMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5tb2RhbCAuYnV0dG9uLXdlbGwge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsIC5idXR0b24td2VsbCAuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xufVxuXG4ubW9kYWwgLmJ1dHRvbi13ZWxsIC5ub3RpY2Uge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmZhbmN5Ym94LWJnIHtcbiAgYmFja2dyb3VuZDogcmdiYSg3NywgNzcsIDc3LCAwLjgpO1xufVxuXG4uZmFuY3lib3gtY2xvc2Uge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG59XG5cbi5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG4gIHdpZHRoOiAyMnB4O1xuICBoZWlnaHQ6IDIycHg7XG59XG5cbi5mYW5jeWJveC1jbG9zZS1zbWFsbDpob3ZlciwgLmZhbmN5Ym94LWNsb3NlLXNtYWxsOmZvY3VzLCAuZmFuY3lib3gtY2xvc2Utc21hbGw6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsOmhvdmVyOmFmdGVyLCAuZmFuY3lib3gtY2xvc2Utc21hbGw6Zm9jdXM6YWZ0ZXIsIC5mYW5jeWJveC1jbG9zZS1zbWFsbDphY3RpdmU6YWZ0ZXIge1xuICBjb2xvcjogIzEwN2JiZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsOmFmdGVyIHtcbiAgdG9wOiAxMnB4O1xuICByaWdodDogMTVweDtcbiAgd2lkdGg6IDIycHg7XG4gIGhlaWdodDogMjJweDtcbiAgZm9udDogMjhweC8yOHB4IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGNvbG9yOiAjMjMxZjIwO1xuICBmb250LXdlaWdodDogNDAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4ycztcbn1cblxuLmZhbmN5Ym94LXNraW4ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ubG9nLW91dC1tb2RhbCAuYnV0dG9uLXdlbGwge1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKiBFbmQgTW9kYWxzICovXG4vKiAtLSBkYXNoYm9hcmQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhdGgtLW1hbmFnZS1wb2xpY2llcyAjcGFnZS10aXRsZSB7XG4gIG1hcmdpbjogMCAwIDQwcHg7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wYXRoLS1tYW5hZ2UtcG9saWNpZXMgI3BhZ2UtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4ucGF0aC0tbWFuYWdlLXBvbGljaWVzICNwYWdlLXRpdGxlICsgI3RyYXZlbC1hZHZpc29yeSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbiNkYXNoYm9hcmQtaW50cm8ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4jZGFzaGJvYXJkLWludHJvIGgyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNkYXNoYm9hcmQtaW50cm8gaDIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG4jZGFzaGJvYXJkLWludHJvIGgyIHNwYW4ge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNkYXNoYm9hcmQtaW50cm8gaDIgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxufVxuXG4jZGFzaGJvYXJkLWludHJvIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2Rhc2hib2FyZC1pbnRybyBwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogLjc1cmVtO1xuICB9XG59XG5cbiNkYXNoYm9hcmQtaW50cm8gLmFjdGlvbnMtd3JhcHBlciB7XG4gIG1pbi1oZWlnaHQ6IDc0cHg7XG4gIHBhZGRpbmctdG9wOiAxM3B4O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM5NTk1OTU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2Rhc2hib2FyZC1pbnRybyAuYWN0aW9ucy13cmFwcGVyIHtcbiAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufVxuXG4jZGFzaGJvYXJkLWludHJvIC5hY3Rpb25zLXdyYXBwZXIgYnV0dG9uIHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xufVxuXG4jZGFzaGJvYXJkLWludHJvIC5hY3Rpb25zLXdyYXBwZXIgYnV0dG9uLnNlY29uZGFyeS1hY3Rpb24ge1xuICBjb2xvcjogIzEzQjVFQTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxM0I1RUE7XG59XG5cbiNkYXNoYm9hcmQtaW50cm8gLmFjdGlvbnMtd3JhcHBlciBidXR0b24gKyBidXR0b24ge1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNkYXNoYm9hcmQtaW50cm8gLmFjdGlvbnMtd3JhcHBlciBidXR0b24gKyBidXR0b24ge1xuICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgfVxufVxuXG4jY2xhaW1zLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0Ym9keSB0ZC5kZXN0aW5hdGlvbnM6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdDbGFpbSBEYXRlJztcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyIHtcbiAgbWFyZ2luOiAwIDNyZW0gMzBweCAzcmVtO1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTU5NTk1O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1saXN0LWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ucG9saWN5LWxpc3QtY2Fwc3VsZSAuY2Fwc3VsZS1oZWFkZXIuYWN0aXZlIGgyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyLmFjdGl2ZSBoMjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2FjdGl2ZS1wb2xpY2llcy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiAzNnB4IDQ0cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNDBweDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICB3aWR0aDogNDRweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5jYXBzdWxlLWhlYWRlci5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA0MHB4O1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5jYXBzdWxlLWhlYWRlci5jYW5jZWxsZWQgaDIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucG9saWN5LWxpc3QtY2Fwc3VsZSAuY2Fwc3VsZS1oZWFkZXIuY2FuY2VsbGVkIGgyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvY2FsZW5kYXIuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gIGJhY2tncm91bmQtc2l6ZTogMzZweCA0NHB4O1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgd2lkdGg6IDQ0cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWxpc3QtY2Fwc3VsZSAuY2Fwc3VsZS1oZWFkZXIuY2FuY2VsbGVkIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgNDBweDtcbiAgfVxufVxuXG4ucG9saWN5LWxpc3QtY2Fwc3VsZSAuY2Fwc3VsZS1oZWFkZXIuY2xhaW1zIGgyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyLmNsYWltcyBoMjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2NsYWltcy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiAzNnB4IDQ0cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNDBweDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICB3aWR0aDogNDRweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5jYXBzdWxlLWhlYWRlci5jbGFpbXMge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA0MHB4O1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5jYXBzdWxlLWhlYWRlci5wYXN0IGgyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyLnBhc3QgaDI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9wYXN0LXBvbGljaWVzLnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM2cHggNDRweDtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiA0MHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIHdpZHRoOiA0NHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1saXN0LWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyLnBhc3Qge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA0MHB4O1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5jYXBzdWxlLWhlYWRlciBoMiB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWxpc3QtY2Fwc3VsZSAuY2Fwc3VsZS1oZWFkZXIgaDIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LXRhYmxlIHRib2R5IHtcbiAgYm9yZGVyOiAwO1xufVxuXG4ucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LXRhYmxlIHRoZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0aGVhZCB0aCB7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogMjAlO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0aGVhZCB0aCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGhlYWQgdGg6Zmlyc3Qtb2YtdHlwZSB7XG4gIHdpZHRoOiAzMCU7XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0aGVhZCB0aDpsYXN0LW9mLXR5cGUge1xuICB3aWR0aDogMTAlO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0Ym9keSB0ciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQge1xuICBwYWRkaW5nOiAxNXB4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0Ym9keSB0ZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB0ZXh0LW92ZXJmbG93OiBpbmhlcml0O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuICAucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LXRhYmxlIHRib2R5IHRkOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQ6bGFzdC1vZi10eXBlIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQ6bGFzdC1vZi10eXBlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LXRhYmxlIHRib2R5IHRkLmFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQucG9saWN5LW51bWJlciwgLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0Ym9keSB0ZC5kZXN0aW5hdGlvbnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQucG9saWN5LW51bWJlcjpiZWZvcmUsIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQuZGVzdGluYXRpb25zOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LXRhYmxlIHRib2R5IHRkLmRlc3RpbmF0aW9uczpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdEZXN0aW5hdGlvbnMnO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LXRhYmxlIHRib2R5IHRkLnBvbGljeS1udW1iZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG4gIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktdGFibGUgdGJvZHkgdGQucG9saWN5LW51bWJlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdVcGdyYWRlIG51bWJlcic7XG4gIH1cbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0Ym9keSB0ZCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS10YWJsZSB0Ym9keSB0ZCBzcGFuLmRlcGFydHVyZTphZnRlciB7XG4gIGNvbnRlbnQ6ICcgLSAnO1xufVxuXG4ucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS1hY3Rpb25zIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICBjb2xvcjogIzEwN2JiZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMgbGkuY2FuY2VsIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2FjdGlvbi1jYW5jZWwucG5nXCIpIG5vLXJlcGVhdCAwIDVweDtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktYWN0aW9ucyBsaS5jbGFpbSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9hY3Rpb24tY2xhaW0ucG5nXCIpIG5vLXJlcGVhdCAwIDVweDtcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDE0cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMgbGkuY2xhaW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS1hY3Rpb25zIGxpLm1hbmFnZSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9hY3Rpb24tbWFuYWdlLnBuZ1wiKSBuby1yZXBlYXQgMCAzcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS1hY3Rpb25zIGxpLm1hbmFnZSB7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9hY3Rpb24tYXJyb3cuc3ZnXCIpIG5vLXJlcGVhdCAtMjVweCAtMjVweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMHB4IDEwMHB4O1xuICAgIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1saXN0LWNhcHN1bGUgLnBvbGljeS1hY3Rpb25zIGxpLm1hbmFnZSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktYWN0aW9ucyBsaS52aWV3IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2FjdGlvbi12aWV3LW1vZGlmeS5wbmdcIikgbm8tcmVwZWF0IDAgM3B4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktbGlzdC1jYXBzdWxlIC5wb2xpY3ktYWN0aW9ucyBsaS52aWV3IHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2FjdGlvbi1hcnJvdy5zdmdcIikgbm8tcmVwZWF0IC0yNXB4IC0yNXB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwcHggMTAwcHg7XG4gICAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWxpc3QtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMgbGkudmlldyBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cbiNiYXNlLXBvbGljeS1pbmZvLnBvbGljeS1saXN0LWNhcHN1bGUge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjYmFzZS1wb2xpY3ktaW5mby5wb2xpY3ktbGlzdC1jYXBzdWxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgfVxufVxuXG4jYmFzZS1wb2xpY3ktaW5mbyBoMiB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG59XG5cbiNiYXNlLXBvbGljeS1pbmZvIC5sZWFkIHtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNiYXNlLXBvbGljeS1pbmZvIC5sZWFkIHtcbiAgICBmb250LXNpemU6IDEyNSU7XG4gIH1cbn1cblxuI2Jhc2UtcG9saWN5LWluZm8gLnBvbGljeS1hY3Rpb25zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNiYXNlLXBvbGljeS1pbmZvIC5wb2xpY3ktYWN0aW9ucyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ubm8tcG9saWN5LW1lc3NhZ2Uge1xuICBtYXgtd2lkdGg6IDY1MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogNjBweCAwO1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAubm8tcG9saWN5LW1lc3NhZ2Uge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW46IDAgMjBweDtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi5uby1wb2xpY3ktbWVzc2FnZSArIC5idXR0b24td2VsbCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAwIDQwcHg7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5uby1wb2xpY3ktbWVzc2FnZSArIC5idXR0b24td2VsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB9XG59XG5cbi5uby1wb2xpY3ktbWVzc2FnZSArIC5idXR0b24td2VsbCBpbnB1dFt0eXBlPWJ1dHRvbl0gKyBpbnB1dFt0eXBlPWJ1dHRvbl0ge1xuICBtYXJnaW4tbGVmdDogNTBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5uby1wb2xpY3ktbWVzc2FnZSArIC5idXR0b24td2VsbCBpbnB1dFt0eXBlPWJ1dHRvbl0gKyBpbnB1dFt0eXBlPWJ1dHRvbl0ge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cblxuLyogLS0gL2Rhc2hib2FyZCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiAtLSBzZWFyY2ggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI3BhZ2UtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JjYmNiYztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNwYWdlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbiNsb2dpbi1maWVsZHMsXG4jc2VhcmNoLWZpZWxkcyB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuI2xvZ2luLWZpZWxkcyB7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNsb2dpbi1maWVsZHMge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbiNzZWFyY2gtb3B0aW9ucyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAjc2VhcmNoLW9wdGlvbnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuI3NlYXJjaC1vcHRpb25zIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMXB4KTtcbiAgcGFkZGluZzogMzNweCAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNzZWFyY2gtb3B0aW9ucyBsaTpmaXJzdC1vZi10eXBlIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xufVxuXG4jc2VhcmNoLW9wdGlvbnMgbGk6bGFzdC1vZi10eXBlIHtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xufVxuXG4jc2VhcmNoLW9wdGlvbnMgbGkuc2VsZWN0ZWQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xufVxuXG4ucGF0aC0tc2VhcmNoIC5tZXNzYWdlcy0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc2VhcmNoLWZpZWxkcyBoMiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAjc2VhcmNoLWZpZWxkcyBoMiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMjNweCAwO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICB9XG59XG5cbiNzZWFyY2gtZmllbGRzIGgyIGRpdjpmaXJzdC1vZi10eXBlIGgyIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI3NlYXJjaC1ieS1wb2xpY3ksXG4gICNzZWFyY2gtYnktcXVvdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zZWFyY2gtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlYXJjaC1jb250YWluZXIuc2VhcmNoLWNvbnRhaW5lci1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNlYXJjaC1wYXRoIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogNDBweCAxMTBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zZWFyY2gtcGF0aCB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxufVxuXG4uc2VhcmNoLXBhdGggbGFiZWwge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNlYXJjaC1wYXRoIGxhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5zZWFyY2gtcGF0aCBzdHJvbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMCAzNXB4IDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBjb2xvcjogIzRmNGM0ZDtcbn1cblxuLnNlYXJjaC1wYXRoIC5mb3JtLWl0ZW0tLWVycm9yIC5lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogI2JjYmNiYztcbn1cblxuLnNlYXJjaC1wYXRoIC5mb3JtLWl0ZW0tLWVycm9yLW1lc3NhZ2Ugc3Ryb25nIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAuOHJlbTtcbiAgY29sb3I6ICNGRDBFMzU7XG59XG5cbi5zZWFyY2gtcGF0aCAubWFzay1iaXJ0aC1kYXRlLFxuLnNlYXJjaC1wYXRoIC5tYXNrLXRlbGVwaG9uZSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5wcmltYXJ5LWFjdGlvbiB7XG4gIG1pbi13aWR0aDogMjAwcHg7XG59XG5cbi5zZWFyY2gtY29udGFpbmVyIC5idXR0b24td2VsbCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwIDYwcHggMjY3cHg7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2VhcmNoLWNvbnRhaW5lciAuYnV0dG9uLXdlbGwge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4jcGFnaW5hdGlvbiArIC5zZWFyY2gtY29udGFpbmVyIC5idXR0b24td2VsbCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2VhcmNoLWNvbnRhaW5lciAuYnV0dG9uLXdlbGwucm93IHtcbiAgbWFyZ2luOiAwIDIwcHg7XG59XG5cbi5zZWFyY2gtcmVzdWx0LXdyYXBwZXIgLmJ1dHRvbi13ZWxsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAgNjBweCAwO1xuICBib3JkZXItdG9wOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zZWFyY2gtcmVzdWx0LXdyYXBwZXIgLmJ1dHRvbi13ZWxsLnJvdyB7XG4gIG1hcmdpbjogMCAyMHB4O1xufVxuXG4jc2VhcmNoLXJlc3VsdHMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbiNzZWFyY2gtcmVzdWx0cyAucmVzdWx0cy10YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG4jc2VhcmNoLXJlc3VsdHMgLnJlc3VsdHMtdGFibGUgdGhlYWQgdGgge1xuICBwYWRkaW5nOiAyNXB4IDAgMjBweCAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogMTIuNSU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWJlYmViO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI3NlYXJjaC1yZXN1bHRzIC5yZXN1bHRzLXRhYmxlIHRoZWFkIHRoIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIH1cbn1cblxuI3NlYXJjaC1yZXN1bHRzIC5yZXN1bHRzLXRhYmxlIHRoZWFkIHRoOmZpcnN0LW9mLXR5cGUge1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG59XG5cbiNzZWFyY2gtcmVzdWx0cyAucmVzdWx0cy10YWJsZSB0aGVhZCB0aDpsYXN0LW9mLXR5cGUge1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xufVxuXG4jc2VhcmNoLXJlc3VsdHMgLnJlc3VsdHMtdGFibGUgdGJvZHkge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI3NlYXJjaC1yZXN1bHRzIC5yZXN1bHRzLXRhYmxlIHRib2R5IHRyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4jc2VhcmNoLXJlc3VsdHMgLnJlc3VsdHMtdGFibGUgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4jc2VhcmNoLXJlc3VsdHMgLnJlc3VsdHMtdGFibGUgdGJvZHkgdHI6bnRoLW9mLXR5cGUoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xufVxuXG4jc2VhcmNoLXJlc3VsdHMgLnJlc3VsdHMtdGFibGUgdGJvZHkgdGQge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1heC13aWR0aDogMDtcbiAgcGFkZGluZzogMTVweCA1cHggMTVweCAwO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNzZWFyY2gtcmVzdWx0cyAucmVzdWx0cy10YWJsZSB0Ym9keSB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgdGV4dC1vdmVyZmxvdzogaW5oZXJpdDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbiAgI3NlYXJjaC1yZXN1bHRzIC5yZXN1bHRzLXRhYmxlIHRib2R5IHRkOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbiNzZWFyY2gtcmVzdWx0cyAucmVzdWx0cy10YWJsZSB0Ym9keSB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI3NlYXJjaC1yZXN1bHRzIC5yZXN1bHRzLXRhYmxlIHRib2R5IHRkOmZpcnN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxufVxuXG4jc2VhcmNoLXJlc3VsdHMgLnJlc3VsdHMtdGFibGUgdGJvZHkgdGQ6bGFzdC1vZi10eXBlIHtcbiAgcGFkZGluZy1yaWdodDogMzVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNzZWFyY2gtcmVzdWx0cyAucmVzdWx0cy10YWJsZSB0Ym9keSB0ZDpsYXN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbn1cblxuI3NlYXJjaC1yZXN1bHRzIC5yZXN1bHRzLXRhYmxlIHRib2R5IHRkIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxNTBweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4jc2VhcmNoLXJlc3VsdHMgLnJlc3VsdHMtdGFibGUgdGJvZHkgdGQgc3Bhbi5kZXBhcnR1cmU6YWZ0ZXIge1xuICBjb250ZW50OiAnIC0gJztcbn1cblxuI3BhZ2luYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4jcGFnaW5hdGlvbiB1bCB7XG4gIG1hcmdpbjogMCAwIDAgMzBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNwYWdpbmF0aW9uIHVsIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA1MHB4KTtcbiAgfVxufVxuXG4jcGFnaW5hdGlvbiB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmc6IDAgNXB4O1xufVxuXG4vKiAtLSAvc2VhcmNoIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBheW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wYXltZW50LXBhZ2Uge1xuICAvKiBEZWNsYXJhdGlvbnMgKi9cbn1cblxuLnBheW1lbnQtcGFnZSAjY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDEyMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBheW1lbnQtcGFnZSAjY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuXG4ucGF5bWVudC1wYWdlICNwYXltZW50IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNhN2E3YTc7XG4gIHBhZGRpbmctdG9wOiAyOXB4O1xufVxuXG4ucGF5bWVudC1wYWdlIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsIHtcbiAgcGFkZGluZzogNXB4IDAgMCA0MHB4O1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtc2l6ZTogMjRweCAyNHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogYXV0bztcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4ucGF5bWVudC1wYWdlIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICBiYWNrZ3JvdW5kLXNpemU6IDI0cHggMjRweDtcbn1cblxuLnBheW1lbnQtcGFnZSBzZWN0aW9uIGgyIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnBheW1lbnQtcGFnZSBwLCAucGF5bWVudC1wYWdlIGgzIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4ucGF5bWVudC1wYWdlIC5leHBpcmUtZmllbGRzIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLnBheW1lbnQtcGFnZSAuZXhwaXJlLWZpZWxkcyBsZWdlbmQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNnB4O1xufVxuXG4ucGF5bWVudC1wYWdlIC5leHBpcmUtZmllbGRzIC5zdGFydCB7XG4gIHBhZGRpbmc6IDAgMjBweCA1cHggMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5wYXltZW50LXBhZ2UgLmV4cGlyZS1maWVsZHMgLnN0YXJ0IHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIHBhZGRpbmc6IDAgMCA1cHggMDtcbiAgfVxufVxuXG4ucGF5bWVudC1wYWdlIGxhYmVsW2Zvcj1zZWN1cml0eUNvZGVdIC5hamF4LWhlbHAge1xuICBtYXJnaW4tYm90dG9tOiAtMjBweDtcbn1cblxuLnBheW1lbnQtcGFnZSAuZGVjbGFyYXRpb25zIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucGF5bWVudC1wYWdlIC5kZWNsYXJhdGlvbnMge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2E3YTdhNztcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgfVxufVxuXG4ucGF5bWVudC1wYWdlIC5kZWNsYXJhdGlvbnMgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDcwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzNXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBheW1lbnQtcGFnZSAuZGVjbGFyYXRpb25zIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIH1cbn1cblxuLnBheW1lbnQtcGFnZSAuZGVjbGFyYXRpb25zIGxhYmVsI2RlY2xhcmF0aW9uMS1lcnJvci5lcnJvciB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wYXltZW50LXBhZ2UgLmRlY2xhcmF0aW9ucyBsYWJlbC5lcnJvcjIge1xuICBmbG9hdDogbm9uZTtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtaW5kZW50OiAwO1xufVxuXG4vKiBQb2xpY3kgRGV0YWlscyBvciBWaWV3L01vZGlmeSBTaGVldFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogLS0gcG9saWN5IGRldGFpbHMgLSB2aWV3L21vZGlmeSBwYWdlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNwYWdlLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JjYmNiYztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNwYWdlLXRpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICNwYWdlLXRpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuI3BhZ2UtdGl0bGUgaDEge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI3BhZ2UtdGl0bGUgaDEge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgfVxufVxuXG4jcGFnZS10aXRsZSAuYmFjay1saW5rIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDdweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDIxcHg7XG4gIGhlaWdodDogNDJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9yZXR1cm4ucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gIGJhY2tncm91bmQtc2l6ZTogMjFweCA0MnB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI3BhZ2UtdGl0bGUgLmJhY2stbGluayB7XG4gICAgdG9wOiA0cHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAjcGFnZS10aXRsZSAuYmFjay1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogLTcwcHg7XG4gIH1cbn1cblxuI3BhZ2UtdGl0bGUgcCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAjcGFnZS10aXRsZSBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAzNXB4IDcwcHggMzVweCA3MHB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA2cHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWJlYmViO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gLjVyZW07XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyIGgyIHtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jYXBzdWxlLWhlYWRlciBoMiB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNhcHN1bGUtaGVhZGVyIGgyIC5wb2xpY3ktbnVtYmVyIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktYWN0aW9ucyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwIDAgNzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1hY3Rpb25zIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogMjBweCA4LjI1JSAyMHB4IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IC41cmVtIC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1hY3Rpb25zIGxpOmxhc3Qtb2YtdHlwZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMgbGkuYWN0aW9ucy1jYXJldCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDEuMjVyZW0gLjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMxM0I1RUE7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9jYXJldC11cC5zdmdcIikgbm8tcmVwZWF0IDk1JSBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMgbGkuYWN0aW9ucy1jYXJldCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1hY3Rpb25zIGxpIHNwYW4ge1xuICBjb2xvcjogIzEzQjVFQTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMgbGkgc3Bhbjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogIzEwOWNjOTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktYWN0aW9ucy5jbG9zZWQgbGkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1hY3Rpb25zLmNsb3NlZCBsaS5hY3Rpb25zLWNhcmV0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL3NlbGVjdC1hcnJvdy5zdmdcIikgbm8tcmVwZWF0IDk1JSBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWFjdGlvbnMuY2xvc2VkIGxpLmFjdGlvbnMtY2FyZXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktbGlzdCB7XG4gIHBhZGRpbmc6IDQwcHggNzBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktbGlzdCB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICB9XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5lZGl0LWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgY29sb3I6ICMxM0I1RUE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24ge1xuICBtYXJnaW46IDQwcHggNzBweCAwIDcwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAuY2xhaW0tZGV0YWlscy1pbmZvcm1hdGlvbiB7XG4gICAgbWFyZ2luOiAyMHB4IDIwcHggMCAyMHB4O1xuICB9XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jbGFpbS1kZXRhaWxzLWluZm9ybWF0aW9uIC5pdGVtLWhlYWRpbmcuY2xhaW1zIHtcbiAgbWluLWhlaWdodDogODBweDtcbiAgcGFkZGluZy1sZWZ0OiA3MHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2NsYWltcy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiA0NHB4IDQ4cHg7XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jbGFpbS1kZXRhaWxzLWluZm9ybWF0aW9uIC5pdGVtLWhlYWRpbmcuY2xhaW1zIGgzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jbGFpbS1kZXRhaWxzLWluZm9ybWF0aW9uIC5pdGVtLWhlYWRpbmcuY2xhaW1zIGgzIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jbGFpbS1kZXRhaWxzLWluZm9ybWF0aW9uIC5jbGFpbXMtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0aGVhZCB0aCB7XG4gIHBhZGRpbmc6IDAgMCAxNXB4IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiAyMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAuY2xhaW0tZGV0YWlscy1pbmZvcm1hdGlvbiAuY2xhaW1zLXRhYmxlIHRoZWFkIHRoIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0aGVhZCB0aDpmaXJzdC1vZi10eXBlIHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jbGFpbS1kZXRhaWxzLWluZm9ybWF0aW9uIC5jbGFpbXMtdGFibGUgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jbGFpbS1kZXRhaWxzLWluZm9ybWF0aW9uIC5jbGFpbXMtdGFibGUgdGJvZHkgdGQge1xuICBwYWRkaW5nOiAxNXB4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB0ZXh0LW92ZXJmbG93OiBpbmhlcml0O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAuY2xhaW0tZGV0YWlscy1pbmZvcm1hdGlvbiAuY2xhaW1zLXRhYmxlIHRib2R5IHRkOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jbGFpbS1kZXRhaWxzLWluZm9ybWF0aW9uIC5jbGFpbXMtdGFibGUgdGJvZHkgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZDpsYXN0LW9mLXR5cGUge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZDpsYXN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAuY2xhaW0tZGV0YWlscy1pbmZvcm1hdGlvbiAuY2xhaW1zLXRhYmxlIHRib2R5IHRkLnBvbGljeS1udW1iZXIsIC5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5jbGFpbS1kZXRhaWxzLWluZm9ybWF0aW9uIC5jbGFpbXMtdGFibGUgdGJvZHkgdGQuZGVzdGluYXRpb25zLCAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAuY2xhaW0tZGV0YWlscy1pbmZvcm1hdGlvbiAuY2xhaW1zLXRhYmxlIHRib2R5IHRkOmxhc3Qtb2YtdHlwZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZC5wb2xpY3ktbnVtYmVyOmJlZm9yZSwgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZC5kZXN0aW5hdGlvbnM6YmVmb3JlLCAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAuY2xhaW0tZGV0YWlscy1pbmZvcm1hdGlvbiAuY2xhaW1zLXRhYmxlIHRib2R5IHRkOmxhc3Qtb2YtdHlwZTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZC5kZXN0aW5hdGlvbnM6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnRGVzdGluYXRpb25zJztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZC5wb2xpY3ktbnVtYmVyOmJlZm9yZSB7XG4gICAgY29udGVudDogJ0NsYWltIG51bWJlcic7XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24gLmNsYWltcy10YWJsZSB0Ym9keSB0ZCBzcGFuLmRlcGFydHVyZTphZnRlciB7XG4gIGNvbnRlbnQ6ICcgLSAnO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24ge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24ubWVkaXVtLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDMuMTI1JTtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC50cmlwLWRldGFpbHMgaDQsXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLmNvdmVyYWdlLWRldGFpbHMgaDQsXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLnRyYXZlbGxlcnMgaDQge1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzRmNGM0ZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC50cmlwLWRldGFpbHMge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLnRyaXAtZGV0YWlscyAuaXRlbS1oZWFkaW5nOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvbHVnZ2FnZS1wcmVtaXVtLnN2Z1wiKSBuby1yZXBlYXQgLTE1cHggNXB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggNTBweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktZGV0YWlscy1pbmZvcm1hdGlvbiAudHJpcC1kZXRhaWxzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC50cmlwLWRldGFpbHMgdWwge1xuICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JjYmNiYztcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC50cmlwLWRldGFpbHMgdWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBjb2xvcjogIzRmNGM0ZDtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC50cmlwLWRldGFpbHMgdWwudHJhdmVsLWRhdGVzIGxpICsgbGk6YmVmb3JlIHtcbiAgY29udGVudDogJy0nO1xuICBwYWRkaW5nOiAwIDEwcHg7XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktZGV0YWlscy1pbmZvcm1hdGlvbiAudHJhdmVsbGVycyAuaXRlbS1oZWFkaW5nOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvdHJhdmVsbGVyLnN2Z1wiKSBuby1yZXBlYXQgLTE1cHggNXB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggNTBweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC50cmF2ZWxsZXJzIC50cmF2ZWxsZXItbGlzdCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JjYmNiYztcbiAgY29sb3I6ICM0ZjRjNGQ7XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktZGV0YWlscy1pbmZvcm1hdGlvbiAudHJhdmVsbGVycyAudHJhdmVsbGVyLWxpc3QgbGk6bGFzdC1vZi10eXBlIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLnRyYXZlbGxlcnMgLnRyYXZlbGxlci1saXN0IC50cmF2ZWxsZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC50cmF2ZWxsZXJzIC50cmF2ZWxsZXItbGlzdCAudHJhdmVsbGVyLWVtYyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4O1xuICBjb2xvcjogIzIzMWYyMDtcbiAgYmFja2dyb3VuZDogI2ViZWJlYjtcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC50cmF2ZWxsZXJzIC50cmF2ZWxsZXItbGlzdCAudHJhdmVsbGVyLWVtYyAuZWRpdC1saW5rIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLnRyYXZlbGxlcnMgLnRyYXZlbGxlci1saXN0IC5hZGQtdHJhdmVsbGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMTNCNUVBO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLnRyYXZlbGxlcnMgLnRyYXZlbGxlci1saXN0IC5hZGQtdHJhdmVsbGVyOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGNvbG9yOiAjMTA5Y2M5O1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLmNvdmVyYWdlLWRldGFpbHMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JjYmNiYztcbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC5jb3ZlcmFnZS1kZXRhaWxzIC5pdGVtLWhlYWRpbmc6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9hY3RpdmUtcG9saWNpZXMuc3ZnXCIpIG5vLXJlcGVhdCAtMTVweCA1cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogNzBweCA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLmNvdmVyYWdlLWRldGFpbHMgaDQge1xuICBtYXJnaW46IDVweCAwO1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLmNvdmVyYWdlLWRldGFpbHMgLmNvdmVyYWdlLWl0ZW1zIC5wbGFuLW5hbWUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xufVxuXG4ucG9saWN5LWRldGFpbHMtY2Fwc3VsZSAucG9saWN5LWRldGFpbHMtaW5mb3JtYXRpb24gLml0ZW0taGVhZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktZGV0YWlscy1pbmZvcm1hdGlvbiAuaXRlbS1oZWFkaW5nIGgzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktZGV0YWlscy1pbmZvcm1hdGlvbiAuaXRlbS1oZWFkaW5nIGgzIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cblxuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC5pdGVtLWhlYWRpbmcgaDQge1xuICBtYXJnaW4tdG9wOiAxMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIC5jb3ZlcmFnZS1kZXRhaWxzIC5pdGVtLWhlYWRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbi5jaGFuZ2UtcGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uY2hhbmdlLXBhbmVsIC5wYW5lbC1oZWFkZXIge1xuICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRlYzRlMjtcbn1cblxuLmNoYW5nZS1wYW5lbCAucGFuZWwtaGVhZGVyIHN0cm9uZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uY2hhbmdlLXBhbmVsIC5wYW5lbC1jb250ZW50IHtcbiAgcGFkZGluZzogNDBweCAyNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItdG9wOiBub25lO1xuICBjb2xvcjogIzRmNGM0ZDtcbn1cblxuLmNoYW5nZS1wYW5lbCAucGFuZWwtY29udGVudCAucHJpY2UtbGlzdCB7XG4gIG1hcmdpbjogMCAwIDVweCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uY2hhbmdlLXBhbmVsIC5wYW5lbC1jb250ZW50IC5wcmljZS1saXN0IGxpIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5jaGFuZ2UtcGFuZWwgLnBhbmVsLWNvbnRlbnQgLnByaWNlLWxpc3QgLml0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jaGFuZ2UtcGFuZWwgLnBhbmVsLWNvbnRlbnQgLnByaWNlLWxpc3QgLnZhbHVlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xufVxuXG4uY2hhbmdlLXBhbmVsIC5wYW5lbC1jb250ZW50IC5wcmljZS1saXN0IC50b3RhbCB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBhZGRpbmc6IDE1cHggMCAyMHB4IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYmNiY2JjO1xufVxuXG4uY2hhbmdlLXBhbmVsIC5wYW5lbC1jb250ZW50IC5wcmljZS1saXN0IC50b3RhbCAuaXRlbSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5jaGFuZ2UtcGFuZWwgLnBhbmVsLWNvbnRlbnQgYnV0dG9uLnByaW1hcnktYWN0aW9uLFxuLmNoYW5nZS1wYW5lbCAucGFuZWwtY29udGVudCBpbnB1dC5mb3JtLXN1Ym1pdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxM0I1RUE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi5jaGFuZ2UtcGFuZWwgLnBhbmVsLWNvbnRlbnQgYnV0dG9uLnByaW1hcnktYWN0aW9uOmhvdmVyLFxuLmNoYW5nZS1wYW5lbCAucGFuZWwtY29udGVudCBpbnB1dC5mb3JtLXN1Ym1pdDpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxM0I1RUE7XG59XG5cbi5yZXZlcnQtbGluayB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMxMDdiYmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnN1Y2Nlc3MtbWVzc2FnZSB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICM2MGQxNTQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5sb2dnZWQtb3V0IC5tZXNzYWdlcy0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiAtLSAvcG9saWN5IGRldGFpbHMgLSB2aWV3L21vZGlmeSBwYWdlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ub3Rlcy1wYW5lbCAucGFuZWwtaGVhZGVyIHtcbiAgcGFkZGluZzogMThweCAzNXB4O1xuICBiYWNrZ3JvdW5kOiAjMDA3NDZiO1xufVxuXG4ubm90ZXMtcGFuZWwgLnBhbmVsLWhlYWRlciBoMyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4ubm90ZXMtcGFuZWwgLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAzMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItdG9wOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuXG4ubm90ZXMtcGFuZWwgLnBhbmVsLWJvZHkgLm5vdGVzLWxpc3Qge1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMzUwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLm5vdGVzLXBhbmVsIC5wYW5lbC1ib2R5IC5ub3Rlcy1saXN0IGxpIHtcbiAgbWFyZ2luOiAwIDAgMjBweCAwO1xufVxuXG4ubm90ZXMtcGFuZWwgLnBhbmVsLWJvZHkgLm5vdGVzLWxpc3QgbGkgLmF0dHJpYnV0aW9uLWxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5ub3Rlcy1wYW5lbCAucGFuZWwtYm9keSAubm90ZXMtbGlzdCBsaSAuYXR0cmlidXRpb24tbGluZSBzdHJvbmcge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG5cbi5ub3Rlcy1wYW5lbCAubmV3LW5vdGUge1xuICBwYWRkaW5nOiAyMHB4IDEycHggMTBweCAxMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItdG9wOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xufVxuXG4ubm90ZXMtcGFuZWwgLm5ldy1ub3RlIGg0IHtcbiAgbWFyZ2luOiAwIDAgMTVweCAyNXB4O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzY2NjY2Njtcbn1cblxuLm5vdGVzLXBhbmVsIC5uZXctbm90ZSAubm90ZS1lbnRyeSB7XG4gIG1pbi1oZWlnaHQ6IDE4NXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ubm90ZXMtcGFuZWwgLm5ldy1ub3RlIC5ub3RlLWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogIzEwN2JiZjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbiNlZGl0LWRhdGVzIHtcbiAgLyogRGF0ZSBQaWNrZXIgKi9cbiAgLyp0aW1lIHN0eWxpbmcqL1xufVxuXG4jZWRpdC1kYXRlcyAucm93IC5yb3cuZGF0ZXBpY2tlci1jb250YWluZXIsXG4jZWRpdC1kYXRlcyAuZGF0ZXBpY2tlci1jb250YWluZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4jZWRpdC1kYXRlcyAucm93IC5yb3cuZGF0ZXBpY2tlci1jb250YWluZXIgbGk6Zmlyc3Qtb2YtdHlwZSxcbiNlZGl0LWRhdGVzIC5kYXRlcGlja2VyLWNvbnRhaW5lciBsaTpmaXJzdC1vZi10eXBlIHtcbiAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45Mzc1ZW0pIHtcbiAgI2VkaXQtZGF0ZXMgLnJvdyAucm93LmRhdGVwaWNrZXItY29udGFpbmVyIGxpOmZpcnN0LW9mLXR5cGUsXG4gICNlZGl0LWRhdGVzIC5kYXRlcGlja2VyLWNvbnRhaW5lciBsaTpmaXJzdC1vZi10eXBlIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNlZGl0LWRhdGVzIC5yb3cgLnJvdy5kYXRlcGlja2VyLWNvbnRhaW5lciBsaTpmaXJzdC1vZi10eXBlOjphZnRlcixcbiAgI2VkaXQtZGF0ZXMgLmRhdGVwaWNrZXItY29udGFpbmVyIGxpOmZpcnN0LW9mLXR5cGU6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjYTdhN2E3O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIHRvcDogNTUlO1xuICAgIHJpZ2h0OiAtNTVweDtcbiAgfVxufVxuXG4jZWRpdC1kYXRlcyAucm93IC5yb3cuZGF0ZXBpY2tlci1jb250YWluZXIgbGk6bGFzdC1vZi10eXBlLFxuI2VkaXQtZGF0ZXMgLmRhdGVwaWNrZXItY29udGFpbmVyIGxpOmxhc3Qtb2YtdHlwZSB7XG4gIHBhZGRpbmctbGVmdDogNjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTM3NWVtKSB7XG4gICNlZGl0LWRhdGVzIC5yb3cgLnJvdy5kYXRlcGlja2VyLWNvbnRhaW5lciBsaTpsYXN0LW9mLXR5cGUsXG4gICNlZGl0LWRhdGVzIC5kYXRlcGlja2VyLWNvbnRhaW5lciBsaTpsYXN0LW9mLXR5cGUge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbn1cblxuI2VkaXQtZGF0ZXMgLnJvdyAucm93LmRhdGVwaWNrZXItY29udGFpbmVyIGxpIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuI2VkaXQtZGF0ZXMgLmRhdGVwaWNrZXItY29udGFpbmVyIGxpIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvY2FsZW5kYXIuc3ZnXCIpLCB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvc2VsZWN0LWFycm93LnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJSwgOTUlIDU1JTtcbiAgYmFja2dyb3VuZC1zaXplOiA2MHB4IDYwcHgsIDE2cHggMTZweDtcbiAgcGFkZGluZzogMnB4IDMwcHggMCA3MnB4O1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgaGVpZ2h0OiA3NXB4O1xufVxuXG4jZWRpdC1kYXRlcyAuY2FsZW5kYXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0yM3B4O1xuICB6LWluZGV4OiAxMDAwMDtcbn1cblxuI2VkaXQtZGF0ZXMgLmJ1dHRvbi13ZWxsIHtcbiAgbWFyZ2luOiAzNXB4IDAgMjBweCAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45Mzc1ZW0pIHtcbiAgI2VkaXQtZGF0ZXMgLmJ1dHRvbi13ZWxsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyIHtcbiAgd2lkdGg6IDE3MHB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzIzMWYyMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luLXRvcDogM3B4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAwIDdweCA3cHggN3B4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogMzAwO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJveC1zaXppbmc6IGluaXRpYWw7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTM3NWVtKSB7XG4gICNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbjogLTEwcHggMCAwIDA7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbn1cblxuI2VkaXQtZGF0ZXMgLmRwLWNsZWFyZml4IHtcbiAgY2xlYXI6IGJvdGg7XG4gIGhlaWdodDogMDtcbiAgZm9udC1zaXplOiAwO1xufVxuXG4jZWRpdC1kYXRlcyAuY3VzdG9tLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcyLjI1ZW0pIHtcbiAgI2VkaXQtZGF0ZXMgLmN1c3RvbS10b3AgI21vYmlsZURlcGFydHVyZURhdGVEaXNwbGF5LFxuICAjZWRpdC1kYXRlcyAuY3VzdG9tLXRvcCAjbW9iaWxlUmV0dXJuRGF0ZURpc3BsYXksXG4gICNlZGl0LWRhdGVzIC5jdXN0b20tdG9wIC5jbG9zZS1jYWxlbmRhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4jZWRpdC1kYXRlcyAuY3VzdG9tLXRvcCAuZGlzcGxheS1kYXRlLWlucHV0cyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyMnB4O1xuICB3aWR0aDogNDAlO1xuICBwYWRkaW5nOiAycHggMCAwIDQwcHg7XG4gIG1hcmdpbjogMTVweCAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9jYWxlbmRhci5zdmdcIikgbm8tcmVwZWF0IDEwcHggNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuI2VkaXQtZGF0ZXMgLmN1c3RvbS10b3AgLmRpc3BsYXktZGF0ZS1pbnB1dHM6bGFzdC1vZi10eXBlIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkZGRkZGO1xufVxuXG4jZWRpdC1kYXRlcyAuY3VzdG9tLXRvcCAuY2xvc2UtY2FsZW5kYXIge1xuICB3aWR0aDogMTVweDtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMjAlIC0gMjVweCk7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyLmlubGluZS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2hhZG93OiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyLnNpbmdsZS1kYXRlIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyLm5vLXNob3J0Y3V0cyB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlci5uby10b3BiYXIge1xuICBwYWRkaW5nLXRvcDogMTJweDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmZvb3RlciB7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICBwYWRkaW5nLXRvcDogM3B4O1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciBiIHtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIGEge1xuICBjb2xvcjogIzEwN2JiZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIHRoLm1vbnRoLW5hbWUsXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtbmFtZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLnNlbGVjdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5zZWxlY3Qtd3JhcHBlcjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtZWxlbWVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLnNlbGVjdC13cmFwcGVyIHNlbGVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsZWZ0OiAwO1xuICB0b3A6IC0xcHg7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC1zdHlsZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xKVwiO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MSk7XG4gIG9wYWNpdHk6IDAuMDE7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIF9vdmVyZmxvdzogaGlkZGVuO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45Mzc1ZW0pIHtcbiAgI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUge1xuICB3aWR0aDogMjY2cHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45Mzc1ZW0pIHtcbiAgI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUge1xuICAgIHdpZHRoOiA4NSU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDcuNSU7XG4gIH1cbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUubW9udGgyIHtcbiAgd2lkdGg6IDI2NnB4O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtd3JhcHBlciB0YWJsZSB0aCxcbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIHRkIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgbWFyZ2luOiAwcHg7XG4gIHBhZGRpbmc6IDBweDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgdGgge1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ5LjkzNzVlbSkge1xuICAjZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAubW9udGgtd3JhcHBlciB0YWJsZSB0aCB7XG4gICAgd2lkdGg6IDE0LjI4NSU7XG4gIH1cbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheSB7XG4gIG1pbi13aWR0aDogMjhweDtcbiAgbWF4LXdpZHRoOiAzOHB4O1xuICBtaW4taGVpZ2h0OiAyMnB4O1xuICBtYXgtaGVpZ2h0OiAyNHB4O1xuICBwYWRkaW5nOiA4cHggNXB4IDJweCA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBtYXJnaW46IDNweCBhdXRvO1xuICBjb2xvcjogI2E3YTdhNztcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45Mzc1ZW0pIHtcbiAgI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheSB7XG4gICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgIG1heC1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgZGl2LmRheS5sYXN0TW9udGgsICNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIGRpdi5kYXkubmV4dE1vbnRoIHtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheS5jaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlY2IyZjtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLndlZWstbmFtZSB7XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIC5kYXkuaGFzLXRvb2x0aXAge1xuICBjdXJzb3I6IGhlbHAgIWltcG9ydGFudDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheS5oYXMtdG9vbHRpcCAudG9vbHRpcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC50aW1lIGxhYmVsIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheS50b01vbnRoLnZhbGlkIHtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheS50b01vbnRoLmhvdmVyaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlY2IyZjtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheS5uZXh0TW9udGgsICNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIC5kYXkubGFzdE1vbnRoIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheS5yZWFsLXRvZGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheS5yZWFsLXRvZGF5LmNoZWNrZWQsICNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5tb250aC13cmFwcGVyIHRhYmxlIC5kYXkucmVhbC10b2RheS5ob3ZlcmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgdGFibGUgLmNhcHRpb24ge1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIHRhYmxlIC5jYXB0aW9uID4gdGg6Zmlyc3Qtb2YtdHlwZSwgI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgdGFibGUgLmNhcHRpb24gPiB0aDpsYXN0LW9mLXR5cGUge1xuICB3aWR0aDogMjdweDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgdGFibGUgLmNhcHRpb24gLm5leHQsXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciB0YWJsZSAuY2FwdGlvbiAucHJldiB7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIHRhYmxlIC5jYXB0aW9uIC5uZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNXB4O1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciB0YWJsZSAuY2FwdGlvbiAubmV4dDpob3ZlcixcbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIHRhYmxlIC5jYXB0aW9uIC5wcmV2OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMjMxZjIwO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZ2FwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBmbG9hdDogbGVmdDtcbiAgdG9wOiAtNXB4O1xuICBtYXJnaW46IDAgMTBweCAtMTBweDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZ2FwIC5nYXAtbGluZXMge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5nYXAgLmdhcC1saW5lIHtcbiAgaGVpZ2h0OiAxNXB4O1xuICB3aWR0aDogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5nYXAgLmdhcC1saW5lIC5nYXAtMSB7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCAjRkZGRkZGO1xuICBib3JkZXItdG9wOiA4cHggc29saWQgIzIzMWYyMDtcbiAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICMyMzFmMjA7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5nYXAgLmdhcC1saW5lIC5nYXAtMiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMHB4O1xuICB6LWluZGV4OiAyO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDhweCBzb2xpZCAjRkZGRkZGO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZ2FwIC5nYXAtbGluZSAuZ2FwLTMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDhweDtcbiAgei1pbmRleDogMjtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA4cHggc29saWQgI0ZGRkZGRjtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmdhcCAuZ2FwLXRvcC1tYXNrIHtcbiAgd2lkdGg6IDZweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMXB4O1xuICBsZWZ0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHotaW5kZXg6IDM7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5nYXAgLmdhcC1ib3R0b20tbWFzayB7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogMXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTFweDtcbiAgbGVmdDogN3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICB6LWluZGV4OiAzO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuc2VsZWN0ZWQtZGF5cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhciB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmRycF90b3AtYmFyIC5lcnJvci10b3AsXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZHJwX3RvcC1iYXIgLm5vcm1hbC10b3Age1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZHJwX3RvcC1iYXIgLmRlZmF1bHQtdG9wIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhci5lcnJvciAuZGVmYXVsdC10b3Age1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZHJwX3RvcC1iYXIuZXJyb3IgLmVycm9yLXRvcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI0ZEMEUzNTtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmRycF90b3AtYmFyLm5vcm1hbCAuZGVmYXVsdC10b3Age1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZHJwX3RvcC1iYXIubm9ybWFsIC5ub3JtYWwtdG9wIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5kcnBfdG9wLWJhci5ub3JtYWwgLm5vcm1hbC10b3AgLnNlbGVjdGlvbi10b3Age1xuICBjb2xvcjogIzIzMWYyMDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmRycF90b3AtYmFyIC5hcHBseS1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwcHg7XG4gIHRvcDogNnB4O1xuICBwYWRkaW5nOiAzcHggNXB4O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlcjogc29saWQgMXB4ICMwMDc2YTM7XG4gIGJhY2tncm91bmQ6ICMwMDk1Y2Q7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oIzAwYWRlZSksIHRvKCMwMDc4YTUpKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMDBhZGVlLCAjMDA3OGE1KTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwYWRlZScsIGVuZENvbG9yc3RyPScjMDA3OGE1Jyk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmRycF90b3AtYmFyIC5hcHBseS1idG4uZGlzYWJsZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjNjA2MDYwO1xuICBib3JkZXI6IHNvbGlkIDFweCAjYjdiN2I3O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCNmZmYpLCB0bygjZWRlZGVkKSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiwgI2VkZWRlZCk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZmZmZmYnLCBlbmRDb2xvcnN0cj0nI2VkZWRlZCcpO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAudGltZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIuc2luZ2xlLW1vbnRoIC50aW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC50aW1lIGlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDEyOXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMjBweDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLnRpbWUxIHtcbiAgd2lkdGg6IDE4MHB4O1xuICBwYWRkaW5nOiAwIDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jZWRpdC1kYXRlcyAudGltZTIge1xuICB3aWR0aDogMTgwcHg7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC50aW1lMSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAudGltZTIge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5ob3VyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbiNlZGl0LWRhdGVzIC5taW51dGUge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZmlyc3QtZGF0ZS1zZWxlY3RlZCxcbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5sYXN0LWRhdGUtc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAuZmlyc3QtZGF0ZS1zZWxlY3RlZDpiZWZvcmUsXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAubGFzdC1kYXRlLXNlbGVjdGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2Njtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTM3NWVtKSB7XG4gICNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyIC5maXJzdC1kYXRlLXNlbGVjdGVkLFxuICAjZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAubGFzdC1kYXRlLXNlbGVjdGVkIHtcbiAgICBtYXgtd2lkdGg6IDI1cHggIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiAyNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmRhdGUtcmFuZ2UtbGVuZ3RoLXRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogLTRweDtcbiAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBwYWRkaW5nOiAwIDZweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAtd2Via2l0LWZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICAtbW96LWZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICAtbXMtZmlsdGVyOiBkcm9wLXNoYWRvdygwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4zKSk7XG4gIC1vLWZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpKTtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIgLmRhdGUtcmFuZ2UtbGVuZ3RoLXRpcDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gIGJvdHRvbTogLTRweDtcbn1cblxuI2VkaXQtZGF0ZXMgLmRhdGUtcGlja2VyLXdyYXBwZXIudHdvLW1vbnRocy5uby1nYXAgLm1vbnRoMSAubmV4dCxcbiNlZGl0LWRhdGVzIC5kYXRlLXBpY2tlci13cmFwcGVyLnR3by1tb250aHMubm8tZ2FwIC5tb250aDIgLnByZXYge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAud2Vlay1udW1iZXIge1xuICBwYWRkaW5nOiA1cHggMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICBjb2xvcjogIzIzMWYyMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4jZWRpdC1kYXRlcyAuZGF0ZS1waWNrZXItd3JhcHBlciAud2Vlay1udW1iZXIud2Vlay1udW1iZXItc2VsZWN0ZWQge1xuICBjb2xvcjogIzIzMWYyMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgI2VkaXQtZGF0ZXMge1xuICAgIG1pbi1oZWlnaHQ6IDU5MHB4O1xuICB9XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIHtcbiAgbWluLWhlaWdodDogNTUwcHg7XG4gIC8qIENvdW50cnkvUmVnaW9uIFNlbGVjdG9yICovXG4gIC8qIERpc3BsYXkgRmllbGQgKi9cbiAgLyogU2VsZWN0b3IgQnV0dG9uICovXG4gIC8qIERpc3BsYXkgR3JpZCAqL1xuICAvKiBDb3VudHJ5IExpc3RlciAqL1xuICAvKiBBdXRvQ29tcGxldGUgKi9cbiAgLyogUG9wdWxhciBEZXN0aW5hdGlvbnMgKi9cbn1cblxuI2VkaXQtZGVzdGluYXRpb24gI2NvdW50cnkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAjY291bnRyeS5mb2N1c0xldmVsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzEwN2JiZjtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gI2NvdW50cnkuZm9jdXNMZXZlbDpmb2N1cywgI2VkaXQtZGVzdGluYXRpb24gI2NvdW50cnkuZm9jdXNMZXZlbDphY3RpdmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTA3YmJmO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiBsYWJlbCNjb3VudHJ5LWVycm9yLmVycm9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xM3B4O1xuICBtYXJnaW46IDA7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1tZW51LXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogMjJweDtcbiAgaGVpZ2h0OiAyMnB4O1xuICBtYXJnaW46IC01MHB4IDEwcHggMCAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgdXJsKFwiLi4vaW1hZ2VzL2ljb25zL3NlbGVjdC1hcnJvdy5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWluZGVudDogLTMwMHB4O1xuICB6LWluZGV4OiA2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1tZW51LXRvZ2dsZTpob3ZlciwgI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUtdG9nZ2xlOmZvY3VzLCAjZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudS10b2dnbGU6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOTBweDtcbiAgei1pbmRleDogNDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMjcycHg7XG4gIGhlaWdodDogMzgwcHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgLyogUmVnaW9uL0NvdW50cnkgR3JvdXBpbmcgKi9cbiAgLyogTGFiZWxzL0xlZ2VuZHMgKi9cbiAgLyogT3BlbmluZyBSZWdpb25zICovXG4gIC8qIENvbHVtbnMgKi9cbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgLnJlZ2lvbi1jb250YWluZXIge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNzVweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAucmVnaW9uLWNvbnRhaW5lciB7XG4gICAgLyogT25seSBhZmZlY3RzIGxhcmdlIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAzODVweDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgfVxufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAucmVnaW9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgLnJlZ2lvbiB7XG4gICAgd2lkdGg6IDM4NXB4O1xuICB9XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1tZW51IC5yZWdpb24uYWN0aXZlIHtcbiAgei1pbmRleDogMTAwMDtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgLnJlZ2lvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIC5yZWdpb24tbGViZWwge1xuICBiYWNrZ3JvdW5kOiAjNjY2NjY2O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1tZW51IC5yZWdpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyAucmVnaW9uLWxlYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1tZW51IC5yZWdpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyAucmVnaW9uLWxlYmVsIHN0cm9uZyB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kOiAjNjY2NjY2O1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSBsZWdlbmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMDtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgLnJlZ2lvbi1sZWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBtaW4td2lkdGg6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAucmVnaW9uLWxlYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1tZW51IC5yZWdpb24tbGViZWwgc3Ryb25nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgLnJlZ2lvbi1sZWJlbCBzdHJvbmcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB+IGRpdi5kZXN0aW5hdGlvbi1saXN0LXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmbG9hdDogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwgfiBkaXYuZGVzdGluYXRpb24tbGlzdC13cmFwcGVyIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsIH4gZGl2LmRlc3RpbmF0aW9uLWxpc3Qtd3JhcHBlciB7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDI1MHB4O1xuICBjbGlwOiBhdXRvO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCB+IGRpdi5kZXN0aW5hdGlvbi1saXN0LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCB+IGRpdi5kZXN0aW5hdGlvbi1saXN0LXdyYXBwZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMzg0cHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgKyBsYWJlbCB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAuZGVzdGluYXRpb24tbGlzdCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZsb2F0OiBub25lO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAuZGVzdGluYXRpb24tbGlzdCB7XG4gICAgLyogT25seSBhZmZlY3RzIGxhcmdlIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxNjBweDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgLmRlc3RpbmF0aW9uLWxpc3QgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1tZW51IC5kZXN0aW5hdGlvbi1saXN0IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjNjY2NjY2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAuZGVzdGluYXRpb24tbGlzdCBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLW1lbnUgLmRlc3RpbmF0aW9uLWxpc3QgbGFiZWwge1xuICBtaW4taGVpZ2h0OiAzNXB4O1xuICBtYXJnaW46IDAgMCAwIDEwcHg7XG4gIHBhZGRpbmc6IDEzcHggMTVweCAwIDEwcHg7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAuZGVzdGluYXRpb24tbGlzdCBsYWJlbCB7XG4gICAgLyogT25seSBhZmZlY3RzIGxhcmdlIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIHBhZGRpbmc6IDhweCAwIDAgMTBweDtcbiAgfVxufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAuZGVzdGluYXRpb24tbGlzdCBsYWJlbDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbWVudSAuZGVzdGluYXRpb24tbGlzdCBsYWJlbDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1saXN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDAgMTZweCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tbGlzdCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLWxpc3QgbGkgYnV0dG9uIHtcbiAgaGVpZ2h0OiA1MHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDEycHggNDVweCAxMnB4IDI1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiY2JjYmM7XG4gIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMjMxZjIwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGIHVybChcIi4uL2ltYWdlcy9idXR0b25zL2Nsb3NlLnN2Z1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDIwcHggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEzcHggMTNweDtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLWxpc3QgbGkgYnV0dG9uOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTA3YmJmO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuYWRkLWRlc3RpbmF0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMjVweDtcbiAgbWFyZ2luOiAxMnB4IDAgMCAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltYWdlcy9pY29ucy9hZGQtaWNvbi5zdmdcIikgbm8tcmVwZWF0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDI1cHg7XG4gIHRleHQtaW5kZW50OiAtMTAwMHB4O1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuYWRkLWRlc3RpbmF0aW9uOmhvdmVyLCAjZWRpdC1kZXN0aW5hdGlvbiAuYWRkLWRlc3RpbmF0aW9uOmFjdGl2ZSwgI2VkaXQtZGVzdGluYXRpb24gLmFkZC1kZXN0aW5hdGlvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tYXV0b2NvbXBsZXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA0O1xuICBwYWRkaW5nOiAxMHB4IDAgMDtcbiAgdG9wOiAwO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tYXV0b2NvbXBsZXRlIC51aS1hdXRvY29tcGxldGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIG1pbi13aWR0aDogMjcycHg7XG4gIG1heC13aWR0aDogNzgwcHg7XG4gIGhlaWdodDogMjUwcHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDJweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1hdXRvY29tcGxldGUgLnVpLWF1dG9jb21wbGV0ZSB7XG4gICAgbWF4LXdpZHRoOiAyODBweDtcbiAgfVxufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW0sXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW06aG92ZXIsXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW06Zm9jdXMsXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW06YWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDdweCAwIDAgMzBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbTpmb2N1cyxcbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbTpob3Zlcjpmb2N1cyxcbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbTpmb2N1czpmb2N1cyxcbiNlZGl0LWRlc3RpbmF0aW9uIC5kZXN0aW5hdGlvbi1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbTphY3RpdmU6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAuZGVzdGluYXRpb24tYXV0b2NvbXBsZXRlIC51aS1tZW51IC51aS1zdGF0ZS1mb2N1cyB7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC51aS1idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAudWktYnV0dG9uLnVpLXN0YXRlLWFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLnBvcHVsYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogNDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICBtYXgtaGVpZ2h0OiAzOTBweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDJweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAjZWRpdC1kZXN0aW5hdGlvbiAucG9wdWxhciB7XG4gICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAucG9wdWxhciB1bCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwcHggMCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAucG9wdWxhciBzdHJvbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBjb2xvcjogIzIzMWYyMDtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5wb3B1bGFyIGxpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAucG9wdWxhciBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA3cHggMCA3cHggMjBweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMjMxZjIwO1xuICBmb250LWZhbWlseTogSGVsdmV0aWNhO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLnBvcHVsYXIgYTphY3RpdmUsICNlZGl0LWRlc3RpbmF0aW9uIC5wb3B1bGFyIGE6Zm9jdXMsICNlZGl0LWRlc3RpbmF0aW9uIC5wb3B1bGFyIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLnBvcHVsYXIgYTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5zZWxlY3RSZWdpb24gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweCAwIDEwcHggMzBweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5zZWxlY3RSZWdpb24gYTphY3RpdmUsICNlZGl0LWRlc3RpbmF0aW9uIC5zZWxlY3RSZWdpb24gYTpmb2N1cywgI2VkaXQtZGVzdGluYXRpb24gLnNlbGVjdFJlZ2lvbiBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5zZWxlY3RSZWdpb24gYTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5zZWxlY3RSZWdpb24gZW0ge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiAjMjMxZjIwO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiBzZWN0aW9uIGgyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLmRlc3RpbmF0aW9uLWxpc3Qtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4jZWRpdC1kZXN0aW5hdGlvbiBhLnVpLWJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzY2NjY2NjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC51aS1tZW51IC51aS1tZW51LWl0ZW0td3JhcHBlcixcbiNlZGl0LWRlc3RpbmF0aW9uIC51aS1tZW51IC51aS1tZW51LWl0ZW0td3JhcHBlci51aS1zdGF0ZS1hY3RpdmUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiByZW0tY2FjbCgxNXB4KTtcbn1cblxuI2VkaXQtZGVzdGluYXRpb24gLnVpLW1lbnUgLnVpLW1lbnUtaXRlbS13cmFwcGVyLnVpLXN0YXRlLWFjdGl2ZSxcbiNlZGl0LWRlc3RpbmF0aW9uIC51aS1tZW51IC51aS1tZW51LWl0ZW0td3JhcHBlci51aS1zdGF0ZS1hY3RpdmUudWktc3RhdGUtYWN0aXZlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5idXR0b24td2VsbCB7XG4gIG1hcmdpbjogMzVweCAwIDIwcHggMDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTM3NWVtKSB7XG4gICNlZGl0LWRlc3RpbmF0aW9uIC5idXR0b24td2VsbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbiNlZGl0LWRlc3RpbmF0aW9uIC5wb3B1cC1lcnJvci1tc2cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0MHB4IDA7XG4gIGNvbG9yOiByZWQ7XG59XG5cbiNlZGl0LXBsYW4ge1xuICAvKiBDb3ZlcmFnZSBhbmQgQWRkLU9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xufVxuXG4jZWRpdC1wbGFuIGgyLm1vZGFsLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3Mi4xODc1ZW0pIHtcbiAgI2VkaXQtcGxhbiBoMi5tb2RhbC10aXRsZSB7XG4gICAgLyogT25seSBhZmZlY3RzIGxhcmdlLW1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgcGFkZGluZzogOTBweCAzMHB4IDIwcHggMzBweDtcbiAgICBtYXJnaW46IDAgLTIwcHggMjBweCAtMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2FjdGl2ZS1wb2xpY2llcy5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciAwO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNTNweCA2OHB4O1xuICB9XG4gICNlZGl0LXBsYW4gaDIubW9kYWwtdGl0bGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltYWdlcy9pY29ucy9tb2JpbGUtZGV0YWlscy5wbmdcIik7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuXG4jZWRpdC1wbGFuIC5vZmZlci1jb3B5IHtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG59XG5cbiNlZGl0LXBsYW4gLm9mZmVyLWNvcHkgaDIge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2VkaXQtcGxhbiAub2ZmZXItY29weSBoMiB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuI2VkaXQtcGxhbiAub2ZmZXItY29weSBwIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNlZGl0LXBsYW4gLm9mZmVyLWNvcHkgcCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IHtcbiAgbWFyZ2luOiAwIC00MHB4IC00MHB4IC00MHB4O1xuICBwYWRkaW5nOiA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3Mi4xODc1ZW0pIHtcbiAgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBsYXJnZS1tZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgIG1hcmdpbjogMCAtMjBweCAtNjBweCAtMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbiAgfVxufVxuXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyLjE4NzVlbSkge1xuICAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCBoMiB7XG4gICAgLyogT25seSBhZmZlY3RzIGxhcmdlLW1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLmFkZC1vbi1jb3B5IHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLmxlYWQtaW4ge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCB7XG4gIG1hcmdpbjogMCAwIDYwcHggMDtcbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWF4LWhlaWdodDogMjk0cHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5oZWxwLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmhlbHAsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmhlbHAsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuaGVscCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMnB4O1xuICByaWdodDogMTJweDtcbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDI2OXB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIDQwcHggMjBweCAwO1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2hhZG93OiAwIDJweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgNjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIuMTg3NWVtKSB7XG4gICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSxcbiAgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSxcbiAgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbGFyZ2UtbWVkaXVtIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gIH1cbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLmx1Z2dhZ2UsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0ubHVnZ2FnZSwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLkxVR0csICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uTFVHRyxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0ubHVnZ2FnZSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uTFVHRyxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbS5sdWdnYWdlLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtLkxVR0cge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvbHVnZ2FnZS5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogNzBweCA3MHB4O1xufVxuXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0ubHVnZ2FnZS1wcmVtaXVtLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLmx1Z2dhZ2UtcHJlbWl1bSwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLk5FV0ZPUk9MRCwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5ORVdGT1JPTEQsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLmx1Z2dhZ2UtcHJlbWl1bSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uTkVXRk9ST0xELFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtLmx1Z2dhZ2UtcHJlbWl1bSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbS5ORVdGT1JPTEQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvbHVnZ2FnZS1wcmVtaXVtLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5tb3RvcmN5Y2xlLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLm1vdG9yY3ljbGUsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5NVENMVFdPLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLk1UQ0xUV08sXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLm1vdG9yY3ljbGUsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLk1UQ0xUV08sXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0ubW90b3JjeWNsZSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbS5NVENMVFdPIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL21vdG9yLXNwb3J0LnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5jYW5jZWxsYXRpb24sICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uY2FuY2VsbGF0aW9uLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uQ0FOWCwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5DQU5YLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5jYW5jZWxsYXRpb24sXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLkNBTlgsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0uY2FuY2VsbGF0aW9uLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtLkNBTlgge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvY2FuY2VsbGF0aW9uLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS53aW50ZXIsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0ud2ludGVyLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uU05TUFJUUywgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5TTlNQUlRTLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uU05TUFJUUzMsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uU05TUFJUUzMsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLndpbnRlcixcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uU05TUFJUUyxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uU05TUFJUUzMsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0ud2ludGVyLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtLlNOU1BSVFMsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0uU05TUFJUUzMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvd2ludGVyLXNwb3J0LnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5jcnVpc2UsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uY3J1aXNlLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uQ1JTLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLkNSUywgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLkNSUzIsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uQ1JTMixcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uY3J1aXNlLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5DUlMsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLkNSUzIsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0uY3J1aXNlLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtLkNSUyxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbS5DUlMyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2NydWlzZS5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogNzBweCA3MHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDcwcHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5yZW50YWwtY2FyLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLnJlbnRhbC1jYXIsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5SVENSLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLlJUQ1IsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLnJlbnRhbC1jYXIsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLlJUQ1IsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0ucmVudGFsLWNhcixcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbS5SVENSIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2Nhci1yZW50YWwuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggNzBweDtcbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLmFkdmVudHVyZSwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5hZHZlbnR1cmUsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5BRFZBQ1QsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uQURWQUNULCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uQURWQUNUMywgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5BRFZBQ1QzLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5hZHZlbnR1cmUsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLkFEVkFDVCxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uQURWQUNUMyxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbS5hZHZlbnR1cmUsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0uQURWQUNULFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtLkFEVkFDVDMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvYWR2ZW50dXJlLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5lbGVjdHJvbmljcywgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5lbGVjdHJvbmljcywgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLkVMRUMsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uRUxFQyxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uZWxlY3Ryb25pY3MsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLkVMRUMsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0uZWxlY3Ryb25pY3MsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0uRUxFQyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9lbGVjdHJvbmljcy5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogNzBweCA3MHB4O1xufVxuXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0ud2ludGVyLXBsdXMsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0ud2ludGVyLXBsdXMsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5TTlNQUlRTMiwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5TTlNQUlRTMixcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0ud2ludGVyLXBsdXMsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLlNOU1BSVFMyLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtLndpbnRlci1wbHVzLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtLlNOU1BSVFMyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL3dpbnRlci1zcG9ydC1wbHVzLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5vdmVyc2Vhcy1tZWRpY2FsLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtLm92ZXJzZWFzLW1lZGljYWwsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5BR0VDQkEsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0uQUdFQ0JBLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5vdmVyc2Vhcy1tZWRpY2FsLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbS5BR0VDQkEsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0ub3ZlcnNlYXMtbWVkaWNhbCxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbS5BR0VDQkEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvbWVkaWNhbC5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogNzBweCA3MHB4O1xufVxuXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0gbGVnZW5kLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIGxlZ2VuZCxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0gbGVnZW5kLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtIGxlZ2VuZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDE0MHB4IDAgMCAwO1xufVxuXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0gbGVnZW5kIC5leHRyYS10aXRsZSwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSBsZWdlbmQgLmV4dHJhLXRpdGxlLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSBsZWdlbmQgLmV4dHJhLXRpdGxlLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtIGxlZ2VuZCAuZXh0cmEtdGl0bGUge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIC5leHRyYS1wcmljZSwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuZXh0cmEtcHJpY2UsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIC5leHRyYS1wcmljZSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbSAuZXh0cmEtcHJpY2Uge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtIC5zZWxlY3Rpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDUwcHg7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIC5zZWxlY3Rpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIC5zZWxlY3Rpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIC5zZWxlY3Rpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIC5zZWxlY3Rpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmhvdmVyLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIC5zZWxlY3Rpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXIsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmZvY3VzLCAjZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaS5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgLmFkZC1vbi1pdGVtIC5zZWxlY3Rpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6Zm9jdXMsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmFjdGl2ZSwgI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmFjdGl2ZSxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpob3ZlcixcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpmb2N1cyxcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDphY3RpdmUsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpob3ZlcixcbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmZvY3VzLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkgLmFkZC1vbi1pdGVtIC5zZWxlY3Rpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6YWN0aXZlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQ6ICM2MGQxNTQ7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC5wdXJjaGFzZS1saXN0IGxpLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsLFxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnB1cmNoYXNlLWxpc3QgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIC5hZGQtb24taXRlbSAuc2VsZWN0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwsXG4jZWRpdC1wbGFuIC5hZGQtb24tY29udGVudCAucHVyY2hhc2UtbGlzdCBsaSAuYWRkLW9uLWl0ZW0gLnNlbGVjdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsIHtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG4gIGJhY2tncm91bmQ6ICM2MGQxNTQgdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2NoZWNrbWFyay13aGl0ZS5wbmdcIikgbm8tcmVwZWF0IGNlbnRlcjtcbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnZpZXctYWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGNvbG9yOiAjMTA3YmJmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC52aWV3LWFsbDpiZWZvcmUsICNlZGl0LXBsYW4gLmFkZC1vbi1jb250ZW50IC52aWV3LWFsbDphZnRlciB7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYyg1MCUgLSAxMDBweCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW4tdG9wOiAxMnB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnZpZXctYWxsOmJlZm9yZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuI2VkaXQtcGxhbiAuYWRkLW9uLWNvbnRlbnQgLnZpZXctYWxsOmFmdGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbiNlZGl0LXBsYW4gLmJ1dHRvbi13ZWxsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIuMTg3NWVtKSB7XG4gICNlZGl0LXBsYW4gLmJ1dHRvbi13ZWxsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuI2VkaXQtcGxhbiAuYnV0dG9uLXdlbGwgLnByaW1hcnktYWN0aW9uIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4jZWRpdC1sdWdnYWdlIC5hZGQtb24taWNvbiwgI2VkaXQtY2FuY2VsbGF0aW9uIC5hZGQtb24taWNvbiwgI2VkaXQtcmVudGFsLWNhciAuYWRkLW9uLWljb24sXG4jZWRpdC1MVUdHIC5hZGQtb24taWNvbiwgI2VkaXQtQ0FOWCAuYWRkLW9uLWljb24sICNlZGl0LVJUQ1IgLmFkZC1vbi1pY29uLCAjZWRpdC1BRFZBQ1QgLmFkZC1vbi1pY29uLCAjZWRpdC1NVENMVFdPIC5hZGQtb24taWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1heC13aWR0aDogNjBweDtcbiAgbWFyZ2luOiAwIDMwcHggMzBweCAwO1xuICBtYXgtaGVpZ2h0OiA2MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2VkaXQtbHVnZ2FnZSAuYWRkLW9uLWljb24sICNlZGl0LWNhbmNlbGxhdGlvbiAuYWRkLW9uLWljb24sICNlZGl0LXJlbnRhbC1jYXIgLmFkZC1vbi1pY29uLFxuICAjZWRpdC1MVUdHIC5hZGQtb24taWNvbiwgI2VkaXQtQ0FOWCAuYWRkLW9uLWljb24sICNlZGl0LVJUQ1IgLmFkZC1vbi1pY29uLCAjZWRpdC1BRFZBQ1QgLmFkZC1vbi1pY29uLCAjZWRpdC1NVENMVFdPIC5hZGQtb24taWNvbiB7XG4gICAgbWFyZ2luOiAwIDIwcHggMjBweCAwO1xuICB9XG59XG5cbiNlZGl0LWx1Z2dhZ2UgaDMsICNlZGl0LWNhbmNlbGxhdGlvbiBoMywgI2VkaXQtcmVudGFsLWNhciBoMyxcbiNlZGl0LUxVR0cgaDMsICNlZGl0LUNBTlggaDMsICNlZGl0LVJUQ1IgaDMsICNlZGl0LUFEVkFDVCBoMywgI2VkaXQtTVRDTFRXTyBoMyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbiNlZGl0LWx1Z2dhZ2UgLmhlbHAsICNlZGl0LWNhbmNlbGxhdGlvbiAuaGVscCwgI2VkaXQtcmVudGFsLWNhciAuaGVscCxcbiNlZGl0LUxVR0cgLmhlbHAsICNlZGl0LUNBTlggLmhlbHAsICNlZGl0LVJUQ1IgLmhlbHAsICNlZGl0LUFEVkFDVCAuaGVscCwgI2VkaXQtTVRDTFRXTyAuaGVscCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMnB4O1xuICBsZWZ0OiAxMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2VkaXQtbHVnZ2FnZSAuaGVscCwgI2VkaXQtY2FuY2VsbGF0aW9uIC5oZWxwLCAjZWRpdC1yZW50YWwtY2FyIC5oZWxwLFxuICAjZWRpdC1MVUdHIC5oZWxwLCAjZWRpdC1DQU5YIC5oZWxwLCAjZWRpdC1SVENSIC5oZWxwLCAjZWRpdC1BRFZBQ1QgLmhlbHAsICNlZGl0LU1UQ0xUV08gLmhlbHAge1xuICAgIHRvcDogMTBweDtcbiAgfVxufVxuXG4jZWRpdC1sdWdnYWdlIC5sdWdnYWdlLWxpc3QsICNlZGl0LWNhbmNlbGxhdGlvbiAubHVnZ2FnZS1saXN0LCAjZWRpdC1yZW50YWwtY2FyIC5sdWdnYWdlLWxpc3QsXG4jZWRpdC1MVUdHIC5sdWdnYWdlLWxpc3QsICNlZGl0LUNBTlggLmx1Z2dhZ2UtbGlzdCwgI2VkaXQtUlRDUiAubHVnZ2FnZS1saXN0LCAjZWRpdC1BRFZBQ1QgLmx1Z2dhZ2UtbGlzdCwgI2VkaXQtTVRDTFRXTyAubHVnZ2FnZS1saXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDYwMHB4O1xuICBtYXJnaW46IDUwcHggYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICNlZGl0LWx1Z2dhZ2UgLmx1Z2dhZ2UtbGlzdCwgI2VkaXQtY2FuY2VsbGF0aW9uIC5sdWdnYWdlLWxpc3QsICNlZGl0LXJlbnRhbC1jYXIgLmx1Z2dhZ2UtbGlzdCxcbiAgI2VkaXQtTFVHRyAubHVnZ2FnZS1saXN0LCAjZWRpdC1DQU5YIC5sdWdnYWdlLWxpc3QsICNlZGl0LVJUQ1IgLmx1Z2dhZ2UtbGlzdCwgI2VkaXQtQURWQUNUIC5sdWdnYWdlLWxpc3QsICNlZGl0LU1UQ0xUV08gLmx1Z2dhZ2UtbGlzdCB7XG4gICAgbWluLXdpZHRoOiAzMjBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzJweCk7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIH1cbn1cblxuI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlLCAjZWRpdC1jYW5jZWxsYXRpb24gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSwgI2VkaXQtcmVudGFsLWNhciAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlLFxuI2VkaXQtTFVHRyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlLCAjZWRpdC1DQU5YIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUsICNlZGl0LVJUQ1IgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSwgI2VkaXQtQURWQUNUIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUsICNlZGl0LU1UQ0xUV08gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbiNlZGl0LWx1Z2dhZ2UgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSAuYWRkLWl0ZW0sICNlZGl0LWNhbmNlbGxhdGlvbiAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIC5hZGQtaXRlbSwgI2VkaXQtcmVudGFsLWNhciAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIC5hZGQtaXRlbSxcbiNlZGl0LUxVR0cgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSAuYWRkLWl0ZW0sICNlZGl0LUNBTlggLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSAuYWRkLWl0ZW0sICNlZGl0LVJUQ1IgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSAuYWRkLWl0ZW0sICNlZGl0LUFEVkFDVCAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIC5hZGQtaXRlbSwgI2VkaXQtTVRDTFRXTyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIC5hZGQtaXRlbSB7XG4gIGhlaWdodDogNTBweDtcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbiAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogMjVweDtcbn1cblxuI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRoZWFkIC5yb3c6bGFzdC1vZi10eXBlIHRkLCAjZWRpdC1jYW5jZWxsYXRpb24gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0aGVhZCAucm93Omxhc3Qtb2YtdHlwZSB0ZCwgI2VkaXQtcmVudGFsLWNhciAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRoZWFkIC5yb3c6bGFzdC1vZi10eXBlIHRkLFxuI2VkaXQtTFVHRyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRoZWFkIC5yb3c6bGFzdC1vZi10eXBlIHRkLCAjZWRpdC1DQU5YIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGhlYWQgLnJvdzpsYXN0LW9mLXR5cGUgdGQsICNlZGl0LVJUQ1IgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0aGVhZCAucm93Omxhc3Qtb2YtdHlwZSB0ZCwgI2VkaXQtQURWQUNUIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGhlYWQgLnJvdzpsYXN0LW9mLXR5cGUgdGQsICNlZGl0LU1UQ0xUV08gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0aGVhZCAucm93Omxhc3Qtb2YtdHlwZSB0ZCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNlZGl0LWx1Z2dhZ2UgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93LCAjZWRpdC1jYW5jZWxsYXRpb24gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93LCAjZWRpdC1yZW50YWwtY2FyIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyxcbiNlZGl0LUxVR0cgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93LCAjZWRpdC1DQU5YIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdywgI2VkaXQtUlRDUiAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3csICNlZGl0LUFEVkFDVCAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3csICNlZGl0LU1UQ0xUV08gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbn1cblxuI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6Zmlyc3Qtb2YtdHlwZSB0ZCwgI2VkaXQtY2FuY2VsbGF0aW9uIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkLCAjZWRpdC1yZW50YWwtY2FyIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkLFxuI2VkaXQtTFVHRyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6Zmlyc3Qtb2YtdHlwZSB0ZCwgI2VkaXQtQ0FOWCAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6Zmlyc3Qtb2YtdHlwZSB0ZCwgI2VkaXQtUlRDUiAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6Zmlyc3Qtb2YtdHlwZSB0ZCwgI2VkaXQtQURWQUNUIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkLCAjZWRpdC1NVENMVFdPIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6Zmlyc3Qtb2YtdHlwZSB0ZCwgI2VkaXQtY2FuY2VsbGF0aW9uIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkLCAjZWRpdC1yZW50YWwtY2FyIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkLFxuICAjZWRpdC1MVUdHIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkLCAjZWRpdC1DQU5YIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkLCAjZWRpdC1SVENSIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpmaXJzdC1vZi10eXBlIHRkLCAjZWRpdC1BRFZBQ1QgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93OmZpcnN0LW9mLXR5cGUgdGQsICNlZGl0LU1UQ0xUV08gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93OmZpcnN0LW9mLXR5cGUgdGQge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gIH1cbn1cblxuI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6bnRoLWNoaWxkKG9kZCksICNlZGl0LWNhbmNlbGxhdGlvbiAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6bnRoLWNoaWxkKG9kZCksICNlZGl0LXJlbnRhbC1jYXIgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93Om50aC1jaGlsZChvZGQpLFxuI2VkaXQtTFVHRyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6bnRoLWNoaWxkKG9kZCksICNlZGl0LUNBTlggLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93Om50aC1jaGlsZChvZGQpLCAjZWRpdC1SVENSIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpudGgtY2hpbGQob2RkKSwgI2VkaXQtQURWQUNUIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdzpudGgtY2hpbGQob2RkKSwgI2VkaXQtTVRDTFRXTyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3c6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxuXG4jZWRpdC1sdWdnYWdlIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyB0ZCwgI2VkaXQtY2FuY2VsbGF0aW9uIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyB0ZCwgI2VkaXQtcmVudGFsLWNhciAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgdGQsXG4jZWRpdC1MVUdHIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyB0ZCwgI2VkaXQtQ0FOWCAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgdGQsICNlZGl0LVJUQ1IgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IHRkLCAjZWRpdC1BRFZBQ1QgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IHRkLCAjZWRpdC1NVENMVFdPIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyB0ZCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDAgNXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgdGQsICNlZGl0LWNhbmNlbGxhdGlvbiAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgdGQsICNlZGl0LXJlbnRhbC1jYXIgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IHRkLFxuICAjZWRpdC1MVUdHIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyB0ZCwgI2VkaXQtQ0FOWCAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgdGQsICNlZGl0LVJUQ1IgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IHRkLCAjZWRpdC1BRFZBQ1QgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IHRkLCAjZWRpdC1NVENMVFdPIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyB0ZCB7XG4gICAgcGFkZGluZzogNXB4IDEwcHggNXB4IDEwcHg7XG4gIH1cbn1cblxuI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLCAjZWRpdC1jYW5jZWxsYXRpb24gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IC5yZW1vdmUtaXRlbSwgI2VkaXQtcmVudGFsLWNhciAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLFxuI2VkaXQtTFVHRyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLCAjZWRpdC1DQU5YIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyAucmVtb3ZlLWl0ZW0sICNlZGl0LVJUQ1IgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IC5yZW1vdmUtaXRlbSwgI2VkaXQtQURWQUNUIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyAucmVtb3ZlLWl0ZW0sICNlZGl0LU1UQ0xUV08gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IC5yZW1vdmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtaW5kZW50OiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmNiY2JjO1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMDYyNXJlbTtcbiAgY29sb3I6ICMyMzFmMjA7XG4gIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLCAjZWRpdC1jYW5jZWxsYXRpb24gLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IC5yZW1vdmUtaXRlbSwgI2VkaXQtcmVudGFsLWNhciAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLFxuICAjZWRpdC1MVUdHIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyAucmVtb3ZlLWl0ZW0sICNlZGl0LUNBTlggLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IC5yZW1vdmUtaXRlbSwgI2VkaXQtUlRDUiAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLCAjZWRpdC1BRFZBQ1QgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IC5yZW1vdmUtaXRlbSwgI2VkaXQtTVRDTFRXTyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cblxuI2VkaXQtbHVnZ2FnZSAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLmJ0bi1yZW12b2UsICNlZGl0LWNhbmNlbGxhdGlvbiAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLmJ0bi1yZW12b2UsICNlZGl0LXJlbnRhbC1jYXIgLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IC5yZW1vdmUtaXRlbS5idG4tcmVtdm9lLFxuI2VkaXQtTFVHRyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLmJ0bi1yZW12b2UsICNlZGl0LUNBTlggLmx1Z2dhZ2UtbGlzdCAubHVnZ2FnZS1pdGVtcy10YWJsZSB0Ym9keSAucm93IC5yZW1vdmUtaXRlbS5idG4tcmVtdm9lLCAjZWRpdC1SVENSIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyAucmVtb3ZlLWl0ZW0uYnRuLXJlbXZvZSwgI2VkaXQtQURWQUNUIC5sdWdnYWdlLWxpc3QgLmx1Z2dhZ2UtaXRlbXMtdGFibGUgdGJvZHkgLnJvdyAucmVtb3ZlLWl0ZW0uYnRuLXJlbXZvZSwgI2VkaXQtTVRDTFRXTyAubHVnZ2FnZS1saXN0IC5sdWdnYWdlLWl0ZW1zLXRhYmxlIHRib2R5IC5yb3cgLnJlbW92ZS1pdGVtLmJ0bi1yZW12b2Uge1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHBhZGRpbmc6IDAgMjVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogNDhweDtcbn1cblxuI2VkaXQtbHVnZ2FnZS5yZW50YWwtb3B0aW9ucywgI2VkaXQtbHVnZ2FnZS5jYW5jZWxsYXRpb24tb3B0aW9ucywgI2VkaXQtY2FuY2VsbGF0aW9uLnJlbnRhbC1vcHRpb25zLCAjZWRpdC1jYW5jZWxsYXRpb24uY2FuY2VsbGF0aW9uLW9wdGlvbnMsICNlZGl0LXJlbnRhbC1jYXIucmVudGFsLW9wdGlvbnMsICNlZGl0LXJlbnRhbC1jYXIuY2FuY2VsbGF0aW9uLW9wdGlvbnMsXG4jZWRpdC1MVUdHLnJlbnRhbC1vcHRpb25zLFxuI2VkaXQtTFVHRy5jYW5jZWxsYXRpb24tb3B0aW9ucywgI2VkaXQtQ0FOWC5yZW50YWwtb3B0aW9ucywgI2VkaXQtQ0FOWC5jYW5jZWxsYXRpb24tb3B0aW9ucywgI2VkaXQtUlRDUi5yZW50YWwtb3B0aW9ucywgI2VkaXQtUlRDUi5jYW5jZWxsYXRpb24tb3B0aW9ucywgI2VkaXQtQURWQUNULnJlbnRhbC1vcHRpb25zLCAjZWRpdC1BRFZBQ1QuY2FuY2VsbGF0aW9uLW9wdGlvbnMsICNlZGl0LU1UQ0xUV08ucmVudGFsLW9wdGlvbnMsICNlZGl0LU1UQ0xUV08uY2FuY2VsbGF0aW9uLW9wdGlvbnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMzAwcHg7XG4gIG1hcmdpbjogNTBweCBhdXRvO1xufVxuXG4jZWRpdC1sdWdnYWdlLnJlbnRhbC1vcHRpb25zIC5tb2RhbC1idXR0b24sICNlZGl0LWx1Z2dhZ2UuY2FuY2VsbGF0aW9uLW9wdGlvbnMgLm1vZGFsLWJ1dHRvbiwgI2VkaXQtY2FuY2VsbGF0aW9uLnJlbnRhbC1vcHRpb25zIC5tb2RhbC1idXR0b24sICNlZGl0LWNhbmNlbGxhdGlvbi5jYW5jZWxsYXRpb24tb3B0aW9ucyAubW9kYWwtYnV0dG9uLCAjZWRpdC1yZW50YWwtY2FyLnJlbnRhbC1vcHRpb25zIC5tb2RhbC1idXR0b24sICNlZGl0LXJlbnRhbC1jYXIuY2FuY2VsbGF0aW9uLW9wdGlvbnMgLm1vZGFsLWJ1dHRvbixcbiNlZGl0LUxVR0cucmVudGFsLW9wdGlvbnMgLm1vZGFsLWJ1dHRvbixcbiNlZGl0LUxVR0cuY2FuY2VsbGF0aW9uLW9wdGlvbnMgLm1vZGFsLWJ1dHRvbiwgI2VkaXQtQ0FOWC5yZW50YWwtb3B0aW9ucyAubW9kYWwtYnV0dG9uLCAjZWRpdC1DQU5YLmNhbmNlbGxhdGlvbi1vcHRpb25zIC5tb2RhbC1idXR0b24sICNlZGl0LVJUQ1IucmVudGFsLW9wdGlvbnMgLm1vZGFsLWJ1dHRvbiwgI2VkaXQtUlRDUi5jYW5jZWxsYXRpb24tb3B0aW9ucyAubW9kYWwtYnV0dG9uLCAjZWRpdC1BRFZBQ1QucmVudGFsLW9wdGlvbnMgLm1vZGFsLWJ1dHRvbiwgI2VkaXQtQURWQUNULmNhbmNlbGxhdGlvbi1vcHRpb25zIC5tb2RhbC1idXR0b24sICNlZGl0LU1UQ0xUV08ucmVudGFsLW9wdGlvbnMgLm1vZGFsLWJ1dHRvbiwgI2VkaXQtTVRDTFRXTy5jYW5jZWxsYXRpb24tb3B0aW9ucyAubW9kYWwtYnV0dG9uIHtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiAyNXB4O1xufVxuXG4jZWRpdC1sdWdnYWdlIC5zZWNvbmRhcnktYWN0aW9uLCAjZWRpdC1jYW5jZWxsYXRpb24gLnNlY29uZGFyeS1hY3Rpb24sICNlZGl0LXJlbnRhbC1jYXIgLnNlY29uZGFyeS1hY3Rpb24sXG4jZWRpdC1MVUdHIC5zZWNvbmRhcnktYWN0aW9uLCAjZWRpdC1DQU5YIC5zZWNvbmRhcnktYWN0aW9uLCAjZWRpdC1SVENSIC5zZWNvbmRhcnktYWN0aW9uLCAjZWRpdC1BRFZBQ1QgLnNlY29uZGFyeS1hY3Rpb24sICNlZGl0LU1UQ0xUV08gLnNlY29uZGFyeS1hY3Rpb24ge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG59XG5cbiNlZGl0LWx1Z2dhZ2UgLmJ1dHRvbi13ZWxsLCAjZWRpdC1jYW5jZWxsYXRpb24gLmJ1dHRvbi13ZWxsLCAjZWRpdC1yZW50YWwtY2FyIC5idXR0b24td2VsbCxcbiNlZGl0LUxVR0cgLmJ1dHRvbi13ZWxsLCAjZWRpdC1DQU5YIC5idXR0b24td2VsbCwgI2VkaXQtUlRDUiAuYnV0dG9uLXdlbGwsICNlZGl0LUFEVkFDVCAuYnV0dG9uLXdlbGwsICNlZGl0LU1UQ0xUV08gLmJ1dHRvbi13ZWxsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzIuMTg3NWVtKSB7XG4gICNlZGl0LWx1Z2dhZ2UgLmJ1dHRvbi13ZWxsLCAjZWRpdC1jYW5jZWxsYXRpb24gLmJ1dHRvbi13ZWxsLCAjZWRpdC1yZW50YWwtY2FyIC5idXR0b24td2VsbCxcbiAgI2VkaXQtTFVHRyAuYnV0dG9uLXdlbGwsICNlZGl0LUNBTlggLmJ1dHRvbi13ZWxsLCAjZWRpdC1SVENSIC5idXR0b24td2VsbCwgI2VkaXQtQURWQUNUIC5idXR0b24td2VsbCwgI2VkaXQtTVRDTFRXTyAuYnV0dG9uLXdlbGwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4jZWRpdC1sdWdnYWdlIC5idXR0b24td2VsbCAucHJpbWFyeS1hY3Rpb24sICNlZGl0LWNhbmNlbGxhdGlvbiAuYnV0dG9uLXdlbGwgLnByaW1hcnktYWN0aW9uLCAjZWRpdC1yZW50YWwtY2FyIC5idXR0b24td2VsbCAucHJpbWFyeS1hY3Rpb24sXG4jZWRpdC1MVUdHIC5idXR0b24td2VsbCAucHJpbWFyeS1hY3Rpb24sICNlZGl0LUNBTlggLmJ1dHRvbi13ZWxsIC5wcmltYXJ5LWFjdGlvbiwgI2VkaXQtUlRDUiAuYnV0dG9uLXdlbGwgLnByaW1hcnktYWN0aW9uLCAjZWRpdC1BRFZBQ1QgLmJ1dHRvbi13ZWxsIC5wcmltYXJ5LWFjdGlvbiwgI2VkaXQtTVRDTFRXTyAuYnV0dG9uLXdlbGwgLnByaW1hcnktYWN0aW9uIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4jZWRpdC1sdWdnYWdlIC5jb3ZlcmFnZS1mb3JtIGxhYmVsLCAjZWRpdC1jYW5jZWxsYXRpb24gLmNvdmVyYWdlLWZvcm0gbGFiZWwsICNlZGl0LXJlbnRhbC1jYXIgLmNvdmVyYWdlLWZvcm0gbGFiZWwsXG4jZWRpdC1MVUdHIC5jb3ZlcmFnZS1mb3JtIGxhYmVsLCAjZWRpdC1DQU5YIC5jb3ZlcmFnZS1mb3JtIGxhYmVsLCAjZWRpdC1SVENSIC5jb3ZlcmFnZS1mb3JtIGxhYmVsLCAjZWRpdC1BRFZBQ1QgLmNvdmVyYWdlLWZvcm0gbGFiZWwsICNlZGl0LU1UQ0xUV08gLmNvdmVyYWdlLWZvcm0gbGFiZWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSwgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdLCAjYWRkLXRyYXZlbGxlciB7XG4gIC8qIFRyYXZlbGxlcnMgKi9cbiAgLyogL1RyYXZlbGxlcnMgKi9cbn1cblxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLnRyYXZlbGxlci1saW5lLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLnRyYXZlbGxlci1saW5lLCAjYWRkLXRyYXZlbGxlciAudHJhdmVsbGVyLWxpbmUge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAudHJhdmVsbGVyLWxpbmUgaDMsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAudHJhdmVsbGVyLWxpbmUgaDMsICNhZGQtdHJhdmVsbGVyIC50cmF2ZWxsZXItbGluZSBoMyB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC50cmF2ZWxsZXItbGluZSBoMyAucmVtb3ZlLWxpbmssIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAudHJhdmVsbGVyLWxpbmUgaDMgLnJlbW92ZS1saW5rLCAjYWRkLXRyYXZlbGxlciAudHJhdmVsbGVyLWxpbmUgaDMgLnJlbW92ZS1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMTA3YmJmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5uby1lZGl0LCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLm5vLWVkaXQsICNhZGQtdHJhdmVsbGVyIC5uby1lZGl0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luOiAxMHB4IDAgNTBweCAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45Mzc1ZW0pIHtcbiAgI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLm5vLWVkaXQsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAubm8tZWRpdCwgI2FkZC10cmF2ZWxsZXIgLm5vLWVkaXQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBtYXJnaW46IDVweCAwIDIwcHggMDtcbiAgfVxufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAubWFzay1iaXJ0aC1kYXRlLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLm1hc2stYmlydGgtZGF0ZSwgI2FkZC10cmF2ZWxsZXIgLm1hc2stYmlydGgtZGF0ZSB7XG4gIHBhZGRpbmc6IDJweCAzMHB4IDJweCA3MHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvY2FsZW5kYXIuc3ZnXCIpIG5vLXJlcGVhdCAxMnB4IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMnB4IDMycHg7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXgsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4LCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IGZpZWxkc2V0LCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCBmaWVsZHNldCwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCBmaWVsZHNldCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggLmhlYWxpeC1ibG9jaywgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5oZWFsaXggLmhlYWxpeC1ibG9jaywgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCAuaGVhbGl4LWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggLmhlYWxpeC1ibG9jayA+IGxhYmVsLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCAuaGVhbGl4LWJsb2NrID4gbGFiZWwsICNhZGQtdHJhdmVsbGVyIC5oZWFsaXggLmhlYWxpeC1ibG9jayA+IGxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC1mYW1pbHk6IFwiTXVzZW8gU2FucyBSb3VuZGVkXCI7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICBjb2xvcjogIzIzMWYyMDtcbn1cblxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLmhlYWxpeCAuaGVhbGl4LWJsb2NrID4gbGFiZWwuZXJyb3IyLCAjZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IC5oZWFsaXgtYmxvY2sgPiBsYWJlbC5lcnJvciwgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5oZWFsaXggLmhlYWxpeC1ibG9jayA+IGxhYmVsLmVycm9yMiwgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5oZWFsaXggLmhlYWxpeC1ibG9jayA+IGxhYmVsLmVycm9yLCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IC5oZWFsaXgtYmxvY2sgPiBsYWJlbC5lcnJvcjIsICNhZGQtdHJhdmVsbGVyIC5oZWFsaXggLmhlYWxpeC1ibG9jayA+IGxhYmVsLmVycm9yIHtcbiAgY29sb3I6ICNmZjNmNTc7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggLmhlYWxpeC1ibG9jayBsYWJlbC5lcnJvciwgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5oZWFsaXggLmhlYWxpeC1ibG9jayBsYWJlbC5lcnJvciwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCAuaGVhbGl4LWJsb2NrIGxhYmVsLmVycm9yIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLmhlYWxpeCAuaGVhbGl4LWJsb2NrIC51bmFibGUsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IC5oZWFsaXgtYmxvY2sgLnVuYWJsZSwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCAuaGVhbGl4LWJsb2NrIC51bmFibGUge1xuICBtYXJnaW46IDQwcHggMDtcbiAgY29sb3I6ICNGRDBFMzU7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbn1cblxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLmhlYWxpeCAuaGVhbGl4LWJsb2NrIC5jb25zZW50LCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCAuaGVhbGl4LWJsb2NrIC5jb25zZW50LCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IC5oZWFsaXgtYmxvY2sgLmNvbnNlbnQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LWZhbWlseTogXCJNdXNlbyBTYW5zIFJvdW5kZWRcIjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IC5oZWFsaXgtYmxvY2sgI2VtY180X25vdGljZSwgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5oZWFsaXggLmhlYWxpeC1ibG9jayAjZW1jXzRfbm90aWNlLCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IC5oZWFsaXgtYmxvY2sgI2VtY180X25vdGljZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggbGVnZW5kLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCBsZWdlbmQsICNhZGQtdHJhdmVsbGVyIC5oZWFsaXggbGVnZW5kIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogMzAwO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBjb2xvcjogIzIzMWYyMDtcbn1cblxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLmhlYWxpeCAuaW5uZXIsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IC5pbm5lciwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCAuaW5uZXIge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdG9wOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggLmVtY0luZm8sIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IC5lbWNJbmZvLCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IC5lbWNJbmZvIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLmhlYWxpeCAuYnV0dG9uLXdlbGwsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IC5idXR0b24td2VsbCwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCAuYnV0dG9uLXdlbGwge1xuICBtYXJnaW46IDIwcHggMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCAuYnV0dG9uLXdlbGwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCAuYnV0dG9uLXdlbGwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDMycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk11c2VvIFNhbnMgUm91bmRlZFwiO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmNiY2JjO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggLmJ1dHRvbi13ZWxsIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggLmJ1dHRvbi13ZWxsIGlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyLCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzEwN2JiZjtcbn1cblxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLmhlYWxpeCAuYnV0dG9uLXdlbGwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpmb2N1cywgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5oZWFsaXggLmJ1dHRvbi13ZWxsIGlucHV0W3R5cGU9XCJidXR0b25cIl06Zm9jdXMsICNhZGQtdHJhdmVsbGVyIC5oZWFsaXggLmJ1dHRvbi13ZWxsIGlucHV0W3R5cGU9XCJidXR0b25cIl06Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjRENEQ0RDO1xufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmxhc3QtY2hpbGQsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmxhc3QtY2hpbGQsICNhZGQtdHJhdmVsbGVyIC5oZWFsaXggLmJ1dHRvbi13ZWxsIGlucHV0W3R5cGU9XCJidXR0b25cIl06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ5LjkzNzVlbSkge1xuICAjZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmxhc3QtY2hpbGQsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmxhc3QtY2hpbGQsICNhZGQtdHJhdmVsbGVyIC5oZWFsaXggLmJ1dHRvbi13ZWxsIGlucHV0W3R5cGU9XCJidXR0b25cIl06bGFzdC1jaGlsZCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggLmJ1dHRvbi13ZWxsIC5kZWNsaW5lLWVtYywgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5oZWFsaXggLmJ1dHRvbi13ZWxsIC5kZWNsaW5lLWVtYywgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCAuYnV0dG9uLXdlbGwgLmRlY2xpbmUtZW1jIHtcbiAgbWFyZ2luLWxlZnQ6IDQwcHg7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggdGFibGUsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IHRhYmxlLCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggdGhlYWQsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IHRoZWFkLCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IHRoZWFkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IHRoZWFkLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCB0aGVhZCwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCB0aGVhZCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IHRoZWFkIHRoLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCB0aGVhZCB0aCwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCB0aGVhZCB0aCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IHRoLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCB0aCwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCB0aCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IHRoLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCB0aCwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCB0aCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgfVxufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IHRkLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCB0ZCwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCB0ZCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IHRkLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCB0ZCwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCB0ZCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgfVxufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IHRyLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCB0ciwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCB0ciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5oZWFsaXggdHIsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuaGVhbGl4IHRyLCAjYWRkLXRyYXZlbGxlciAuaGVhbGl4IHRyIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgfVxufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuaGVhbGl4IGVtLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmhlYWxpeCBlbSwgI2FkZC10cmF2ZWxsZXIgLmhlYWxpeCBlbSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLmhlYWxpeCBlbSwgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5oZWFsaXggZW0sICNhZGQtdHJhdmVsbGVyIC5oZWFsaXggZW0ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAubm90aWNlLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLm5vdGljZSwgI2FkZC10cmF2ZWxsZXIgLm5vdGljZSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTM3NWVtKSB7XG4gICNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5ub3RpY2UsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAubm90aWNlLCAjYWRkLXRyYXZlbGxlciAubm90aWNlIHtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5ub3RpY2UsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAubm90aWNlLCAjYWRkLXRyYXZlbGxlciAubm90aWNlIHtcbiAgICBtYXJnaW4tbGVmdDogNTVweDtcbiAgfVxufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuZGVjbGFyYXRpb24gaDIsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuZGVjbGFyYXRpb24gaDIsICNhZGQtdHJhdmVsbGVyIC5kZWNsYXJhdGlvbiBoMiB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5kZWNsYXJhdGlvbiBoMywgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5kZWNsYXJhdGlvbiBoMywgI2FkZC10cmF2ZWxsZXIgLmRlY2xhcmF0aW9uIGgzIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuZGVjbGFyYXRpb24gcCwgc2VjdGlvbltpZF49XCJlZGl0LXRyYXZlbGxlci1zZWNvbmRhcnktXCJdIC5kZWNsYXJhdGlvbiBwLCAjYWRkLXRyYXZlbGxlciAuZGVjbGFyYXRpb24gcCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnkgLmJ1dHRvbi13ZWxsLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmJ1dHRvbi13ZWxsLCAjYWRkLXRyYXZlbGxlciAuYnV0dG9uLXdlbGwge1xuICBtYXJnaW46IDM1cHggMCAyMHB4IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ5LjkzNzVlbSkge1xuICAjZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAuYnV0dG9uLXdlbGwsIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSAuYnV0dG9uLXdlbGwsICNhZGQtdHJhdmVsbGVyIC5idXR0b24td2VsbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbiNlZGl0LXRyYXZlbGxlci1wcmltYXJ5IC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLmJ1dHRvbi13ZWxsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sICNhZGQtdHJhdmVsbGVyIC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4jZWRpdC10cmF2ZWxsZXItcHJpbWFyeSAucG9wdXAtZXJyb3ItbXNnLCBzZWN0aW9uW2lkXj1cImVkaXQtdHJhdmVsbGVyLXNlY29uZGFyeS1cIl0gLnBvcHVwLWVycm9yLW1zZywgI2FkZC10cmF2ZWxsZXIgLnBvcHVwLWVycm9yLW1zZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDQwcHggMDtcbiAgY29sb3I6IHJlZDtcbn1cblxuc2VjdGlvbltpZF49XCJlZGl0LWVtYy1yZWplY3RlZC1cIl0uZWRpdC1lbWMtcmVqZWN0ZWQtbW9kYWwgdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG5cbnNlY3Rpb25baWRePVwiZWRpdC1lbWMtcmVqZWN0ZWQtXCJdLmVkaXQtZW1jLXJlamVjdGVkLW1vZGFsIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuc2VjdGlvbltpZF49XCJlZGl0LWVtYy1yZWplY3RlZC1cIl0uZWRpdC1lbWMtcmVqZWN0ZWQtbW9kYWwgdGhlYWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIHNlY3Rpb25baWRePVwiZWRpdC1lbWMtcmVqZWN0ZWQtXCJdLmVkaXQtZW1jLXJlamVjdGVkLW1vZGFsIHRoZWFkIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIHNlY3Rpb25baWRePVwiZWRpdC1lbWMtcmVqZWN0ZWQtXCJdLmVkaXQtZW1jLXJlamVjdGVkLW1vZGFsIHRoZWFkIHRoIHtcbiAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB9XG59XG5cbnNlY3Rpb25baWRePVwiZWRpdC1lbWMtcmVqZWN0ZWQtXCJdLmVkaXQtZW1jLXJlamVjdGVkLW1vZGFsIHRyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgc2VjdGlvbltpZF49XCJlZGl0LWVtYy1yZWplY3RlZC1cIl0uZWRpdC1lbWMtcmVqZWN0ZWQtbW9kYWwgdHIge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgZGlzcGxheTogdGFibGUtcm93O1xuICB9XG59XG5cbnNlY3Rpb25baWRePVwiZWRpdC1lbWMtcmVqZWN0ZWQtXCJdLmVkaXQtZW1jLXJlamVjdGVkLW1vZGFsIHRoLFxuc2VjdGlvbltpZF49XCJlZGl0LWVtYy1yZWplY3RlZC1cIl0uZWRpdC1lbWMtcmVqZWN0ZWQtbW9kYWwgLm1lZGljYWwtY29uZGl0b2luX190ZCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgd2lkdGg6IDUwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBzZWN0aW9uW2lkXj1cImVkaXQtZW1jLXJlamVjdGVkLVwiXS5lZGl0LWVtYy1yZWplY3RlZC1tb2RhbCB0aCxcbiAgc2VjdGlvbltpZF49XCJlZGl0LWVtYy1yZWplY3RlZC1cIl0uZWRpdC1lbWMtcmVqZWN0ZWQtbW9kYWwgLm1lZGljYWwtY29uZGl0b2luX190ZCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgfVxufVxuXG5zZWN0aW9uW2lkXj1cImVkaXQtZW1jLXJlamVjdGVkLVwiXS5lZGl0LWVtYy1yZWplY3RlZC1tb2RhbCB0ZCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBzZWN0aW9uW2lkXj1cImVkaXQtZW1jLXJlamVjdGVkLVwiXS5lZGl0LWVtYy1yZWplY3RlZC1tb2RhbCB0ZCB7XG4gICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgfVxufVxuXG5zZWN0aW9uW2lkXj1cImVkaXQtZW1jLXJlamVjdGVkLVwiXS5lZGl0LWVtYy1yZWplY3RlZC1tb2RhbCBlbSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgc2VjdGlvbltpZF49XCJlZGl0LWVtYy1yZWplY3RlZC1cIl0uZWRpdC1lbWMtcmVqZWN0ZWQtbW9kYWwgZW0ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5zZWN0aW9uW2lkXj1cImVkaXQtZW1jLXJlamVjdGVkLVwiXS5lZGl0LWVtYy1yZWplY3RlZC1tb2RhbCAuYnV0dG9uLXdlbGwge1xuICBtYXJnaW46IDM1cHggMCAyMHB4IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnNlY3Rpb25baWRePVwiZWRpdC1lbWMtcmVqZWN0ZWQtXCJdLmVkaXQtZW1jLXJlamVjdGVkLW1vZGFsIC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5zZWN0aW9uW2lkXj1cImVkaXQtZW1jLXJlamVjdGVkLVwiXS5lZGl0LWVtYy1yZWplY3RlZC1tb2RhbCAuYnV0dG9uLXdlbGwtbGluayB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbiNjbGFpbUZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yZWRpcmVjdC1tZXNzYWdlIHtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIC5wb2xpY3ktZGV0YWlscy1pbmZvcm1hdGlvbiAudHJhdmVsbGVyLWxpc3QgbGk6bnRoLW9mLXR5cGUobisyMSkgLmFkZC10cmF2ZWxsZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jdmlldy1hbGwtYmVuZWZpdHMgLmJlbmVmaXRzLXRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiN2aWV3LWFsbC1iZW5lZml0cyAuYmVuZWZpdHMtdGFibGUgdGhlYWQgdGgge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuI3ZpZXctYWxsLWJlbmVmaXRzIC5iZW5lZml0cy10YWJsZSB0aGVhZCB0aCBoMyB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDAgMCA0MHB4IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAjdmlldy1hbGwtYmVuZWZpdHMgLmJlbmVmaXRzLXRhYmxlIHRoZWFkIHRoIGgzIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuI3ZpZXctYWxsLWJlbmVmaXRzIC5iZW5lZml0cy10YWJsZSB0aCxcbiN2aWV3LWFsbC1iZW5lZml0cyAuYmVuZWZpdHMtdGFibGUgdGQge1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG5cbiN2aWV3LWFsbC1iZW5lZml0cyAuYmVuZWZpdHMtdGFibGUgdGguZGlzY291bnQge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG59XG5cbiN2aWV3LWFsbC1iZW5lZml0cyAuYmVuZWZpdHMtdGFibGUgdGQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnJldmVhbC5jYW5jZWwtcG9saWN5LW1vZGFsIHAge1xuICBtYXgtd2lkdGg6IDYxMHB4O1xuICBtYXJnaW46IDAgYXV0byAzMHB4IGF1dG87XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnJldmVhbC5jYW5jZWwtcG9saWN5LW1vZGFsIHAge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4ucmV2ZWFsLmNhbmNlbC1wb2xpY3ktbW9kYWwgLmJ1dHRvbi13ZWxsIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLnJldmVhbC5jYW5jZWwtcG9saWN5LW1vZGFsIC5idXR0b24td2VsbCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucmV2ZWFsLmNhbmNlbC1wb2xpY3ktbW9kYWwgLmJ1dHRvbi13ZWxsLWxpbmsge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucmV2ZWFsLm1lZGljYWwtcXVlc3Rpb24tbW9kYWwgcCB7XG4gIG1heC13aWR0aDogNjQwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnJldmVhbC5vdmVyLWFnZS1tb2RhbCBoMixcbi5yZXZlYWwub3Zlci1hZ2UtbW9kYWwgcCB7XG4gIG1heC13aWR0aDogNjQwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcbn1cblxuLnJldmVhbCBoMiB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5yZXZlYWwgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4ucmV2ZWFsIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW4tYm90dG9tOiA2cHg7XG59XG5cbi5yZXZlYWwgaDIuZGl2aWRlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucmV2ZWFsIGgyLmRpdmlkZXIge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG4ucmV2ZWFsIGgyLmRpdmlkZXI6YmVmb3JlLCAucmV2ZWFsIGgyLmRpdmlkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbnRlbnQ6ICcgJztcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDgwcHgpO1xuICBtYXJnaW4tdG9wOiAxOHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzY2NjY2Njtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5yZXZlYWwgaDIuZGl2aWRlcjpiZWZvcmUsIC5yZXZlYWwgaDIuZGl2aWRlcjphZnRlciB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gNTBweCk7XG4gIH1cbn1cblxuLnJldmVhbCBoMi5kaXZpZGVyOmJlZm9yZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4ucmV2ZWFsIGgyLmRpdmlkZXI6YWZ0ZXIge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5yZXZlYWwgLmJ1dHRvbi13ZWxsIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5yZXZlYWwgLmJ1dHRvbi13ZWxsLm5vLW1hcmdpbiB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnJldmVhbCAuYnV0dG9uLXdlbGwgYSB7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xufVxuXG4ucmV2ZWFsIC5wb3B1cC1lcnJvci1tc2cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0MHB4IDA7XG4gIGNvbG9yOiByZWQ7XG59XG5cbi8qIC0tIGxvZy1pbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaWNzcC1sb2dpbiAjcGFnZS10aXRsZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uaWNzcC1sb2dpbiAjcGFnZS10aXRsZSBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5pY3NwLWxvZ2luICNwYWdlLXRpdGxlIHAge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4uaWNzcC1sb2dpbiAjbG9naW4tZmllbGRzLWNsaWVudCB7XG4gIG1hcmdpbi10b3A6IDM1cHg7XG4gIG1hcmdpbi1ib3R0b206IDgwcHg7XG59XG5cbi5pY3NwLWxvZ2luICNsb2dpbi1maWVsZHMtY2xpZW50IGEge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4uaWNzcC1sb2dpbiAuYnV0dG9uLXdlbGwge1xuICBtYXJnaW46IDAgLTAuMjE4NzVyZW0gMS41cmVtO1xuICBwYWRkaW5nOiAyNXB4IDAgMCAwO1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4uaWNzcC1sb2dpbiAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuYm9keS5wYXRoLS1sb2dpbiBkaXYuZHJ1cGFsLW1lc3NhZ2VzLm1lc3NhZ2VzLS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51c2VyLWxvZ2luLWZvcm0gLmZvcm0taXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxudGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG59XG5cbnRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuLnBhdGgtLXBvbGljeSAuYmxvY2stcGFnZS10aXRsZS1ibG9jayxcbi5wYXRoLS1sb2dpbiAuYmxvY2stcGFnZS10aXRsZS1ibG9jayxcbi5wYXRoLS0yZmEgLmJsb2NrLXBhZ2UtdGl0bGUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDA7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4uY2xlYXJmaXgge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbiogaHRtbCAuY2xlYXJmaXgge1xuICBoZWlnaHQ6IDElO1xufVxuXG4uY2xlYXJmaXgge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5wb3B1cC1lcnJvci1tc2cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0MHB4IDA7XG4gIGNvbG9yOiByZWQ7XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgUHJvamVjdCBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gRm9udCBGYWNlc1xuLy8gICAyLiBDb2xvcnNcbi8vICAgMy4gQmFja2dyb3VuZCBJbWFnZXNcblxuXG4vLyAwMS4gRm9udCBGYWNlc1xuLy8gLS0tLS0tLS0tLS1cblxuJGZvbnQtZmFjZS1ibGFjazogODAwO1xuJGZvbnQtZmFjZS1ib2xkOiA3MDA7XG4kZm9udC1mYWNlLW1lZGl1bTogNTAwO1xuJGZvbnQtZmFjZS1mb3JtLXJlZ3VsYXI6IDQwMDtcbiRmb250LWZhY2UtcmVndWxhcjogMzAwO1xuJGZvbnQtZmFjZS1saWdodDogMzAwO1xuXG4vLyAgIEZvbnQgRmFjZXNcbi8vd2VpZ2h0c1xuJGZvbnQtZmFjZS1ibGFjazogODAwO1xuJGZvbnQtZmFjZS1ib2xkOiA3MDA7XG4kZm9udC1mYWNlLW1lZGl1bTogNTAwO1xuJGZvbnQtZmFjZS1mb3JtLXJlZ3VsYXI6IDQwMDtcbiRmb250LWZhY2UtcmVndWxhcjogMzAwO1xuJGZvbnQtZmFjZS1saWdodDogMzAwO1xuXG4vL2ZhbWlsaWVzXG4kZm9udC1mYW1pbHktcHJpbWFyeTogJ011c2VvIFNhbnMgUm91bmRlZCc7XG4kZm9udC1mYW1pbHktcmVndWxhcjogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4kZm9udC1mYW1pbHktbWVkaXVtOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1ib2xkOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1zZWNvbmRhcnk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xuJGZvbnQtZmFtaWx5LXNlY29uZGFyeS1ib2xkOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1zZWNvbmRhcnktbWVkaXVtOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1zZWNvbmRhcnktY29uZGVuc2VkOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1mb3JtLXJlZ3VsYXI6IEhlbHZldGljYTtcblxuLy9zb3VyY2VzXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWxpZ2h0O1xuICBzcmM6IHVybCgnLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTMwMC13ZWJmb250LmVvdCcpLFxuICB1cmwoJy4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC0zMDAtd2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICB1cmwoJy4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC0zMDAtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgnLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTMwMC13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtMzAwLXdlYmZvbnQuc3ZnI211c2VvX3NhbnNfcm91bmRlZF8zMDByZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1tZWRpdW07XG4gIHNyYzogdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQuZW90JyksXG4gIHVybCgnLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTUwMC13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gIHVybCgnLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTUwMC13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICB1cmwoJy4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC01MDAtd2ViZm9udC5zdmcjbXVzZW9fc2Fuc19yb3VuZGVkXzUwMHJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4vLyAwMi4gQ29sb3JzXG4vLyAtLS0tLS0tLS0tLVxuXG4vLyBjb2xvciBuYW1lcyBmcm9tOiBodHRwOi8vY2hpci5hZy9wcm9qZWN0cy9uYW1lLXRoYXQtY29sb3IvXG4kY2JhLXBhbGV0dGU6IChcbiAgd2hpdGUtc29saWQ6ICNGRkZGRkYsXG4gIGJsYWNrLXNvbGlkOiAjMDAwMDAwLFxuICBhbGFiYXN0ZXItYXBwcm94OiAjRjhGOEY4LFxuICBjb25jcmV0ZS1zb2xpZDogI2YyZjJmMixcbiAgYWx0by1hcHByb3g6ICNEQ0RDREMsXG4gIGFwcGxlLWFwcHJveDogIzUxQzczQixcbiAgZGVuaW0tYXBwcm94OiAjMTA3YmJmLFxuICBkb3ZlLWdyYXktYXBwcm94OiAjNjY2NjY2LFxuICBzY2llbmNlLWJsdWU6ICMwMDY2Y2MsXG4gIGVtcGVyb3ItYXBwcm94OiAjNGY0YzRkLFxuICBnYWxsZXJ5LWFwcHJveDogI2ViZWJlYixcbiAgZ3JheS1hcHByb3g6ICM5MThmOGYsXG4gIG1pZC1ncmF5LWFwcHJveDogIzg1ODU4NSxcbiAgZHVzdHktZ3JheS1hcHByb3g6ICM5NTk1OTUsXG4gIG1lcmN1cnktYXBwcm94OiByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpLFxuICBtdXN0YXJkLWFwcHJveDogI2ZmZGI0YyxcbiAgc2lsdmVyLWFwcHJveDogI2JjYmNiYyxcbiAgc2lsdmVyLWNoYWxpY2UtYXBwcm94OiAjYTdhN2E3LFxuICBzdXBlcm5vdmEtYXBwcm94OiAjRkZDQzAwLFxuICBzdW4tZ2xvdy1hcHByb3g6ICNmZWNiMmYsXG4gIHRodW5kZXItYXBwcm94OiAjMjMxZjIwLFxuICB0b3JjaC1yZWQ6ICNGRDBFMzUsXG4gIGVtZXJhbGQtYXBwcm94OiAjNjBkMTU0LFxuICBvdXRyYWdlb3VzLW9yYW5nZS1hcHByb3g6ICNmZTUxMmYsXG4gIHZhbGVuY2lhLWFwcHJveDogI2QzNDY0NixcbiAgcGljdG9uLWJsdWUtYXBwcm94OiAjNGVjNGUyLFxuICBwaW5lLWdyZWVuLWFwcHJveDogIzAwNzQ2YixcbiAgbWlsYW5vLXJlZC1hcHByb3g6ICNiYjI1MDAsXG4gIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMSksXG4pO1xuXG4kYnctcGFsZXR0ZTogKFxuICBlbGVjdHJpYy1ibHVlOiAjMTNCNUVBLFxuICBkZWVwLWJsdWU6ICMwMDU1OTZcbik7XG5cbi8vIDAzLiBCYWNrZ3JvdW5kIEltYWdlc1xuLy8gLS0tLS0tLS0tLS1cblxuLy9NYWluXG4kY2hldnJvbi11cDogdXJsKCcuLi9pbWFnZXMvaWNvbnMvY2FyZXQtdXAuc3ZnJyk7XG4kY2hldnJvbi1kb3duOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9zZWxlY3QtYXJyb3cuc3ZnJyk7XG4kYmFja2dyb3VuZC1yYWRpbzogdXJsKCcuLi9pbWFnZXMvYnV0dG9ucy9yYWRpby5zdmcnKTsvL1xuJGJhY2tncm91bmQtcmFkaW8tb246IHVybCgnLi4vaW1hZ2VzL2J1dHRvbnMvcmFkaW8tb24ucG5nJyk7Ly9cbiRiYWNrZ3JvdW5kLWNoZWNrYm94OiB1cmwoJy4uL2ltYWdlcy9pY29ucy9jaGVjay1ib3guc3ZnJyk7Ly9cbiRiYWNrZ3JvdW5kLXNlbGVjdC1hcnJvdzogdXJsKCcuLi9pbWFnZXMvaWNvbnMvc2VsZWN0LWFycm93LnN2ZycpO1xuJGJhY2tncm91bmQtYXJyb3ctdXA6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2NhcmV0LXVwLnN2ZycpO1xuJGJhY2tncm91bmQtYXJyb3ctcmlnaHQ6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2NhcmV0LXJpZ2h0LnN2ZycpO1xuJGJhY2tncm91bmQtYXJyb3ctbGVmdDogdXJsKCcuLi9pbWFnZXMvaWNvbnMvY2FyZXQtbGVmdC5zdmcnKTtcbiRsaXN0LWNoZWNrOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9jaGVja21hcmsucG5nJyk7Ly9cbiR0cmF2ZWwtYWR2aXNvcnktaWNvbjogdXJsKCcuLi9pbWFnZXMvaWNvbnMvdHJhdmVsLWFkdmlzb3J5LnBuZycpO1xuJHRyYXZlbC1hZHZpc29yeS1tb2JpbGUtaWNvbjogdXJsKCcuLi9pbWFnZXMvaWNvbnMvdHJhdmVsLWFkdmlzb3J5LW1vYmlsZS5wbmcnKTtcbiRjbG9zZS1pY29uOiB1cmwoJy4uL2ltYWdlcy9idXR0b25zL2Nsb3NlLnN2ZycpO1xuXG4vLyBEYXNoYm9hcmRcbiRhY3RpdmUtcG9saWNpZXM6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2FjdGl2ZS1wb2xpY2llcy5zdmcnKTtcbiRwYXN0LXBvbGljaWVzOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9wYXN0LXBvbGljaWVzLnN2ZycpO1xuJGNsYWltczogdXJsKCcuLi9pbWFnZXMvaWNvbnMvY2xhaW1zLnN2ZycpO1xuJGNhbmNlbGxlZC1wb2xpY2llczogdXJsKCcuLi9pbWFnZXMvaWNvbnMvY2FsZW5kYXIuc3ZnJyk7XG4kYWN0aW9uLWNhbmNlbDogdXJsKCcuLi9pbWFnZXMvaWNvbnMvYWN0aW9uLWNhbmNlbC5wbmcnKTtcbiRhY3Rpb24tY2xhaW06IHVybCgnLi4vaW1hZ2VzL2ljb25zL2FjdGlvbi1jbGFpbS5wbmcnKTtcbiRhY3Rpb24tbWFuYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9hY3Rpb24tbWFuYWdlLnBuZycpO1xuJGFjdGlvbi12aWV3OiB1cmwoJy4uL2ltYWdlcy9pY29ucy9hY3Rpb24tdmlldy1tb2RpZnkucG5nJyk7XG4kYWN0aW9uLW1vYmlsZTogdXJsKCcuLi9pbWFnZXMvaWNvbnMvYWN0aW9uLWFycm93LnN2ZycpO1xuXG4vLyBQb2xpY3kgRGV0YWlsc1xuJHRyYXZlbGxlcnM6IHVybCgnLi4vaW1hZ2VzL2ljb25zL3RyYXZlbGxlci5zdmcnKTtcbiRlZGl0LWxpbms6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2VkaXQtbGluay5zdmcnKTtcbiRtb2JpbGUtZGV0YWlsczogdXJsKCcuLi9pbWFnZXMvaWNvbnMvbW9iaWxlLWRldGFpbHMucG5nJyk7XG4kYmFjay1saW5rOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9yZXR1cm4ucG5nJyk7XG5cbi8vIEdldCBhIFF1b3RlXG4kYmFja2dyb3VuZC13aGVyZTogdXJsKCcuLi9pbWFnZXMvaWNvbnMvaWNvbi13aGVyZS5zdmcnKTsvL1xuJGJhY2tncm91bmQtd2hlbjogdXJsKCcuLi9pbWFnZXMvaWNvbnMvaWNvbi1jYWxlbmRhci5zdmcnKTsvL1xuJGJhY2tncm91bmQtY2FsZW5kYXI6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2NhbGVuZGFyLnN2ZycpO1xuJGJhY2tncm91bmQtZGF0ZS1zZXBlcmF0b3I6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2RhdGUtZGFzaC5wbmcnKTtcbiRiYWNrZ3JvdW5kLWZvY3VzLWxldmVsOiB1cmwoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9ia2ctZm9jdXNsZXZlbC5naWYnKTtcbiRiYWNrZ3JvdW5kLXJlbW92ZS1jb3VudHJ5OiB1cmwoJy4uL2ltYWdlcy9idXR0b25zL2Nsb3NlLnN2ZycpO1xuJGJhY2tncm91bmQtYWRkLXRyYXZlbGxlcjogdXJsKCcuLi9pbWFnZXMvaWNvbnMvYWRkLWljb24uc3ZnJyk7XG4kYmFja2dyb3VuZC1yZW1vdmUtdHJhdmVsbGVyOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9pY29uLXJlbW92ZS10cmF2ZWxsZXIuc3ZnJyk7Ly9cbiRwcm9tby1jaGVjazogdXJsKCcuLi9pbWFnZXMvaWNvbnMvdGlja180LnBuZycpOy8vXG5cbi8vIFNwZWNpYWwgT2ZmZXJcbiRtb3Rvci1zcG9ydC1hZGQtb246IHVybCgnLi4vaW1hZ2VzL2ljb25zL21vdG9yLXNwb3J0LnN2ZycpO1xuJHdpbnRlci1zcG9ydC1hZGQtb246IHVybCgnLi4vaW1hZ2VzL2ljb25zL3dpbnRlci1zcG9ydC5zdmcnKTtcbiRjcnVpc2UtYWRkLW9uOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9jcnVpc2Uuc3ZnJyk7XG4kY2FyLXJlbnRhbC1hZGQtb246IHVybCgnLi4vaW1hZ2VzL2ljb25zL2Nhci1yZW50YWwuc3ZnJyk7XG4kYWR2ZW50dXJlLWFkZC1vbjogdXJsKCcuLi9pbWFnZXMvaWNvbnMvYWR2ZW50dXJlLnN2ZycpO1xuJG1lZGljYWwtb3Zlci04MC1hZGQtb246IHVybCgnLi4vaW1hZ2VzL2ljb25zL21lZGljYWwuc3ZnJyk7XG4kbHVnZ2FnZS1hZGQtb246IHVybCgnLi4vaW1hZ2VzL2ljb25zL2x1Z2dhZ2Uuc3ZnJyk7XG4kcHJlbWl1bS1sdWdnYWdlLWFkZC1vbjogdXJsKCcuLi9pbWFnZXMvaWNvbnMvbHVnZ2FnZS1wcmVtaXVtLnN2ZycpO1xuJGNhbmNlbGxhdGlvbi1hZGQtb246IHVybCgnLi4vaW1hZ2VzL2ljb25zL2NhbmNlbGxhdGlvbi5zdmcnKTtcbiRlbGVjdHJvbmljcy1hZGQtb246IHVybCgnLi4vaW1hZ2VzL2ljb25zL2VsZWN0cm9uaWNzLnN2ZycpO1xuJHdpbnRlci1zcG9ydC1wbHVzLWFkZC1vbjogdXJsKCcuLi9pbWFnZXMvaWNvbnMvd2ludGVyLXNwb3J0LXBsdXMuc3ZnJyk7XG4kc2VsZWN0ZWQtY2hlY2s6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2NoZWNrbWFyay13aGl0ZS5wbmcnKTtcblxuLy8gQWN0aXZhdGlvblxuJGJhY2tncm91bmQtYWN0aXZhdGlvbjogdXJsKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvYmtnLWFjdGl2YXRpb24ucG5nJyk7Ly9cblxuLy8gUGxhbiBPcHRpb25zXG4kYmFja2dyb3VuZC1leHRhLXBsdXM6IHVybCgnLi4vaW1hZ2VzL2ljb25zL3BsdXMucG5nJyk7XG4kYmFja2dyb3VuZC1leHRhLWNsb3NlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9jbG9zZS5wbmcnKTtcbiRiYWNrZ3JvdW5kLXBsdXM6IHVybCgnLi4vaW1hZ2VzL2ljb25zL3BsdXNfMy5wbmcnKTtcbiRiYWNrZ3JvdW5kLW1pbnVzOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9taW51cy5wbmcnKTtcbiRiYWNrZ3JvdW5kLXBkZjogdXJsKCcuLi9pbWFnZXMvaWNvbnMvcGRmLnBuZycpO1xuJGJhY2tncm91bmQtcmVtb3ZlLWx1Z2dhZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL3RyYXNoLnBuZycpO1xuXG4vL1RyYXZlbGxlcnNcblxuLy9QYXltZW50XG4kcGF5bWVudC1idXR0b246IHVybCgnLi4vaW1hZ2VzL2ljb25zL3BheW1lbnQtYnV0dG9uLnBuZycpO1xuXG4vLyBDb25maXJtYXRpb25cbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjMuMFxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0IFwiLi4vX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZVwiO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyBTZXR0aW5nc1xuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCBcInNldHRpbmdzL3NldHRpbmdzXCI7XG5cbi8vIFNhc3MgdXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyBHbG9iYWwgdmFyaWFibGVzIGFuZCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZygkZmxleDogZmFsc2UpIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG5cbiAgQGlmICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcbiAgfVxufVxuIiwiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1mb250LXNpemUgIT0gMTZweFxuICAgIG9yICRiYXNlLWxpbmUtaGVpZ2h0ICE9IDI0cHhcbiAgICBvciAkYmFzZS11bml0ICE9ICdlbSdcbiAgICBvciAkaDEtZm9udC1zaXplICE9IDIgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDItZm9udC1zaXplICE9IDEuNSAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDMtZm9udC1zaXplICE9IDEuMTcgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDQtZm9udC1zaXplICE9IDEgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDUtZm9udC1zaXplICE9IDAuODMgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDYtZm9udC1zaXplICE9IDAuNjcgKiAkYmFzZS1mb250LXNpemUge1xuICAgICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZG9jdW1lbnQpIHtcbiAgICAvKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNlY3Rpb25zKSB7XG4gICAgLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBib2R5IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGFydGljbGUsXG4gICAgYXNpZGUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBuYXYsXG4gICAgc2VjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiAqL1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMC42N2VtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgyLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgzLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg0LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg1LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg2IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg2LWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShncm91cGluZykge1xuICAgIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cblxuICAgICAgZGwsXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICovXG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBvbCxcbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGZpZ2NhcHRpb24sXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cblxuICAgIGZpZ3VyZSB7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDFlbSAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuXG4gICAgaHIge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIG1haW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBwLFxuICAgICAgcHJlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgcHJlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGxpbmtzKSB7XG4gICAgLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGE6YWN0aXZlLFxuICAgIGE6aG92ZXIge1xuICAgICAgb3V0bGluZS13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHRleHQpIHtcbiAgICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGFiYnJbdGl0bGVdIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgY29kZSxcbiAgICBrYmQsXG4gICAgc2FtcCB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuXG4gICAgZGZuIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1YixcbiAgICBzdXAge1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgYm90dG9tOiAtMC4yNWVtO1xuICAgIH1cblxuICAgIHN1cCB7XG4gICAgICB0b3A6IC0wLjVlbTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGVtYmVkZGVkKSB7XG4gICAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuXG4gICAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgc3ZnOm5vdCg6cm9vdCkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGZvcm1zKSB7XG4gICAgLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXQsXG4gICAgb3B0Z3JvdXAsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBmaWVsZHNldCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBsZWdlbmQge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMyAqL1xuICAgICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xuXG4gICAgcHJvZ3Jlc3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShpbnRlcmFjdGl2ZSkge1xuICAgIC8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1bW1hcnkge1xuICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKlxuICAgICAgICAgKiAxLiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICAgKiAyLiBTZXQgY29uc2lzdGVudCBzcGFjZSBmb3IgdGhlIGxpc3Qgc3R5bGUgaW1hZ2UuXG4gICAgICAgICAqL1xuXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTsgLyogMSAqL1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDsgLyogMiAqL1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAgICovXG5cbiAgICAgICAgbWVudSAmLFxuICAgICAgICBvbCAmLFxuICAgICAgICB1bCAmIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNjcmlwdGluZykge1xuICAgIC8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGNhbnZhcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZW1wbGF0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaGlkZGVuKSB7XG4gICAgLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFtoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVmFyaWFibGVzXG4vL1xuLy8gWW91IGNhbiBvdmVycmlkZSB0aGUgZGVmYXVsdCB2YWx1ZXMgYnkgc2V0dGluZyB0aGUgdmFyaWFibGVzIGluIHlvdXIgU2Fzc1xuLy8gYmVmb3JlIGltcG9ydGluZyB0aGUgbm9ybWFsaXplLXNjc3MgbGlicmFyeS5cblxuLy8gVGhlIGZvbnQgc2l6ZSBzZXQgb24gdGhlIHJvb3QgaHRtbCBlbGVtZW50LlxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgYmFzZSBsaW5lIGhlaWdodCBkZXRlcm1pbmVzIHRoZSBiYXNpYyB1bml0IG9mIHZlcnRpY2FsIHJoeXRobS5cbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgbGVuZ3RoIHVuaXQgaW4gd2hpY2ggdG8gb3V0cHV0IHZlcnRpY2FsIHJoeXRobSB2YWx1ZXMuXG4vLyBTdXBwb3J0ZWQgdmFsdWVzOiBweCwgZW0sIHJlbS5cbiRiYXNlLXVuaXQ6ICdlbScgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5LlxuJGJhc2UtZm9udC1mYW1pbHk6IHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb250IHNpemVzIGZvciBoMS1oNi5cbiRoMS1mb250LXNpemU6IDIgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAxLjUgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogMS4xNyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IDEgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAwLjgzICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogMC42NyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8gVGhlIGFtb3VudCBsaXN0cyBhbmQgYmxvY2txdW90ZXMgYXJlIGluZGVudGVkLlxuJGluZGVudC1hbW91bnQ6IDQwcHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb2xsb3dpbmcgdmFyaWFibGUgY29udHJvbHMgd2hldGhlciBub3JtYWxpemUtc2NzcyB3aWxsIG91dHB1dFxuLy8gZm9udC1zaXplcywgbGluZS1oZWlnaHRzIGFuZCBibG9jay1sZXZlbCB0b3AvYm90dG9tIG1hcmdpbnMgdGhhdCBmb3JtIGEgYmFzaWNcbi8vIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgcGFnZSwgd2hpY2ggZGlmZmVycyBmcm9tIHRoZSBvcmlnaW5hbCBOb3JtYWxpemUuY3NzLlxuLy8gSG93ZXZlciwgY2hhbmdpbmcgYW55IG9mIHRoZSB2YXJpYWJsZXMgYWJvdmUgd2lsbCBjYXVzZVxuLy8gJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0gdG8gYmUgYXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZS5cbiRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiBmYWxzZSAhZGVmYXVsdDtcbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWF0dHJpYnV0ZS1uZXN0aW5nLCBmb3JjZS1wc2V1ZG8tbmVzdGluZywgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiBmYWxzZSAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuJHByaW1hcnktY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRzZWNvbmRhcnktY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuJHN1Y2Nlc3MtY29sb3I6IGdldC1jb2xvcihzdWNjZXNzKTtcbiR3YXJuaW5nLWNvbG9yOiBnZXQtY29sb3Iod2FybmluZyk7XG4kYWxlcnQtY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSAtemYtbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICAgcGFkZGluZzogMDtcblxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICBAaW5jbHVkZSBub3JtYWxpemUoKTtcbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDYXJkXG4vLyAgMTUuIENsb3NlIEJ1dHRvblxuLy8gIDE2LiBEcmlsbGRvd25cbi8vICAxNy4gRHJvcGRvd25cbi8vICAxOC4gRHJvcGRvd24gTWVudVxuLy8gIDE5LiBGb3Jtc1xuLy8gIDIwLiBMYWJlbFxuLy8gIDIxLiBNZWRpYSBPYmplY3Rcbi8vICAyMi4gTWVudVxuLy8gIDIzLiBNZXRlclxuLy8gIDI0LiBPZmYtY2FudmFzXG4vLyAgMjUuIE9yYml0XG4vLyAgMjYuIFBhZ2luYXRpb25cbi8vICAyNy4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjguIFJlc3BvbnNpdmUgRW1iZWRcbi8vICAyOS4gUmV2ZWFsXG4vLyAgMzAuIFNsaWRlclxuLy8gIDMxLiBTd2l0Y2hcbi8vICAzMi4gVGFibGVcbi8vICAzMy4gVGFic1xuLy8gIDM0LiBUaHVtYm5haWxcbi8vICAzNS4gVGl0bGUgQmFyXG4vLyAgMzYuIFRvb2x0aXBcbi8vICAzNy4gVG9wIEJhclxuXG5cbi8vIDEuIEdsb2JhbFxuLy8gLS0tLS0tLS0tXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDExNTYpO1xuJGdsb2JhbC1saW5laGVpZ2h0OiByZW0tY2FsYygyMik7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNmZjNmNTcsXG4pO1xuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XG4kbWVkaXVtLWdyYXk6ICNjYWNhY2E7XG4kZGFyay1ncmF5OiAjMjIyO1xuJGJsYWNrOiAjMGEwYTBhO1xuJHdoaXRlOiAjZmZmO1xuJGJvZHktYmFja2dyb3VuZDogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuJGJvZHktZm9udC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdGh1bmRlci1hcHByb3gpO1xuJGJvZHktZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5LCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC1wYWRkaW5nOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiAzMDA7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiA3MDA7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogZmFsc2U7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCwgLy8gcGhvbmVcbiAgbWVkaXVtLXNtYWxsOiA0ODBweCxcbiAgbWVkaXVtOiA2NDBweCwgLy8gdGFibGV0XG4gIG1lZGl1bS1sYXJnZTogODAwcHgsXG4gIGxhcmdlLW1lZGl1bTogMTAyNHB4LCAvLyBkZXNrdG9wXG4gIGxhcmdlOiAxMTU2cHgsXG4gIHhsYXJnZTogMTMwMHB4LFxuICB4eGxhcmdlOiAxNDAwcHgsXG4pO1xuJHByaW50LWJyZWFrcG9pbnQ6IG1lZGl1bTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0tc21hbGwgbWVkaXVtIGxhcmdlLW1lZGl1bSBsYXJnZSB4bGFyZ2UgeHhsYXJnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDMyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogMTBweCxcbiAgbWVkaXVtOiA3cHgsXG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlO1xuJGhlYWRlci1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdGh1bmRlci1hcHByb3gpO1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjA7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYpO1xuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDEzKSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAyMiksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxMyksXG4gICksXG4pO1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJHN1Ym5hdi1mb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjI1O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogbWFwLWRlZXAtZ2V0KCRidy1wYWxldHRlLCBlbGVjdHJpYy1ibHVlKTtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjogdW5kZXJsaW5lO1xuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGhyLWJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIG1lcmN1cnktYXBwcm94KTtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDE1KSBhdXRvO1xuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuJGxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuJGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuJGxpc3Qtc2lkZS1tYXJnaW46IHJlbS1jYWxjKDE2KTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogcmVtLWNhbGMoMCk7XG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KTtcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcblxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG5cbi8vIDYuIEFiaWRlXG4vLyAtLS0tLS0tLVxuXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xuJGFiaWRlLWxhYmVsczogdHJ1ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyA3LiBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g6IHRydWU7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1wYWRkaW5nOiAwLjZyZW0gMXJlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4vLyRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYnV0dG9uLWJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtNSUpO1xuJGJ1dHRvbi1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgYmxhY2stc29saWQpO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAwO1xuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAxLjByZW0sXG4gIGxhcmdlOiAxLjByZW0sXG4pO1xuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAycmVtIDFyZW0gMnJlbSAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKTtcblxuLy8gMTguIERyb3Bkb3duIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcblxuLy8gMTkuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMDtcbiRmaWVsZHNldC1wYWRkaW5nOiAwO1xuJGZpZWxkc2V0LW1hcmdpbjogMDtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAwIDAgMTIpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6IDQwMDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiByZW0tY2FsYygxNik7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWFwcHJveCk7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1mb3JtLXJlZ3VsYXI7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtcmVndWxhcjtcbiRpbnB1dC1iYWNrZ3JvdW5kOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGFsYWJhc3Rlci1hcHByb3gpO1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1hcHByb3gpO1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGRlbmltLWFwcHJveCk7XG4kaW5wdXQtc2hhZG93OiBub25lO1xuJGlucHV0LXNoYWRvdy1mb2N1czogbm9uZTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMC4gTGFiZWxcbi8vIC0tLS0tLS0tLVxuXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XG4kbGFiZWwtcGFkZGluZzogMDtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuXG4vLyAyMi4gTWVudVxuLy8gLS0tLS0tLS1cblxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbTtcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW07XG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRtZW51LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG5cbi8vIDIzLiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjQuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZTogMjUwcHg7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemU6IDI1MHB4O1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDE7XG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMDtcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjUuIE9yYml0XG4vLyAtLS0tLS0tLS1cblxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNi4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG5cbi8vIDI3LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvZ3Jlc3MtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjguIFJlc3BvbnNpdmUgRW1iZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyAyOS4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogODY1cHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogNDBweDtcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuODUpO1xuXG4vLyAzMC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzEuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW07XG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW07XG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyAzMi4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuXG4vLyAzMy4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDM0LiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAzNS4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gMzYuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDM3LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGJhc2UtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXRzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlcm4gdGhlbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7ICAgIFxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSBvciBicmVha3BvaW50IG5hbWUgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gT3V0cHV0cyBDU1MgY2xhc3NlcyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gZm91bmRhdGlvbi1ncmlkKFxuICAkcm93OiAncm93JyxcbiAgJGNvbHVtbjogJ2NvbHVtbicsXG4gICRjb2x1bW4tcm93OiAnY29sdW1uLXJvdycsXG4gICRndXR0ZXI6ICdndXR0ZXInLFxuICAkcHVzaDogJ3B1c2gnLFxuICAkcHVsbDogJ3B1bGwnLFxuICAkY2VudGVyOiAnY2VudGVyZWQnLFxuICAkdW5jZW50ZXI6ICd1bmNlbnRlcmVkJyxcbiAgJGNvbGxhcHNlOiAnY29sbGFwc2UnLFxuICAkdW5jb2xsYXBzZTogJ3VuY29sbGFwc2UnLFxuICAkb2Zmc2V0OiAnb2Zmc2V0JyxcbiAgJGVuZDogJ2VuZCcsXG4gICRleHBhbmRlZDogJ2V4cGFuZGVkJyxcbiAgJGJsb2NrOiAnYmxvY2snXG4pIHtcbiAgLy8gUm93XG4gIC4jeyRyb3d9IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgIC8vIENvbGxhcHNpbmdcbiAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblxuICAgICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIChmdWxsLXdpZHRoKSByb3dcbiAgICAmLiN7JGV4cGFuZGVkfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgdHlwZS1vZigkZ3JpZC1jb2x1bW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAvLyBTdGF0aWMgKHVucmVzcG9uc2l2ZSkgcm93IGd1dHRlcnNcbiAgICAgIC8vXG4gICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRncmlkLWNvbHVtbi1ndXR0ZXIge1xuICAgICAgICAmLiN7JGd1dHRlcn0tI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCR2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uXG4gIC4jeyRjb2x1bW59IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbDtcblxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmLiN7JGVuZH0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLiN7JHJvd30gLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAvLyBDb2x1bW4gd2lkdGhcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU291cmNlIG9yZGVyaW5nXG4gICAgICBAaWYgJGkgPCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoJGkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC0kaSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRvZmZzZXR9LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtb2ZmKCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KCRpLCAnLiN7JGNvbHVtbn0nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7IH1cblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRleHBhbmRlZH0uI3skcm93fSAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfS4jeyRyb3d9IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkLXpmLXNpemUpOyB9XG4gICAgfVxuXG4gICAgLy8gUG9zaXRpb25pbmdcbiAgICAuI3skLXpmLXNpemV9LSN7JGNlbnRlcn0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLy8gR3V0dGVyIGFkanVzdG1lbnRcbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY2VudGVyfSxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LTAsXG4gICAgLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0wIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXVucG9zO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWQgY29sdW1uc1xuICAuI3skY29sdW1ufS0jeyRibG9ja30ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIEBpZiAkY29sdW1uID09ICdjb2x1bW4nIHtcbiAgICAuY29sdW1ucyB7XG4gICAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1ibG9jayBwbGFjZWhvbGRlci1pbi1leHRlbmRcbiAgICAgIEBleHRlbmQgLmNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAvIDIgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFVuLWNvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlLWFkZGluZyB0aGUgcGFkZGluZy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLlxuQG1peGluIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbHVtbi1ndXR0ZXIoKS4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXIpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bmNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bmNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sLWd1dHRlcigpLiBncmlkLWNvbC11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcik7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1lvdXIgc21hbGxlc3QgYnJlYWtwb2ludCAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMpIG11c3QgYmUgc2V0IHRvIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gKDEvMTYpO1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkdmFsdWUpO1xuICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcblxuICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gIEBlbHNlIHtcbiAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgQGlmICRicCAhPSBudWxsIGFuZCAkYnAgPD0gJHBicCB7XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ29udmVycyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBzdHJpbmcgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIERpcmVjdGlvbiBhbmQgYW1vdW50IHRvIG1vdmUuIFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50IHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZSBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuIFNldCB0byBjZW50ZXIgdG8gY2VudGVyIHRoZSBjb2x1bW4uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIG9yIGNlbnRlci4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPuKAlDxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7ICBcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZW9jcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIENpdGF0aW9uc1xuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNpdGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICBjdXJzb3I6IGhlbHA7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIFxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBVc2UgdG8gcmVtb3ZlIHRoZSBidWxsZXRzIGZyb20gYW4gdW5vcmRlcmVkIGxpc3RcbiAgLm5vLWJ1bGxldCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeFxuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAkZm9ybS1zcGFjaW5nICogMS41KTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIpO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcblxuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJHByaW1hcnktY29sb3IsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZCgkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgY29sb3I6ICRidXR0b24tY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4oCTJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvbi1tZW51XG4vLy8vXG5cbi8vLyBTZXRzIGlmIGFjY29yZGlvbiBtZW51cyBoYXZlIHRoZSBkZWZhdWx0IGFycm93IHN0eWxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudSB7XG4gIEBpZiAkYWNjb3JkaW9ubWVudS1hcnJvd3Mge1xuICAgIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJhZGdlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBhIGJhZGdlLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLW1pbndpZHRoOiAyLjFlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIGJhZGdlLlxuQG1peGluIGJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6ICRiYWRnZS1taW53aWR0aDtcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1iYWRnZSB7XG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgYmFkZ2U7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYmFkZ2UtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkYmFkZ2UtY29sb3IsICRiYWRnZS1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFkY3J1bWJzXG4vLy8vXG5cbi8vLyBNYXJnaW4gYXJvdW5kIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGFjdGl2ZSBicmVhZGNydW1iIGxpbmsuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIE9wYWNpdHkgb2YgZGlzYWJsZWQgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBicmVhZGNydW1iIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBtYWtlcyBicmVhZGNydW1iIGxpbmtzIHVwcGVyY2FzZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgYSBzbGFzaCBiZXR3ZWVuIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBicmVhZGNydW1icyBjb250YWluZXIsIGFsb25nIHdpdGggdGhlIHN0eWxlcyBmb3IgdGhlIGA8bGk+YCBhbmQgYDxhPmAgZWxlbWVudHMgaW5zaWRlIG9mIGl0LlxuQG1peGluIGJyZWFkY3J1bWJzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRicmVhZGNydW1icy1tYXJnaW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLy8gSXRlbSB3cmFwcGVyXG4gIGxpIHtcbiAgICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2xhc2g6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ2x0cicsICcvJywgJ1xcXFwnKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgIG1hcmdpbjogMCAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG5cbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29udGVudDogJHNsYXNoO1xuICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnJlYWRjcnVtYnMge1xuICAuYnJlYWRjcnVtYnMge1xuICAgIEBpbmNsdWRlIGJyZWFkY3J1bWJzLWNvbnRhaW5lcjtcblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uLWdyb3VwXG4vLy8vXG5cbi8vLyBNYXJnaW4gZm9yIGJ1dHRvbiBncm91cHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbicgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBidXR0b25zIHRoYXQgY2FuIGJlIGluIGFuIGV2ZW4td2lkdGggYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxuICAkY2hpbGQtc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtbWFyZ2luO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgfVxuXG4gICN7JGNoaWxkLXNlbGVjdG9yfSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnV0dG9uZ3JvdXAtc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtc3BhY2luZztcbiAgICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICB9XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC13aWR0aCBidXR0b24gZ3JvdXAsIG1ha2luZyBlYWNoIGJ1dHRvbiBlcXVhbCB3aWR0aC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJGJ1dHRvbmdyb3VwLXNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYnV0dG9uZ3JvdXAtZXhwYW5kLW1heCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAmLCAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygje3BlcmNlbnRhZ2UoMSAvICRpKX0gLSAjeyRidXR0b25ncm91cC1zcGFjaW5nfSk7XG4gICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJ1dHRvbmdyb3VwLXNwYWNpbmc7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnV0dG9uZ3JvdXAtc3BhY2luZyAqIC0kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8vLyBVbi1zdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtdW5zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwIHtcbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIEdyb3VwXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQsXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCxcbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3RhY2s7XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIGZvcmNlLWVsZW1lbnQtbmVzdGluZ1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhbGxvdXRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmYWRlIHZhbHVlIGZvciBjYWxsb3V0IGJhY2tncm91bmRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZSBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgaW5uZXIgcGFkZGluZyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMsIGlmIHRoZSBjYWxsb3V0IGhhcyBhIGRhcmsgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQW1vdW50IHRvIHRpbnQgbGlua3MgdXNlZCB3aXRoaW4gY29sb3JlZCBwYW5lbHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlLlxuLy8vIEB0eXBlIE51bWJlciB8IEJvb2xlYW5cbiRjYWxsb3V0LWxpbmstdGludDogMzAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGEgY2FsbG91dCwgaW5jbHVkaW5nIHBhZGRpbmcgYW5kIG1hcmdpbi5cbkBtaXhpbiBjYWxsb3V0LWJhc2UoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkY2FsbG91dC1tYXJnaW47XG4gIHBhZGRpbmc6ICRjYWxsb3V0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkY2FsbG91dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRjYWxsb3V0LXJhZGl1cztcblxuICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHF1aWNrIHN0eWxlcyBmb3IgYSBjYWxsb3V0IHVzaW5nIGEgc2luZ2xlIGNvbG9yIGFzIGEgYmFzZWxpbmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0LXN0eWxlKCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRjYWxsb3V0LWZvbnQtY29sb3IsICRjYWxsb3V0LWZvbnQtY29sb3ItYWx0KSk7XG59XG5cbkBtaXhpbiBjYWxsb3V0LXNpemUoJHBhZGRpbmcpIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYWxsb3V0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dCgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgY2FsbG91dC1iYXNlO1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhbGxvdXQge1xuICAuY2FsbG91dCB7XG4gICAgQGluY2x1ZGUgY2FsbG91dDtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc21hbGwge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDAuNXJlbSk7XG4gICAgfVxuXG4gICAgJi5sYXJnZSB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoM3JlbSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYXJkXG4vLy8vXG5cbi8vLyBEZWZ1YWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FyZHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZS5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY2FyZCBzaGFkb3cuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luLlxuLy8vIEB0eXBlIG51bWJlclxuJGNhcmQtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBmb250IGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIC0gQm90dG9tIG1hcmdpbiBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRib3JkZXIgLSBCb3JkZXIgYXJvdW5kIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhZGl1cyAtIGJvcmRlciByYWRpdXMgb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hhZG93IC0gYm94IHNoYWRvdyBvZiB0aGUgY2FyZC5cbkBtaXhpbiBjYXJkLWNvbnRhaW5lcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGNhcmQtZm9udC1jb2xvcixcbiAgJG1hcmdpbjogJGNhcmQtbWFyZ2luLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkY2FyZC1mb250LWNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgc2VjdGlvbi5cbkBtaXhpbiBjYXJkLXNlY3Rpb24oXG4gICRwYWRkaW5nOiAkY2FyZC1wYWRkaW5nXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FyZCB7XG4gIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBjYXJkLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5jYXJkLWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIGNhcmQtZGl2aWRlcjtcbiAgfVxuXG4gIC5jYXJkLXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGNhcmQtc2VjdGlvbjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoc21hbGwpIH1cbiAgICAmLCAmLm1lZGl1bSB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKG1lZGl1bSkgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW4gaG92ZXJlZCBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBmb3IgYm9yZGVyZWQgbWVudVxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBtYXJnaW46ICRtZW51LW1hcmdpbjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXMgYXJlIHRhYmxlIGNlbGwgdG8gYWxsb3cgZm9yIHZlcnRpY2FsIGFsaWdubWVudFxuICA+IGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJhbGwgaXRlbSBlYXNpZXIgdG8gY2FsY3VsYXRlXG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgID4gbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cblxuICA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgPiBsaSAgPiBhIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbkBtaXhpbiBtZW51LXNpbXBsZSB7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IGdldC1zaWRlKCRtZW51LWl0ZW0tcGFkZGluZywgJGdsb2JhbC1yaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHBhZGRpbmcgW2F1dG9dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG5AbWl4aW4gbWVudS1uZXN0ZWQoJG1hcmdpbjogJG1lbnUtbWFyZ2luLW5lc3RlZCkge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xufVxuXG4vLy8gQWRkcyBzdXBwb3J0IGZvciBpY29ucyB0byBNZW51IGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHBvc2l0aW9uIFtzaWRlXSAtIFBvc2l0aW9uaW5nIGZvciBpY29ucy4gQ2FuIGJlIGBzaWRlYCAobGVmdCwgb3IgcmlnaHQgb24gUlRMKSBvciBgdG9wYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRiYXNlIFt0cnVlXSAtIFNldCB0byBgZmFsc2VgIHRvIHByZXZlbnQgdGhlIHNoYXJlZCBDU1MgYmV0d2VlbiBzaWRlLSBhbmQgdG9wLWFsaWduZWQgaWNvbnMgZnJvbSBiZWluZyBwcmludGVkLiBTZXQgdGhpcyB0byBgZmFsc2VgIGlmIHlvdSdyZSBjYWxsaW5nIHRoZSBtaXhpbiBtdWx0aXBsZSB0aW1lcyBvbiB0aGUgc2FtZSBlbGVtZW50LlxuQG1peGluIG1lbnUtaWNvbnMoJHBvc2l0aW9uOiBzaWRlLCAkYmFzZTogdHJ1ZSkge1xuICBAaWYgJGJhc2Uge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGltZyxcbiAgICAgICAgaSxcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgKyBzcGFuIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRwb3NpdGlvbiA9PSBzaWRlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtZW51LWljb24tc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgID4gbGkgPiBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkbWVudS1pY29uLXNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1lbnUtaWNvbi1zcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG4gICAgQGluY2x1ZGUgbWVudS1pY29ucztcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgaWNvbnNcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnModG9wLCAkYmFzZTogZmFsc2UpO1xuICAgICAgLy8gTWFrZSB2ZXJ0aWNhbCBtZW51IHdpdGggaWNvbnMgb24gdG9wIHdvcmtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICBhID4gc3BhbiB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLy8gTWVudSB3aXRoIGJvcmRlclxuICAgICYubWVudS1ib3JkZXJlZCB7XG4gICAgICBsaSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZW51LWJvcmRlcjtcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1lbnUgd2l0aCBiYWNrZ3JvdW5kIGhvdmVyXG4gICAgJi5tZW51LWhvdmVyIHtcbiAgICAgIGxpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZW51LXRleHQge1xuICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgfVxuXG4gIC8vIEFsaWduIGNlbnRlclxuICAubWVudS1jZW50ZXJlZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgPiAubWVudSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51IHtcbiAgLy8gQXBwbGllZCB0byB0aGUgTWVudSBjb250YWluZXJcbiAgLmlzLWRyaWxsZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFwcGxpZWQgdG8gbmVzdGVkIDx1bD5zXG4gIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogLTE7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogJGRyaWxsZG93bi10cmFuc2l0aW9uO1xuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2luZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgfVxuICB9XG5cbiAgLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgQGlmICRkcmlsbGRvd24tYXJyb3dzIHtcbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLWxlZnQpO1xuICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC43NXJlbTsgLy8gQ3JlYXRlcyBzcGFjZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHRcblxuICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgZHJvcGRvd24gcGFuZXMuIEVhY2ggc2l6ZSBpcyBhIENTUyBjbGFzcyB5b3UgY2FuIGFwcGx5LlxuLy8vIEB0eXBlIE1hcFxuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBcHBsaWVzIHN0eWxlcyBmb3IgYSBiYXNpYyBkcm9wZG93bi5cbkBtaXhpbiBkcm9wZG93bi1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGRyb3Bkb3duLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuXG4gICYuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZS4jeyRuYW1lfSB7XG4gICAgICB3aWR0aDogJHNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciB3aWR0aCBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8gVXNlZCB0byBhZGp1c3QgdG9wIG1hcmdpbiBvZiBhIHN1Yi1tZW51IGlmIGEgYm9yZGVyIGlzIHVzZWQuXG4vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoOiBudGgoJGRyb3Bkb3dubWVudS1ib3JkZXIsIDEpO1xuXG5AbWl4aW4gbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHtcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkub3BlbnMtcmlnaHQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06IDEuNXJlbTtcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmLm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZHJvcGRvd25tZW51LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLCAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8ge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQoKS4gZm91bmRhdGlvbi1mbGV4LXZpZGVvKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbn1cblxuQG1peGluIGZsZXgtdmlkZW8oJHJhdGlvOiAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpbykge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSByZXNwb25zaXZlLWVtYmVkKCkuIGZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gRmluZHMgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIG9mIHR3byBpbnRlZ2Vycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYSAtIEZpcnN0IG51bWJlciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYiAtIFNlY29uZCBudW1iZXIgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvci5cbkBmdW5jdGlvbiBnY2QoJGEsICRiKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9HcmVhdGVzdF9jb21tb25fZGl2aXNvciNKYXZhU2NyaXB0XG4gIEBpZiAoJGIgIT0gMCkge1xuICAgIEByZXR1cm4gZ2NkKCRiLCAkYSAlICRiKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBhYnMoJGEpO1xuICB9XG59XG5cbi8vLyBIYW5kbGVzIGRlY2ltYWwgZXhwb25lbnRzIGJ5IHRyeWluZyB0byBjb252ZXJ0IHRoZW0gaW50byBhIGZyYWN0aW9uIGFuZCB0aGVuIHVzZSBhIG50aC1yb290LWFsZ29yaXRobSBmb3IgcGFydHMgb2YgdGhlIGNhbGN1bGF0aW9uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgYmFzZSBudW1iZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRleHBvbmVudCAtIFRoZSBleHBvbmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBwcm9kdWN0IG9mIHRoZSBleHBvbmVudGlhdGlvbi5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHBvbmVudCwgJHByZWM6IDEyKSB7XG4gIEBpZiAoZmxvb3IoJGV4cG9uZW50KSAhPSAkZXhwb25lbnQpIHtcbiAgICAkcHJlYzIgOiBwb3coMTAsICRwcmVjKTtcbiAgICAkZXhwb25lbnQ6IHJvdW5kKCRleHBvbmVudCAqICRwcmVjMik7XG4gICAgJGRlbm9taW5hdG9yOiBnY2QoJGV4cG9uZW50LCAkcHJlYzIpO1xuICAgIEByZXR1cm4gbnRoLXJvb3QocG93KCRiYXNlLCAkZXhwb25lbnQgLyAkZGVub21pbmF0b3IpLCAkcHJlYzIgLyAkZGVub21pbmF0b3IsICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIG50aC1yb290KCRudW0sICRuOiAyLCAkcHJlYzogMTIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL050aF9yb290I0phdmFTY3JpcHRcbiAgJHg6IDE7XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkcHJlYyB7XG4gICAgJHg6IDEgLyAkbiAqICgoJG4gLSAxKSAqICR4ICsgKCRudW0gLyBwb3coJHgsICRuIC0gMSkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHg7XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBoZWlnaHQgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSB3aWR0aCBmb3IgYSBnaXZlbiByYXRpby5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIGZvciB0aGUgaGVpZ2h0IHJlbGF0aXZlIHRvIHRoZSB3aWR0aCBvZiBhIHJlc3BvbnNpdmUgY29udGFpbmVyLlxuQGZ1bmN0aW9uIHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKSB7XG4gICR3OiBudGgoJHJhdGlvLCAxKTtcbiAgJGg6IG50aCgkcmF0aW8sIDMpO1xuICBAcmV0dXJuICRoIC8gJHcgKiAxMDAlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbGFiZWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgb2YgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYmFzZSBzdHlsZXMgZm9yIGEgbGFiZWwuXG5AbWl4aW4gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRsYWJlbC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRsYWJlbC1yYWRpdXM7XG5cbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1sYWJlbCB7XG4gIC5sYWJlbCB7XG4gICAgQGluY2x1ZGUgbGFiZWw7XG5cbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkbGFiZWwtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkbGFiZWwtY29sb3IsICRsYWJlbC1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lZGlhLW9iamVjdFxuLy8vL1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIExlZnQgYW5kIHJpZ2h0IHBhZGRpbmcgb24gc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgaW1hZ2VzIHdpdGhpbiBhIG1lZGlhIG9iamVjdCwgd2hlbiB0aGUgb2JqZWN0IGlzIHN0YWNrZWQgdmVydGljYWxseS4gU2V0IHRvICdhdXRvJyB0byB1c2UgdGhlIGltYWdlJ3MgbmF0dXJhbCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbWVkaWEgb2JqZWN0IGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3QtY29udGFpbmVyIHtcbiAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCBibG9jayk7XG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3Igc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZ10gLSBQYWRkaW5nIGJldHdlZW4gc2VjdGlvbnMuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXNlY3Rpb24oJHBhZGRpbmc6ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmcpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJHBhZGRpbmc7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1sZWZ0fTogJHBhZGRpbmc7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBzdGFjayBzZWN0aW9ucyBvZiBhIG1lZGlhIG9iamVjdC4gQXBwbHkgdGhpcyB0byB0aGUgc2VjdGlvbiBlbGVtZW50cywgbm90IHRoZSBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXN0YWNrIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0IHtcbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LWNvbnRhaW5lcjtcblxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXN0YWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXNlY3Rpb247XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICYubWFpbi1zZWN0aW9uIHtcbiAgICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJi5taWRkbGUge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuXG4gICAgICAmLmJvdHRvbSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvZmYtY2FudmFzXG4vLy8vXG5cbi8vLyBXaWR0aCBvZiBhIGxlZnQvcmlnaHQgb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtc2l6ZTogMjUwcHggIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSB0b3AvYm90dG9tIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemU6IDI1MHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBmb3IgdGhlIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgU2hhZG93XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNykgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYHB1c2hgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBvdmVybGFwYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgdXNpbmcgdGhlIGByZXZlYWwtZm9yLSpgIGNsYXNzZXMgb3IgbWl4aW4uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEgIWRlZmF1bHQ7XG5cbi8vLyBMZW5ndGggb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cyAhZGVmYXVsdDtcblxuLy8vIFRpbWluZyBmdW5jdGlvbiBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgS2V5d29yZFxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYSByZXZlYWxlZCBvZmYtY2FudmFzIHdpbGwgYmUgZml4ZWQtcG9zaXRpb24sIGFuZCBzY3JvbGwgd2l0aCB0aGUgc2NyZWVuLlxuLy8vIEB0eXBlIEJvb2xcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIG92ZXJsYXkgdGhhdCBhcHBlYXJzIHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gQ1NTIGNsYXNzIHVzZWQgZm9yIHRoZSBtYWluIGNvbnRlbnQgYXJlYS4gVGhlIG9mZi1jYW52YXMgbWl4aW5zIHVzZSB0aGlzIHRvIHRhcmdldCB0aGUgcGFnZSBjb250ZW50LlxuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzZWxpbmUgc3R5bGVzIGZvciBvZmYtY2FudmFzLiBUaGlzIENTUyBpcyByZXF1aXJlZCB0byBtYWtlIHRoZSBvdGhlciBwaWVjZXMgd29yay5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2ljcyB7XG4gIC8vIEhpZGVzIG92ZXJmbG93IG9uIGJvZHkgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4gIC5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZywgdmlzaWJpbGl0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG5cbiAgICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3NhYmxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgICBcbiAgICAmLmlzLW92ZXJsYXktZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyB3cmFwcGVyLlxuQG1peGluIG9mZi1jYW52YXMtd3JhcHBlcigpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNlKFxuICAkYmFja2dyb3VuZDogJG9mZmNhbnZhcy1iYWNrZ3JvdW5kLFxuICAkdHJhbnNpdGlvbjogJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLFxuICAkZml4ZWQ6IHRydWVcbikge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgQGlmICRmaXhlZCA9PSB0cnVlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgLy8gT3ZlcmxhcCBvbmx5IHN0eWxlcy5cbiAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg7XG5cbiAgICAmLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogJG9mZmNhbnZhcy1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0cyB0cmFuc2Zvcm0gdG8gMCB0byBzaG93IGFuIG9mZi1jYW52YXMgcGFuZWwuXG4gICYuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHBvc2l0aW9uIGFuIG9mZi1jYW52YXMgcGFuZWwgdG8gdGhlIGxlZnQvcmlnaHQvdG9wL2JvdHRvbS5cbkBtaXhpbiBvZmYtY2FudmFzLXBvc2l0aW9uKFxuICAkcG9zaXRpb246IGxlZnQsXG4gICRvcmllbnRhdGlvbjogaG9yaXpvbnRhbCxcbiAgJHNpemU6IGlmKCRvcmllbnRhdGlvbiA9PSBob3Jpem9udGFsLCAkb2ZmY2FudmFzLXNpemUsICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSlcbikge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICAmLmlzLW9wZW4gfiAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgICYuaXMtb3BlbiB+IC4jeyRtYWluY29udGVudC1jbGFzc30ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkc2l6ZTtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgICYuaXMtb3BlbiB+IC4jeyRtYWluY29udGVudC1jbGFzc30ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICAmLmlzLW9wZW4gfiAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmICRvZmZjYW52YXMtc2hhZG93IGlzIHNldCwgYWRkIGl0IGFzIGEgcHNldWRvLWVsZW1lbnQuXG4gIC8vIFRoaXMgbWltaWNzIHRoZSBvZmYtY2FudmFzIHBhbmVsIGhhdmluZyBhIGxvd2VyIHotaW5kZXgsIHdpdGhvdXQgaGF2aW5nIHRvIGhhdmUgb25lLlxuICBAaWYgJG9mZmNhbnZhcy1zaGFkb3cge1xuICAgICYuaXMtdHJhbnNpdGlvbi1wdXNoOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6ICRvZmZjYW52YXMtc2hhZG93O1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgfVxuICB9XG5cbiAgLy8gTm8gdHJhbnNmb3JtIG9uIG92ZXJsYXAgdHJhbnNpdGlvblxuICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIH4gLiN7JG1haW5jb250ZW50LWNsYXNzfSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzdHlsZXMgZm9yIHRoZSBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiBvZmYtY2FudmFzLWNvbnRlbnQoKSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRoYXQgcmV2ZWFsIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1yZXZlYWwoXG4kcG9zaXRpb246IGxlZnQsXG4kemluZGV4OiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsXG4kY29udGVudDogJG1haW5jb250ZW50LWNsYXNzXG4pIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAkemluZGV4O1xuXG4gIEBpZiBub3QgJG9mZmNhbnZhcy1maXhlZC1yZXZlYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYgfiAuI3skY29udGVudH0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06ICRvZmZjYW52YXMtc2l6ZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vZmYtY2FudmFzIHtcbiAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNpY3M7XG5cbiAgLy8gT2ZmLWNhbnZhcyB3cmFwcGVyXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcHBlcjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyXG4gIC5vZmYtY2FudmFzIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2U7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lciB3aXRoIGFic29sdXRlIHBvc2l0aW9uXG4gIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2UoJGZpeGVkOiBmYWxzZSk7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIHBvc2l0aW9uIGNsYXNzZXNcbiAgLnBvc2l0aW9uLWxlZnQgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGxlZnQsICAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0ICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHJpZ2h0LCAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXRvcCAgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHRvcCwgICAgdmVydGljYWwpOyB9XG4gIC5wb3NpdGlvbi1ib3R0b20gIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihib3R0b20sIHZlcnRpY2FsKTsgfVxuXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtY29udGVudDtcbiAgfVxuXG4gIC8vIFJldmVhbCBvZmYtY2FudmFzIHBhbmVsIG9uIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwobGVmdCk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbCh0b3ApO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChib3R0b20pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9yYml0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBhY3RpdmUgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlhbWV0ZXIgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGJldHdlZW4gT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlzdGFuY2UgZnJvbSBzbGlkZSByZWdpb24gZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZyb20gT3JiaXQncyBidWxsZXRzIHRvIHdoYXRldmVyIGNvbnRlbnQgbWF5IGx1cmsgYmVsb3cgaXQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjb250cm9scyB3aGVuIGhvdmVyZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgei1pbmRleCBmb3IgT3JiaXQncyBjb250cm9scy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIG91dGVyIE9yYml0IHdyYXBwZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgT3JiaXQgc2xpZGUgY29udGFpbmVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY29udGFpbmVyYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDsgLy8gUHJldmVudCBGT1VDIGJ5IG5vdCBzaG93aW5nIHVudGlsIEpTIHNldHMgaGVpZ2h0XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5kaXZpZHVhbCBzbGlkZXMgb2YgYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtc2xpZGVgIGNsYXNzLlxuQG1peGluIG9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi5uby1tb3Rpb251aSB7XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHNsaWRlIGNvbnRhaW5pbmcgYW4gaW1hZ2UuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1pbWFnZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gb3JiaXQgc2xpZGUgY2FwdGlvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNhcHRpb25gIGNsYXNzLlxuQG1peGluIG9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZCk7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGluIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgYC5vcmJpdC1uZXh0YCBhbmQgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3NlcyBpbiB0aGUgZGVmYXVsdCBDU1MuXG5AbWl4aW4gb3JiaXQtY29udHJvbCB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICB6LWluZGV4OiAkb3JiaXQtY29udHJvbC16aW5kZXg7XG4gIHBhZGRpbmc6ICRvcmJpdC1jb250cm9sLXBhZGRpbmc7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzLlxuQG1peGluIG9yYml0LXByZXZpb3VzIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBuZXh0IGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LW5leHRgIGNsYXNzLlxuQG1peGluIG9yYml0LW5leHQge1xuICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICN7JGdsb2JhbC1yaWdodH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjb250YWluZXIgb2YgT3JiaXQgYnVsbGV0cy4gLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtYnVsbGV0c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtYnVsbGV0cyB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A7XG4gIG1hcmdpbi1ib3R0b206ICRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIG1hcmdpbjogJG9yYml0LWJ1bGxldC1tYXJnaW47XG5cbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9yYml0IHtcbiAgLm9yYml0IHtcbiAgICBAaW5jbHVkZSBvcmJpdC13cmFwcGVyO1xuICB9XG5cbiAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udGFpbmVyO1xuICB9XG5cbiAgLm9yYml0LXNsaWRlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1zbGlkZTtcbiAgfVxuXG4gIC5vcmJpdC1maWd1cmUge1xuICAgIEBpbmNsdWRlIG9yYml0LWZpZ3VyZTtcbiAgfVxuXG4gIC5vcmJpdC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtaW1hZ2U7XG4gIH1cblxuICAub3JiaXQtY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY2FwdGlvbjtcbiAgfVxuXG4gICVvcmJpdC1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250cm9sO1xuICB9XG5cbiAgLm9yYml0LXByZXZpb3VzIHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LXByZXZpb3VzO1xuICB9XG5cbiAgLm9yYml0LW5leHQge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtbmV4dDtcbiAgfVxuXG4gIC5vcmJpdC1idWxsZXRzIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1idWxsZXRzO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgY3VycmVudCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCxcbiAgJGNvbG9yLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jdXJyZW50O1xuICBjb2xvcjogJGNvbG9yLWN1cnJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29sb3I6ICRjb2xvcjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGVsbGlwc2lzIGZvciB1c2UgaW4gYSBwYWdpbmF0aW9uIGxpc3QuXG5AbWl4aW4gcGFnaW5hdGlvbi1lbGxpcHNpcyAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3Jcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29udGVudDogJ1xcMjAyNic7XG4gIGNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXBhZ2luYXRpb24ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXI7XG5cbiAgICAuY3VycmVudCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudDtcbiAgICB9XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1lbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tYXJyb3dzIHtcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBhYic7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbiAgICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGJiJztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcHJvZ3Jlc3MgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiBwcm9ncmVzcy1jb250YWluZXIge1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1tYXJnaW4tYm90dG9tO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgbWV0ZXIgb2YgYSBwcm9ncmVzcyBiYXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0ZXh0IGluIHRoZSBwcm9ncmVzcyBtZXRlci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb2dyZXNzLWJhciB7XG4gIC8vIFByb2dyZXNzIGJhclxuICAucHJvZ3Jlc3Mge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLWNvbnRhaW5lcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJbm5lciBtZXRlclxuICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyO1xuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXIgdGV4dFxuICAucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXItdGV4dDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIFtUT0RPXSBDaGVjayBob3cgcGx1Z2luIGNvbmZpcm1zIGRpc2FibGVkIG9yIHZlcnRpY2FsIHN0YXR1c1xuLy8gW1RPRE9dIENoZWNrIGlmIHRyYW5zaXRpb246IGFsbDsgaXMgbmVjZXNzYXJ5XG5cbi8vLy9cbi8vLyBAZ3JvdXAgc2xpZGVyXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHNsaWRlciB3aWR0aCBvZiBhIHZlcnRpY2FsIHNsaWRlci4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIE51bWJlclxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0aWVzIHRvIGFwcGx5IHRvIHRoZSBzbGlkZXIgaGFuZGxlIGFuZCBmaWxsLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1iYWNrZ3JvdW5kO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgYWN0aXZlIGZpbGwgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWZpbGwtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHNsaWRlci10cmFuc2l0aW9uO1xuXG4gICYuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0aGUgc2xpZGVyIGhhbmRsZXMuXG5AbWl4aW4gc2xpZGVyLWhhbmRsZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzbGlkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gc2xpZGVyLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG5cbiAgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXNsaWRlciB7XG4gIC8vIENvbnRhaW5lclxuICAuc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItY29udGFpbmVyO1xuICB9XG5cbiAgLy8gRmlsbCBhcmVhXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWZpbGw7XG4gIH1cblxuICAvLyBEcmFnZ2FibGUgaGFuZGxlXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItaGFuZGxlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLnNsaWRlci5kaXNhYmxlZCxcbiAgLnNsaWRlcltkaXNhYmxlZF0ge1xuICAgIEBpbmNsdWRlIHNsaWRlci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIHNsaWRlclxuICAuc2xpZGVyLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBSVEwgc3VwcG9ydFxuICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgIC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgLmNvbHVtbixcbiAgLmNvbHVtbnMge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgQGV4dGVuZCAlcmV2ZWFsLWNlbnRlcmVkO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuICAvLyBbVE9ET10gSXMgdGhpcyBuZWNlc3Nhcnk/XG4gIGJvZHkuaXMtcmV2ZWFsLW9wZW4geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gaHRtbCBnZXRzIHRoaXMgY2xhc3Mgb25seSBpbiBpT1NcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbixcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAvLyBPdmVybGF5XG4gIC5yZXZlYWwtb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW92ZXJsYXk7XG4gIH1cblxuICAvLyBNb2RhbCBjb250YWluZXJcbiAgLnJldmVhbCB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKCRyZXZlYWwtd2lkdGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4gICAgLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgc3dpdGNoXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgc3dpdGNoLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgYWN0aXZlIGNvbG9yIG9mIGEgc3dpdGNoLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQ6IDJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAudGlueSBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC5zbWFsbCBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLmxhcmdlIGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgb2YgdGhlIHN3aXRjaFxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHN3aXRjaCBjb250YWluZXIgYW5kIHBhZGRsZS5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGEgc3dpdGNoIHBhZGRsZSBhbmQgdGhlIGVkZ2Ugb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBib3JkZXIgcmFkaXVzIG9mIHRoZSBzd2l0Y2ggcGFkZGxlXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gc3dpdGNoIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIG1ha2UgdGhlbSB2YXJpYWJsZXNcbi8vIGFzayBhYm91dCBhY2Nlc3NpYmlsaXR5IG9uIGxhYmVsXG4vLyBjaGFuZ2UgY2xhc3MgbmFtZSBmb3IgdGV4dFxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3dpdGNoIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGNvbnRhaW5lciBjbGFzcy5cbkBtaXhpbiBzd2l0Y2gtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAkc3dpdGNoLW1hcmdpbjtcbiAgb3V0bGluZTogMDtcblxuICAvLyBUaGVzZSBwcm9wZXJ0aWVzIGNhc2NhZGUgZG93biB0byB0aGUgc3dpdGNoIHRleHRcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3dpdGNoIGlucHV0LiBBcHBseSB0aGlzIHRvIGFuIGA8aW5wdXQ+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBwYWRkbGUgb2YgYSBzd2l0Y2guIEFwcGx5IHRoaXMgdG8gYSBgPGxhYmVsPmAgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC1wYWRkbGUge1xuICAkc3dpdGNoLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAqIDI7XG4gICRwYWRkbGUtaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLXBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHN3aXRjaC1wYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1yYWRpdXM7XG4gIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjtcblxuICAvLyBSZXNldHRpbmcgdGhlc2UgPGxhYmVsPiBwcmVzZXRzIHNvIHR5cGUgc3R5bGVzIGNhc2NhZGUgZG93blxuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIE5lZWRlZCB0byBvdmVycmlkZSBzcGVjaWZpY2l0eVxuICBpbnB1dCArICYge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFRoZSBwYWRkbGUgaXRzZWxmXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBhZGRsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRwYWRkbGUtaGVpZ2h0O1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXBhZGRsZS1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDtcbiAgICB0cmFuc2l0aW9uOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gQ2hhbmdlIHRoZSB2aXN1YWwgc3R5bGUgd2hlbiB0aGUgc3dpdGNoIGlzIGFjdGl2ZVxuICBpbnB1dDpjaGVja2VkIH4gJiB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogJHBhZGRsZS1hY3RpdmUtb2ZmZXN0O1xuICAgIH1cbiAgfVxuXG4gIGlucHV0OmZvY3VzIH4gJiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhY3RpdmUvaW5hY3RpdmUgdGV4dCBpbnNpZGUgYSBzd2l0Y2guIEFwcGx5IHRoaXMgdG8gdGV4dCBlbGVtZW50cyBpbnNpZGUgdGhlIHN3aXRjaCBgPGxhYmVsPmAuXG5AbWl4aW4gc3dpdGNoLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjdGl2ZSBzdGF0ZSB0ZXh0IHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtdGV4dC1hY3RpdmUge1xuICAjeyRnbG9iYWwtbGVmdH06IDglO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGluYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWluYWN0aXZlIHtcbiAgI3skZ2xvYmFsLXJpZ2h0fTogMTUlO1xuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+ICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHNpemUgb2YgYSBzd2l0Y2ggYnkgbW9kaWZ5aW5nIHRoZSBzaXplIG9mIHRoZSBib2R5IGFuZCBwYWRkbGUuIEFwcGx5IHRoaXMgdG8gYSBzd2l0Y2ggY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZm9udC1zaXplIFsxcmVtXSAtIEZvbnQgc2l6ZSBvZiBsYWJlbCB0ZXh0IHdpdGhpbiB0aGUgc3dpdGNoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3dpdGNoLWhlaWdodCBbMnJlbV0gLSBIZWlnaHQgb2YgdGhlIHN3aXRjaCBib2R5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGxlLW9mZnNldCBbMC4yNXJlbV0gLSBTcGFjaW5nIGJldHdlZW4gdGhlIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBzd2l0Y2ggYm9keS5cbkBtaXhpbiBzd2l0Y2gtc2l6ZShcbiAgJGZvbnQtc2l6ZTogMXJlbSxcbiAgJHN3aXRjaC1oZWlnaHQ6IDJyZW0sXG4gICRwYWRkbGUtb2Zmc2V0OiAwLjI1cmVtXG4pIHtcblxuICAkc3dpdGNoLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAqIDI7XG4gICRwYWRkbGUtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q6ICRzd2l0Y2gtd2lkdGggLSAkcGFkZGxlLXdpZHRoIC0gJHBhZGRsZS1vZmZzZXQ7XG5cbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcblxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIH1cblxuICAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHRvcDogJHBhZGRsZS1vZmZzZXQ7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLW9mZnNldDtcbiAgICB3aWR0aDogJHBhZGRsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRwYWRkbGUtaGVpZ2h0O1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc3dpdGNoIHtcbiAgLy8gQ29udGFpbmVyIGNsYXNzXG4gIC5zd2l0Y2gge1xuICAgIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIDxpbnB1dD4gZWxlbWVudFxuICAuc3dpdGNoLWlucHV0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtaW5wdXQ7XG4gIH1cblxuICAvLyA8bGFiZWw+IGVsZW1lbnRcbiAgLnN3aXRjaC1wYWRkbGUge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1wYWRkbGU7XG4gIH1cblxuICAvLyBCYXNlIGxhYmVsIHRleHQgc3R5bGVzXG4gICVzd2l0Y2gtdGV4dCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQ7XG4gIH1cblxuICAvLyBBY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1hY3RpdmUge1xuICAgIEBleHRlbmQgJXN3aXRjaC10ZXh0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0LWFjdGl2ZTtcbiAgfVxuXG4gIC8vIEluYWN0aXZlIGxhYmVsIHRleHQgc3R5bGVzXG4gIC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIEBleHRlbmQgJXN3aXRjaC10ZXh0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0LWluYWN0aXZlO1xuICB9XG5cbiAgLy8gU3dpdGNoIHNpemVzXG4gIC5zd2l0Y2gudGlueSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTApLCAkc3dpdGNoLWhlaWdodC10aW55LCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5zbWFsbCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTIpLCAkc3dpdGNoLWhlaWdodC1zbWFsbCwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2gubGFyZ2Uge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDE2KSwgJHN3aXRjaC1oZWlnaHQtbGFyZ2UsICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1lbGVtZW50LW5lc3RpbmcsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFja2VkIHRhYmxlLiBVc2VmdWwgZm9yIHNtYWxsLXNjcmVlbiBsYXlvdXRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGhlYWRlciBbJHNob3ctaGVhZGVyLWZvci1zdGFja2VkXSAtIFNob3cgdGhlIGZpcnN0IHRoIG9mIGhlYWRlciB3aGVuIHN0YWNrZWQuXG5AbWl4aW4gdGFibGUtc3RhY2soJGhlYWRlcjogJHNob3ctaGVhZGVyLWZvci1zdGFja2VkKSB7XG4gIEBpZiAkaGVhZGVyIHtcbiAgICB0aGVhZCB7XG4gICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICB0aCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgQGluY2x1ZGUgdGFibGUtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gIH1cblxuICB0YWJsZS5ob3ZlciB7XG4gICAgQGluY2x1ZGUgdGFibGUtaG92ZXI7XG4gIH1cblxuICAudGFibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgdGFibGUge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAwKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYGV4cGFuZC1uYCBjbGFzc2VzIHRvIGluY2x1ZGUgaW4gdGhlIENTUy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYnMge1xuICAudGFicyB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIH1cblxuICAvLyBWZXJ0aWNhbFxuICAudGFicy52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBTaW1wbGVcbiAgLnRhYnMuc2ltcGxlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBjb2xvclxuICAudGFicy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkcHJpbWFyeS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtdGl0bGUge1xuICAgIEBpbmNsdWRlIHRhYnMtdGl0bGU7XG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQ7XG4gIH1cblxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQtdmVydGljYWw7XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGh1bWJuYWlsXG4vLy8vXG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wcnRpZXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRodW1ibmFpbCBzdHlsZXMgdG8gYW4gZWxlbWVudC5cbkBtaXhpbiB0aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tO1xuXG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtcmFkaXVzO1xuICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdztcblxuICBsaW5lLWhlaWdodDogMDtcbn1cblxuQG1peGluIHRodW1ibmFpbC1saW5rIHtcbiAgdHJhbnNpdGlvbjogJHRodW1ibmFpbC10cmFuc2l0aW9uO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93LWhvdmVyO1xuICB9XG5cbiAgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGh1bWJuYWlsIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICB9XG5cbiAgYS50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aXRsZS1iYXJcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBXZWlnaHRcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhciBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiB0aGUgbWVudSBpY29uIGFuZCB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRpdGxlLWJhciB7XG4gIC50aXRsZS1iYXIge1xuICAgIHBhZGRpbmc6ICR0aXRsZWJhci1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICR0aXRsZWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGl0bGViYXItY29sb3I7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICAubWVudS1pY29uIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXdlaWdodDogJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvb2x0aXBcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGJvdHRvbSBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIExpc3RcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBmb250LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgb2YgdGhlIHRvb2x0aXAgdGV4dC4gQnkgZGVmYXVsdCwgd2UgcmVjb21tZW5kIGEgc21hbGxlciBmb250IHNpemUgdGhhbiB0aGUgYm9keSBjb3B5LlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgaGVpZ2h0IGZvciB0b29sdGlwcy4gVGhpcyBpcyBoZWxwZnVsIGZvciBjYWxjdWxhdGluZyB0aGUgZGlzdGFuY2Ugb2YgdGhlIHRvb2x0aXAgZnJvbSB0aGUgdG9vbHRpcCB3b3JkLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gIGZvbnQtd2VpZ2h0OiAkaGFzLXRpcC1mb250LXdlaWdodDtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG5AbWl4aW4gdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAjeyR0b29sdGlwLXBpcC1oZWlnaHR9KTtcbiAgei1pbmRleDogMTIwMDtcblxuICBtYXgtd2lkdGg6IDEwcmVtO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICR0b29sdGlwLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIHVwKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cblxuICAmLnRvcDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBkb3duKTtcbiAgICB0b3A6IDEwMCU7XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG5cbiAgJi5sZWZ0OjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIHJpZ2h0KTtcbiAgICB0b3A6IDUwJTtcbiAgICBib3R0b206IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cblxuICAmLnJpZ2h0OjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGxlZnQpO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b29sdGlwIHtcbiAgLmhhcy10aXAge1xuICAgIEBpbmNsdWRlIGhhcy10aXA7XG4gIH1cblxuICAudG9vbHRpcCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9wLWJhclxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0b3AgYmFyLiBUaGlzIGNvbG9yIGFsc28gY2FzY2FkZXMgdG8gbWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBzdWJtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuIFVzZWZ1bGwgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIHRyYW5zcGFyZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBmb3IgdGhlIHRvcCBiYXIgdGl0bGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBgPGlucHV0PmAgZWxlbWVudHMgaW5zaWRlIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHRvcCBiYXIgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0b3AgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiB0b3AtYmFyLWNvbnRhaW5lciB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgcGFkZGluZzogJHRvcGJhci1wYWRkaW5nO1xuXG4gICYsXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgZGlmZmVybnQgZnJvbSAkdG9wYmFyLWJhY2tncm91bmQtc3VibWVudVxuICBAaWYgKCR0b3BiYXItYmFja2dyb3VuZCAhPSAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZCkge1xuICAgIHVsIHVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RyYWluIHdpZHRoIG9mIGlucHV0cyBieSBkZWZhdWx0IHRvIG1ha2UgdGhlbSBlYXNpZXIgdG8gYXJyYW5nZVxuICBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAkdG9wYmFyLWlucHV0LXdpZHRoO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICB9XG5cbiAgLy8gVGhlIGFib3ZlIHN0eWxlcyBzaG91bGRuJ3QgYXBwbHkgdG8gaW5wdXQgZ3JvdXAgZmllbGRzXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gIH1cblxuICBpbnB1dC5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gTWFrZXMgc2VjdGlvbnMgb2YgYSB0b3AgYmFyIHN0YWNrIG9uIHRvcCBvZiBlYWNoIG90aGVyLlxuQG1peGluIHRvcC1iYXItc3RhY2tlZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gVW5kb2VzIHRoZSBDU1MgYXBwbGllZCBieSB0aGUgYHRvcC1iYXItc3RhY2tlZCgpYCBtaXhpbi5cbkBtaXhpbiB0b3AtYmFyLXVuc3RhY2sge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuXG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtICgxIC8gMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEgLyAxNik7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbG9hdFxuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzIHtcbiAgLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLmNsZWFyZml4IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxufVxuIiwiLyogTWFpbiBTdHlsZSBTaGVldFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCAnbWFpbi9mb250cyc7XG5AaW1wb3J0ICdtYWluL2RlZmF1bHRzJztcbkBpbXBvcnQgJ21haW4vY29udGFpbmVyJztcbkBpbXBvcnQgJ21haW4vYXJ0aWNsZSc7XG5AaW1wb3J0ICdtYWluL2Zvcm1zJztcbkBpbXBvcnQgJ21haW4vaGVhZGVyJztcbkBpbXBvcnQgJ21haW4vZm9vdGVyJztcbi8vQGltcG9ydCAnbWFpbi9wcm9ncmVzcyc7XG5AaW1wb3J0ICdtYWluL3RyaXAtYWR2aXNvcnknO1xuLy9AaW1wb3J0ICdtYWluL3RyaXAtc3VtbWFyeSc7XG5AaW1wb3J0ICdtYWluL3BsYW4tc3VtbWFyeSc7XG5AaW1wb3J0ICdtYWluL2J1dHRvbi13ZWxsJztcbkBpbXBvcnQgJ21haW4vcXRpcCc7XG5AaW1wb3J0ICdtYWluL2xvYWRpbmcnO1xuQGltcG9ydCAnbWFpbi9iZW5lZml0cy1wb3AtdXAnO1xuQGltcG9ydCAnbWFpbi9tb2RhbHMnO1xuIiwiLy9mb250c1xuJGZvbnQtZmFjZS1ibGFjazogODAwO1xuJGZvbnQtZmFjZS1ib2xkOiA3MDA7XG4kZm9udC1mYWNlLW1lZGl1bTogNTAwO1xuJGZvbnQtZmFjZS1mb3JtLXJlZ3VsYXI6IDQwMDtcbiRmb250LWZhY2UtcmVndWxhcjogMzAwO1xuJGZvbnQtZmFjZS1saWdodDogMzAwO1xuXG4vLyAgIEZvbnQgRmFjZXNcbi8vd2VpZ2h0c1xuJGZvbnQtZmFjZS1ibGFjazogODAwO1xuJGZvbnQtZmFjZS1ib2xkOiA3MDA7XG4kZm9udC1mYWNlLW1lZGl1bTogNTAwO1xuJGZvbnQtZmFjZS1mb3JtLXJlZ3VsYXI6IDQwMDtcbiRmb250LWZhY2UtcmVndWxhcjogMzAwO1xuJGZvbnQtZmFjZS1saWdodDogMzAwO1xuXG4vL2ZhbWlsaWVzXG4kZm9udC1mYW1pbHktcHJpbWFyeTogJ011c2VvIFNhbnMgUm91bmRlZCc7XG4kZm9udC1mYW1pbHktcmVndWxhcjogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4kZm9udC1mYW1pbHktbWVkaXVtOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1ib2xkOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1zZWNvbmRhcnk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xuJGZvbnQtZmFtaWx5LXNlY29uZGFyeS1ib2xkOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1zZWNvbmRhcnktbWVkaXVtOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1zZWNvbmRhcnktY29uZGVuc2VkOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiRmb250LWZhbWlseS1mb3JtLXJlZ3VsYXI6IEhlbHZldGljYTtcblxuLy9zb3VyY2VzXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWxpZ2h0O1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtMzAwLXdlYmZvbnQuZW90JyksXG4gICAgdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtMzAwLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC0zMDAtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtMzAwLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTMwMC13ZWJmb250LnN2ZyNtdXNlb19zYW5zX3JvdW5kZWRfMzAwcmVndWxhcicpIGZvcm1hdCgnc3ZnJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtbWVkaXVtO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQuZW90JyksXG4gICAgdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL011c2VvU2Fuc1JvdW5kZWQvbXVzZW9zYW5zcm91bmRlZC01MDAtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcuLi9mb250cy9NdXNlb1NhbnNSb3VuZGVkL211c2Vvc2Fuc3JvdW5kZWQtNTAwLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnLi4vZm9udHMvTXVzZW9TYW5zUm91bmRlZC9tdXNlb3NhbnNyb3VuZGVkLTUwMC13ZWJmb250LnN2ZyNtdXNlb19zYW5zX3JvdW5kZWRfNTAwcmVndWxhcicpIGZvcm1hdCgnc3ZnJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkNCQVNsYWJcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItUmVndWxhci5lb3RcIik7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLVJlZ3VsYXIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkNCQVNsYWJcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItQm9sZC5lb3RcIik7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiQ0JBU2xhYlwiO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1FeHRyYUJvbGQuZW90XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvQ0JBU2xhYldlYi1FeHRyYUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItRXh0cmFCb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9DQkFTbGFiV2ViLUV4dHJhQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0NCQVNsYWJXZWItRXh0cmFCb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogODAwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJDQkFTYW5zXCI7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9DQkFTYW5zV2ViLUxpZ2h0LmVvdFwiKTtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItTGlnaHQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItTGlnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItTGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9DQkFTYW5zV2ViLUxpZ2h0LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJDQkFTYW5zXCI7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9DQkFTYW5zV2ViLUJvbGQuZW90XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvQ0JBU2Fuc1dlYi1Cb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9DQkFTYW5zV2ViLUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0NCQVNhbnNXZWItQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vbi1sZWdvXCI7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdFwiKTtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb21vb24uZW90XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9pY29tb29uLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljLU5ldWVcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtUmVndWxhci5lb3Q/I2llZml4XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1SZWd1bGFyLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9IZWx2ZXRpYy1OZXVlLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljLU5ldWVcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtQm9sZC5lb3Q/I2llZml4XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1Cb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9IZWx2ZXRpYy1OZXVlLUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljLU5ldWVcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtRXh0cmFCb2xkLmVvdD8jaWVmaXhcIik7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9IZWx2ZXRpYy1OZXVlLUV4dHJhQm9sZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1FeHRyYUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0hlbHZldGljLU5ldWUtRXh0cmFCb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvSGVsdmV0aWMtTmV1ZS1FeHRyYUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiIsIlxuLy9jb2xvcnNcbiR3aGl0ZTogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuJGhlYWRlci10ZXh0LWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0aHVuZGVyLWFwcHJveCk7XG4kYnV0dG9uLWJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiRwbGFjZWhvbGRlci1lcnJvci10ZXh0LWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0b3JjaC1yZWQpO1xuJGVycm9yLXRleHQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRvcmNoLXJlZCk7XG5cbi8vb3JpZ2luYWwgc2VsZWN0b3JzXG4vL2xlZ2VuZCwgbGFiZWxcbiVmb3JtLWxhYmVsLWV4dGVuZHMge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1mb3JtLXJlZ3VsYXI7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi8vb3JpZ2luYWwgc2VsZWN0b3JzXG4vL2lucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sIGlucHV0W3R5cGU9XCJudW1iZXJcIl1cbiV0ZXh0LWlucHV0LWV4dGVuZHMge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWZvcm0tcmVndWxhcjtcbn1cblxuLy9vcmlnaW5hbCBzZWxlY3RvcnNcbi8vaW5wdXRbdHlwZT1cInJhZGlvXCJdLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl1cbiVjaGVjay1pbnB1dC1leHRlbmRzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vb3JpZ2luYWwgc2VsZWN0b3JzXG4vL2lucHV0W3R5cGU9XCJyYWRpb1wiXSArbGFiZWwsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArbGFiZWxcbiVsYWJlbC1leHRlbmRzIHtcbiAgICBtaW4taGVpZ2h0OiAyMnB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHBhZGRpbmc6IDJweCAwIDAgNTVweDtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1yYWRpbyBuby1yZXBlYXQgMXB4IC04OHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTEwcHggMTExcHg7XG59XG5cbiVyYWRpby1sYWJlbC1leHRlbmRzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMjVweDtcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIHRleHQtaW5kZW50OiAwO1xuICAgIHBhZGRpbmc6ICAxcmVtOy8vJGJ1dHRvbi1wYWRkaW5nO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1hcHByb3gpO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxN3B4KTtcbiAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdGh1bmRlci1hcHByb3gpO1xuICAgIC8vdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZSAkYmFja2dyb3VuZC1yYWRpbyBuby1yZXBlYXQgN3B4IDdweDtcbiAgICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vL29yaWdpbmFsIHNlbGVjdG9yc1xuLy9pbnB1dFt0eXBlPVwic3VibWl0XCJdLCBidXR0b24sIC5idG5Ib21lXG4lYnV0dG9uLWV4dGVuZHMge1xuICAgIGhlaWdodDogNDhweDtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1tZWRpdW07XG4gICAgY29sb3I6IG1hcC1kZWVwLWdldCgkYnctcGFsZXR0ZSwgZWxlY3RyaWMtYmx1ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xufVxuXG4vKiBEZWZhdWx0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogLS0tIEJsb2NrIEVsZW1lbnRzIC0tLSAqL1xuaHRtbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1pbi13aWR0aDogMzIwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcblxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vbmU7XG4gICAgfVxuXG59XG5cbi8qIC0tLSBUZXh0IEVsZW1lbnRzIC0tLSAqL1xuYSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLW1lZGl1bTtcbn1cblxuLyogLS0tIEhlYWRlciBUZXh0IC0tLSAqL1xuaDEge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1saWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDMwcHgpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0fVxuXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG59XG5cbmgyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG59XG5cbmgzIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICBtYXJnaW46IDAgMCAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAvKiBPbmx5IGFmZmVjdHMgcHJpbnQgbWVkaWEgKi9cbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbn1cblxuc3Ryb25nIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbn1cblxuXG4vKiAtLS0gTGlzdCBJdGVtcyAtLS0gKi9cbnVsIHtcblxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG59XG5cbm9sIHtcblxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG59XG5cbi8qIC0tLSBUYWJsZSAgRWxlbWVudHMgLS0tICovXG50aCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG50ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLyogLS0tIEZvcm0vSW5wdXRzIC0tLSAqL1xubGVnZW5kIHtcbiAgICBAZXh0ZW5kICVmb3JtLWxhYmVsLWV4dGVuZHM7XG4gICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5sYWJlbCB7XG4gICAgQGV4dGVuZCAlZm9ybS1sYWJlbC1leHRlbmRzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICYuZXJyb3IsXG4gICAgJi5lcnJvcjIsXG4gICAgJi5kYXRlRXJyb3Ige1xuICAgICAgICBtYXJnaW46IC0xMHB4IDAgMTBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLW1lZGl1bTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxM3B4KTtcbiAgICAgICAgY29sb3I6ICRlcnJvci10ZXh0LWNvbG9yO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxufVxuXG5pbnB1dFt0eXBlPWVtYWlsXTo6LW1zLWNsZWFyLFxuaW5wdXRbdHlwZT10ZXh0XTo6LW1zLWNsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZXJyb3ItaW1hZ2Uge1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xufVxuXG4vKiBTdWJtaXQgKi9cbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBAZXh0ZW5kICV0ZXh0LWlucHV0LWV4dGVuZHM7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgfVxuXG4gICAgJi5mb2N1c0xldmVsIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICBAZXh0ZW5kICV0ZXh0LWlucHV0LWV4dGVuZHM7XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIEBleHRlbmQgJXRleHQtaW5wdXQtZXh0ZW5kcztcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbn1cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgQGV4dGVuZCAldGV4dC1pbnB1dC1leHRlbmRzO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgQGV4dGVuZCAlY2hlY2staW5wdXQtZXh0ZW5kcztcblxuICAgICsgbGFiZWwge1xuICAgICAgICBAZXh0ZW5kICVyYWRpby1sYWJlbC1leHRlbmRzO1xuXG4gICAgICAgIC8vQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAgICAgICAgICAgLy8vKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgICAgICAgICAgLy9taW4td2lkdGg6IDExMHB4O1xuICAgICAgICAvL31cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgIC8vYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAvL2NvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZGVuaW0tYXBwcm94KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlICRiYWNrZ3JvdW5kLXJhZGlvLW9uIG5vLXJlcGVhdCA3cHggN3B4O1xuICAgICAgICAvL2JvcmRlci1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZGVuaW0tYXBwcm94KTtcbiAgICB9XG5cbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBAZXh0ZW5kICVjaGVjay1pbnB1dC1leHRlbmRzO1xuXG4gICAgKyBsYWJlbCB7XG4gICAgICAgIEBleHRlbmQgJXJhZGlvLWxhYmVsLWV4dGVuZHM7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGRlbmltLWFwcHJveCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGFsdG8tYXBwcm94KTtcbiAgICB9XG5cbn1cblxuLnByaW1hcnktYWN0aW9uLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgQGV4dGVuZCAlYnV0dG9uLWV4dGVuZHM7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRidXR0b24tY29sb3I7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG59XG5cblt0eXBlPSdidXR0b24nXSxcbmJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uLWV4dGVuZHM7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG59XG5cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl1bZGlzYWJsZWRdIHtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuYnV0dG9uW2Rpc2FibGVkXSB7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbn1cblxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICAgQGV4dGVuZCAlYnV0dG9uLWV4dGVuZHM7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG59XG5cbi8vLmJ0bkxpbmsge1xuICAvL21heC1oZWlnaHQ6IDQ4cHg7XG4gIC8vcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICAvL2JvcmRlcjogMDtcbiAgLy9mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlY29uZGFyeTtcbiAgLy9mb250LXdlaWdodDogJGZvbnQtZmFjZS1ib2xkO1xuICAvL3RleHQtYWxpZ246IGNlbnRlcjtcbiAgLy9jdXJzb3I6IHBvaW50ZXI7XG4gIC8vdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuXHQvL2Rpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Ly93aWR0aDogYXV0bztcbiAgLy9tYXJnaW46IDA7XG5cdC8vZm9udC1zaXplOiAxcmVtO1xuXG4gICAgLy8mOmZvY3VzIHtcbiAgICAgICAgLy9vdXRsaW5lOiBub25lO1xuICAgIC8vfVxuLy99XG5cbmlucHV0W3R5cGU9XCJidXR0b25cIl1bZGlzYWJsZWRdIHtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbn1cblxuLyogU2VsZWN0ICovXG5zZWxlY3Qge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlICRiYWNrZ3JvdW5kLXNlbGVjdC1hcnJvdyBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDE2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1pbmRlbnQ6IDAuMDAxcmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbn1cblxuaWZyYW1lIHtcbiAgICBib3JkZXI6IDA7XG59XG5cbi8qIEVycm9yL1ZhbGlkYXRpb24gKi9cbi5lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZXJyb3ItdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogJGVycm9yLXRleHQtY29sb3I7XG5cbiAgICBoMiB7XG4gICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItZXJyb3ItdGV4dC1jb2xvcjtcbiAgICB9XG5cbn1cblxuaW5wdXQuZXJyb3IsXG5zZWxlY3QuZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogJGVycm9yLXRleHQtY29sb3I7XG4gICAgY29sb3I6ICRoZWFkZXItdGV4dC1jb2xvcjtcbn1cblxuLmVycm9yMiB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZXJyb3ItdGV4dC1jb2xvcjtcblxuICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICRwbGFjZWhvbGRlci1lcnJvci10ZXh0LWNvbG9yO1xuICAgIH1cblxufVxuXG4uZHJ1cGFsLW1lc3NhZ2VzIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLmZvcm0taXRlbS0tZXJyb3ItbWVzc2FnZSB7XG4gICAgc3Ryb25nIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgY29sb3I6ICRlcnJvci10ZXh0LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxufVxuXG4vKiBFbmQgRGVmYXVsdHMgKi9cbiIsIlxuLy9jb2xvcnNcblxuLyogQ29udGFpbmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jb3V0ZXItY29udGFpbmVyIHtcbiAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvL21hcmdpbi10b3A6IDEwMHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSBkb3duKX0ge1xuICAgICAgICAvKiBPbmx5IGFmZmVjdHMgbGFyZ2UtbWVkaXVtIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICAgICAgcGFkZGluZzogMCAxNnB4O1xuICAgICAgICAvL21hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuXG59XG5cbiNjb250ZW50IHtcblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdH1cblxufVxuLyogRW5kIENvbnRhaW5lciAqL1xuIiwiLy9jb2xvcnNcbiRoZWFkaW5nLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0aHVuZGVyLWFwcHJveCk7XG5cbi8vZm9udHNcbiRmb250LWZhbWlsaWVzOiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5LCAkYm9keS1mb250LWZhbWlseTtcblxuLyogQXJ0aWNsZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuc2VjdGlvbiB7XG5cbiAgICAmLmJvZHktY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAjYXJ0aWNsZS1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gICAgICAgICAgICBoMSB7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0YWJsZSB7XG5cbiAgICAgICAgICAgICAgICB0aCxcbiAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGJsYWNrLXNvbGlkKTtcbiAgICAgICAgICAgIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgICAgICAgICBcdFx0dHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICAgICAgICAgICAgXHRcdGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGJsYWNrLXNvbGlkKTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkZW5pbS1hcHByb3gpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5pbmJvdW5kLW1lc3NhZ2UsXG4gICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICBtYXJnaW46IDEyMHB4IGF1dG87XG5cbiAgICAgICAgLy9pbWcge1xuICAgICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgICAgICAvL31cblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NTZweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMXB4KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuICAgICAgICAvL2ZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYm9sZDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtbWVkaXVtO1xuICAgICAgICBjb2xvcjogJGhlYWRpbmctY29sb3I7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG59XG4vKiBFbmQgQXJ0aWNsZSAqL1xuIiwiXG4vL2NvbG9yc1xuJGlucHV0LWJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcblxuLyogRm9ybXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wdXJjaGFzZS1saXN0IHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICA+IGxpIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDVweCAwO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tc21hbGwgZG93bil9IHtcbiAgICAgICAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLnN0YXJ0IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZW5kIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuXG59XG5cbi8qIFJhZGlvL0NoZWNrYm94IGNvbnRhaW5lcnMgKi9cbi5yYWRpby1saXN0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgIC8vbGFiZWwge1xuICAgICAgICAgICAgICAgLy8gYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIC8vfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LWluZGVudDogLTIwcHg7XG4gICAgfVxuXG59XG5cbi5jaGVja0xpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgfVxuXG59XG5cbmlucHV0LmRvYiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtc2VsZWN0LWFycm93IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAyMHB4IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggNnB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4vKiBFbmQgRm9ybXMgKi9cbiIsIlxuLy9jb2xvcnNcbiRoZWFkZXItYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuJGhlYWRlci10ZXh0LWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0aHVuZGVyLWFwcHJveCk7XG5cbi8qIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI2hlYWRlciB7XG4gICAgYmFja2dyb3VuZDogJGhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBhbHRvLWFwcHJveCk7XG59XG5cbiNidy1zdWItbmF2IHtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZGVlcC1nZXQoJGJ3LXBhbGV0dGUsIGRlZXAtYmx1ZSk7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLW1lZGl1bTtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAgICAgICBmb250LXNpemU6ICRzdWJuYXYtZm9udC1zaXplO1xuICAgIH1cblxuICAgIG5hdiB7XG4gICAgICAgID4gLmNvbHVtbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSxcbiAgICAuZGl2aWRlciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgfVxuXG4gICAgLmRpdmlkZXIge1xuICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgIGhlaWdodDogODBweDtcbiAgICAvL21hcmdpbjogMDtcbiAgICAvL3BhZGRpbmc6IDAgMCAwIDMwcHg7XG5cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgLyogT25seSBhZmZlY3RzIG1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMTZweDtcbiAgICB9XG5cbiAgICAuc2l0ZS1sb2dvIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIG1hcmdpbjogMjNweCAxOHB4IDE4cHggMDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICAgICAgICAgIG1hcmdpbjogN3B4IDEwcHggMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLy5oZWFkZXItY29weSB7XG4gICAgICAgIC8vZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAvL2Zsb2F0OiBsZWZ0O1xuICAgICAgICAvL21hcmdpbjogMjNweCAwIDAgMDtcbiAgICAgICAgLy9wYWRkaW5nOiAwO1xuICAgICAgICAvL2NvbG9yOiAkaGVhZGVyLXRleHQtY29sb3I7XG4gICAgICAgIC8vZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1yZWd1bGFyO1xuICAgICAgICAvL2ZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWxpZ2h0O1xuICAgICAgICAvL2ZvbnQtc2l6ZTogcmVtLWNhbGMoMjhweCk7XG5cbiAgICAgICAgLy9AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICAvLy8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgICAgICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgICAgICAvL31cblxuICAgIC8vfVxuXG4gICAgLmNsb3NlLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2xvc2UtaWNvbiBuby1yZXBlYXQgLTZweCAtNnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMycHggMzJweDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgICAgLyogT25seSBhZmZlY3RzIG1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxOHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG4vKiBFbmQgSGVhZGVycyAqL1xuIiwiLy9jb2xvcnNcbiRmb290ZXItYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuXG5cblxuLyogRm9vdGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmZvb3RlciB7XG5cbiAgLy8gU2l0ZSBGb290ZXJcbiAgLnNpdGUtZm9vdGVyIHtcbiAgICBtaW4taGVpZ2h0OiAxMjVweDtcbiAgICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWJhY2tncm91bmQtY29sb3I7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcbiAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuXG4gICAgLmNtLWxvZ28tZm9vdGVyIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1heC13aWR0aDogMTAwcHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcbiAgICAgICAgLyogT25seSBhZmZlY3RzIG1lZGl1bSBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAgICYuY29weXJpZ2h0IHtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGErYSB7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cbi8qIEVuZCBGb290ZXIgKi9cbiIsIlxuLyogVHJpcCBBZHZpc29yeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4jdHJhdmVsLWFkdmlzb3J5IHtcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCAxMDBweDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgYmFja2dyb3VuZDogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdmFsZW5jaWEtYXBwcm94KSAkdHJhdmVsLWFkdmlzb3J5LWljb24gbm8tcmVwZWF0IDgwcHggMThweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDRweCAxNHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLWxhcmdlIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcbiAgICAgICAgcGFkZGluZzogNzBweCAzMHB4IDIwcHggMzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkdHJhdmVsLWFkdmlzb3J5LW1vYmlsZS1pY29uO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzN3B4IDMzcHg7XG4gICAgfVxuXG4gICAgc3Ryb25nIHtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLWxhcmdlIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8ga2lsbCB0b3AgYm9yZGVyIHJhZGl1cyBvbiBvbiBuZXh0IGNhcHN1bGVcbiAgICAmICsgLnBvbGljeS1saXN0LWNhcHN1bGUge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLWxhcmdlIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbi8qIEVuZCBUcmlwIEFkdmlzb3J5ICovXG4iLCIvKiBQbGFuIFN1bW1hcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wbGFuLXN1bW1hcnkge1xuICAuaXMtc3R1Y2sgJiB7XG4gICAgd2lkdGg6IDM1NXB4O1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNjRweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gdXApfSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBwYWRkaW5nLXRvcDogMjJweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWNoYWxpY2UtYXBwcm94KTtcbiAgICB9XG4gIH1cblxuICAucHJpY2UtdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLy93aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgcGFkZGluZy10b3A6IDIycHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1jaGFsaWNlLWFwcHJveCk7XG4gICAgYm9yZGVyLXNwYWNpbmc6IGluaGVyaXQ7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICAgIH1cblxuICAgIHRib2R5LCB0aGVhZCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgIH1cblxuICAgIHRoIHtcbiAgICAgICYuZGlzY291bnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgdHI6bnRoLWxhc3Qtb2YtdHlwZSgyKSB0aCxcbiAgICB0cjpudGgtbGFzdC1vZi10eXBlKDIpIHRkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC50b3RhbCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBzaWx2ZXItY2hhbGljZS1hcHByb3gpO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1ib2xkO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHJlbW92ZSBidXR0b25cbiAgLnJlbW92ZS1vcHRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG5cbiAgICAvL21hcmdpbjogNXB4IC0yMHB4IDAgMDtcbiAgICBtYXJnaW46IDVweCAwIDAgMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAkY2xvc2UtaWNvbiBuby1yZXBlYXQgMCAwO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAxMnB4O1xuICAgIHRleHQtaW5kZW50OiAxMDAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBzZWNvbmRhcnkgYWN0aW9uc1xuICAuc3VtbWFyeS1hY3Rpb25zIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICB9XG59XG5cbi8qIEVuZCBQbGFuIFN1bW1lcnkgKi9cbiIsIi8qIEJ1dHRvbiBXZWxsICovXG4uYnV0dG9uLXdlbGwge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWNoYWxpY2UtYXBwcm94KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAgIC8qIE9ubHkgYWZmZWN0cyBwcmludCBtZWRpYSAqL1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIHByaW1hcnkgYnV0dG9uXG4gICAgLnByaW1hcnktYWN0aW9uLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZWNvbmRhcnktYm9sZDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtbWVkaXVtO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMThweCk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkYnctcGFsZXR0ZSwgZWxlY3RyaWMtYmx1ZSk7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1zbWFsbCBkb3duKX0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAgICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1jb2xvciwgJGxpZ2h0bmVzczogNTAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogNTAlKTtcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC8vIHNlY29uZGFyeSBidXR0b25cbiAgICAuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1tZWRpdW07XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBibGFjay1zb2xpZCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICAgICAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBibGFjay1zb2xpZCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1zbWFsbCBkb3duKX0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAgICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkZW5pbS1hcHByb3gpO1xuICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGJsYWNrLXNvbGlkKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gYmFjayBidXR0b25cbiAgICAuYnV0dG9uLXdlbGwtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMThweCk7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1zbWFsbCBkb3duKX0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAgICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbiIsIlxuLy9jb2xvcnNcbiRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4kdGV4dC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdGh1bmRlci1hcHByb3gpO1xuJHRoLWJvcmRlci1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgYWxhYmFzdGVyLWFwcHJveCk7XG5cbi8vZm9udHNcbiRmb250LWZhbWlsaWVzOiAkZm9udC1mYW1pbHktcHJpbWFyeTtcblxuLyogUXRpcCBCYXNlbGluZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI3F0aXAtb3ZlcmxheS5ibHVycywucXRpcC1jbG9zZXtjdXJzb3I6cG9pbnRlcn0ucXRpcHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0yODAwMHB4O3RvcDotMjgwMDBweDtkaXNwbGF5Om5vbmU7bWF4LXdpZHRoOjI4MHB4O21pbi13aWR0aDo1MHB4O2ZvbnQtc2l6ZToxMC41cHg7bGluZS1oZWlnaHQ6MTJweDtkaXJlY3Rpb246bHRyO2JveC1zaGFkb3c6bm9uZTtwYWRkaW5nOjB9LnF0aXAtY29udGVudCwucXRpcC10aXRsZWJhcntwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59LnF0aXAtY29udGVudHtwYWRkaW5nOjVweCA5cHg7dGV4dC1hbGlnbjpsZWZ0O3dvcmQtd3JhcDpicmVhay13b3JkfS5xdGlwLXRpdGxlYmFye3BhZGRpbmc6NXB4IDM1cHggNXB4IDEwcHg7Ym9yZGVyLXdpZHRoOjAgMCAxcHg7Zm9udC13ZWlnaHQ6NzAwfS5xdGlwLXRpdGxlYmFyKy5xdGlwLWNvbnRlbnR7Ym9yZGVyLXRvcC13aWR0aDowIWltcG9ydGFudH0ucXRpcC1jbG9zZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotOXB4O3RvcDotOXB4O3otaW5kZXg6MTE7b3V0bGluZTowO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnR9LnF0aXAtdGl0bGViYXIgLnF0aXAtY2xvc2V7cmlnaHQ6NHB4O3RvcDo1MCU7bWFyZ2luLXRvcDotOXB4fSogaHRtbCAucXRpcC10aXRsZWJhciAucXRpcC1jbG9zZXt0b3A6MTZweH0ucXRpcC1pY29uIC51aS1pY29uLC5xdGlwLXRpdGxlYmFyIC51aS1pY29ue2Rpc3BsYXk6YmxvY2s7dGV4dC1pbmRlbnQ6LTEwMDBlbTtkaXJlY3Rpb246bHRyfS5xdGlwLWljb24sLnF0aXAtaWNvbiAudWktaWNvbnstbW96LWJvcmRlci1yYWRpdXM6M3B4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czozcHg7Ym9yZGVyLXJhZGl1czozcHg7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LnF0aXAtaWNvbiAudWktaWNvbnt3aWR0aDoxOHB4O2hlaWdodDoxNHB4O2xpbmUtaGVpZ2h0OjE0cHg7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1pbmRlbnQ6MDtmb250LXdlaWdodDpub3JtYWwgNzAwIDEwcHgvMTNweCBUYWhvbWEsc2Fucy1zZXJpZjtjb2xvcjppbmhlcml0O2JhY2tncm91bmQ6LTEwMGVtIC0xMDBlbSBuby1yZXBlYXR9LnF0aXAtZGVmYXVsdHtib3JkZXI6MXB4IHNvbGlkICNGMUQwMzE7YmFja2dyb3VuZC1jb2xvcjojRkZGRkEzO2NvbG9yOiM1NTV9LnF0aXAtZGVmYXVsdCAucXRpcC10aXRsZWJhcntiYWNrZ3JvdW5kLWNvbG9yOiNGRkVGOTN9LnF0aXAtZGVmYXVsdCAucXRpcC1pY29ue2JvcmRlci1jb2xvcjojQ0NDO2JhY2tncm91bmQ6I0YxRjFGMTtjb2xvcjojNzc3fS5xdGlwLWRlZmF1bHQgLnF0aXAtdGl0bGViYXIgLnF0aXAtY2xvc2V7Ym9yZGVyLWNvbG9yOiNBQUE7Y29sb3I6IzExMX0ucXRpcC1saWdodHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiNFMkUyRTI7Y29sb3I6IzQ1NDU0NX0ucXRpcC1saWdodCAucXRpcC10aXRsZWJhcntiYWNrZ3JvdW5kLWNvbG9yOiNmMWYxZjF9LnF0aXAtZGFya3tiYWNrZ3JvdW5kLWNvbG9yOiM1MDUwNTA7Ym9yZGVyLWNvbG9yOiMzMDMwMzA7Y29sb3I6I2YzZjNmM30ucXRpcC1kYXJrIC5xdGlwLXRpdGxlYmFye2JhY2tncm91bmQtY29sb3I6IzQwNDA0MH0ucXRpcC1kYXJrIC5xdGlwLWljb257Ym9yZGVyLWNvbG9yOiM0NDR9LnF0aXAtZGFyayAucXRpcC10aXRsZWJhciAudWktc3RhdGUtaG92ZXJ7Ym9yZGVyLWNvbG9yOiMzMDMwMzB9LnF0aXAtY3JlYW17YmFja2dyb3VuZC1jb2xvcjojRkJGN0FBO2JvcmRlci1jb2xvcjojRjlFOThFO2NvbG9yOiNBMjdEMzV9LnF0aXAtcmVkLC5xdGlwLXJlZCAucXRpcC1pY29uLC5xdGlwLXJlZCAucXRpcC10aXRsZWJhciAudWktc3RhdGUtaG92ZXJ7Ym9yZGVyLWNvbG9yOiNEOTUyNTJ9LnF0aXAtY3JlYW0gLnF0aXAtdGl0bGViYXJ7YmFja2dyb3VuZC1jb2xvcjojRjBERTdEfS5xdGlwLWNyZWFtIC5xdGlwLWNsb3NlIC5xdGlwLWljb257YmFja2dyb3VuZC1wb3NpdGlvbjotODJweCAwfS5xdGlwLXJlZHtiYWNrZ3JvdW5kLWNvbG9yOiNGNzhCODM7Y29sb3I6IzkxMjMyM30ucXRpcC1yZWQgLnF0aXAtdGl0bGViYXJ7YmFja2dyb3VuZC1jb2xvcjojRjA2RDY1fS5xdGlwLXJlZCAucXRpcC1jbG9zZSAucXRpcC1pY29ue2JhY2tncm91bmQtcG9zaXRpb246LTEwMnB4IDB9LnF0aXAtZ3JlZW57YmFja2dyb3VuZC1jb2xvcjojQ0FFRDlFO2JvcmRlci1jb2xvcjojOTBEOTNGO2NvbG9yOiMzRjYyMTl9LnF0aXAtZ3JlZW4gLnF0aXAtdGl0bGViYXJ7YmFja2dyb3VuZC1jb2xvcjojQjBERTc4fS5xdGlwLWdyZWVuIC5xdGlwLWNsb3NlIC5xdGlwLWljb257YmFja2dyb3VuZC1wb3NpdGlvbjotNDJweCAwfS5xdGlwLWJsdWV7YmFja2dyb3VuZC1jb2xvcjojRTVGNkZFO2JvcmRlci1jb2xvcjojQUREOUVEO2NvbG9yOiM1RTk5QkR9LnF0aXAtYmx1ZSAucXRpcC10aXRsZWJhcntiYWNrZ3JvdW5kLWNvbG9yOiNEMEU5RjV9LnF0aXAtYmx1ZSAucXRpcC1jbG9zZSAucXRpcC1pY29ue2JhY2tncm91bmQtcG9zaXRpb246LTJweCAwfS5xdGlwLXNoYWRvd3std2Via2l0LWJveC1zaGFkb3c6MXB4IDFweCAzcHggMXB4IHJnYmEoMCwwLDAsLjE1KTstbW96LWJveC1zaGFkb3c6MXB4IDFweCAzcHggMXB4IHJnYmEoMCwwLDAsLjE1KTtib3gtc2hhZG93OjFweCAxcHggM3B4IDFweCByZ2JhKDAsMCwwLC4xNSl9LnF0aXAtYm9vdHN0cmFwLC5xdGlwLXJvdW5kZWQsLnF0aXAtdGlwc3l7LW1vei1ib3JkZXItcmFkaXVzOjVweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NXB4O2JvcmRlci1yYWRpdXM6NXB4fS5xdGlwLXJvdW5kZWQgLnF0aXAtdGl0bGViYXJ7LW1vei1ib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwfS5xdGlwLXlvdXR1YmV7LW1vei1ib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJvcmRlci1yYWRpdXM6MnB4O2JvcmRlci1yYWRpdXM6MnB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDAgM3B4ICMzMzM7LW1vei1ib3gtc2hhZG93OjAgMCAzcHggIzMzMztib3gtc2hhZG93OjAgMCAzcHggIzMzMztjb2xvcjojZmZmO2JvcmRlcjowIHNvbGlkIHRyYW5zcGFyZW50O2JhY2tncm91bmQ6IzRBNEE0QTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoMCwjNEE0QTRBKSxjb2xvci1zdG9wKDEwMCUsIzAwMCkpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCM0QTRBNEEgMCwjMDAwIDEwMCUpO2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQodG9wLCM0QTRBNEEgMCwjMDAwIDEwMCUpO2JhY2tncm91bmQtaW1hZ2U6LW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIzRBNEE0QSAwLCMwMDAgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCM0QTRBNEEgMCwjMDAwIDEwMCUpfS5xdGlwLXlvdXR1YmUgLnF0aXAtdGl0bGViYXJ7YmFja2dyb3VuZC1jb2xvcjojNEE0QTRBO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKX0ucXRpcC15b3V0dWJlIC5xdGlwLWNvbnRlbnR7cGFkZGluZzouNzVlbTtmb250OjEycHggYXJpYWwsc2Fucy1zZXJpZjtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkdyYWRpZW50KEdyYWRpZW50VHlwZT0wLCBTdGFydENvbG9yU3RyPSM0YTRhNGEsIEVuZENvbG9yU3RyPSMwMDAwMDApOy1tcy1maWx0ZXI6XCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuR3JhZGllbnQoR3JhZGllbnRUeXBlPTAsU3RhcnRDb2xvclN0cj0jNGE0YTRhLEVuZENvbG9yU3RyPSMwMDAwMDApO1wifS5xdGlwLXlvdXR1YmUgLnF0aXAtaWNvbntib3JkZXItY29sb3I6IzIyMn0ucXRpcC15b3V0dWJlIC5xdGlwLXRpdGxlYmFyIC51aS1zdGF0ZS1ob3Zlcntib3JkZXItY29sb3I6IzMwMzAzMH0ucXRpcC1qdG9vbHN7YmFja2dyb3VuZDojMjMyMzIzO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNyk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxmcm9tKCM3MTcxNzEpLHRvKCMyMzIzMjMpKTtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwjNzE3MTcxLCMyMzIzMjMpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCM3MTcxNzEsIzIzMjMyMyk7YmFja2dyb3VuZC1pbWFnZTotbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjNzE3MTcxLCMyMzIzMjMpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwjNzE3MTcxLCMyMzIzMjMpO2JvcmRlcjoycHggc29saWQgI2RkZDtib3JkZXI6MnB4IHNvbGlkIHJnYmEoMjQxLDI0MSwyNDEsMSk7LW1vei1ib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJvcmRlci1yYWRpdXM6MnB4O2JvcmRlci1yYWRpdXM6MnB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDAgMTJweCAjMzMzOy1tb3otYm94LXNoYWRvdzowIDAgMTJweCAjMzMzO2JveC1zaGFkb3c6MCAwIDEycHggIzMzM30ucXRpcC1qdG9vbHMgLnF0aXAtdGl0bGViYXJ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9IzcxNzE3MSwgZW5kQ29sb3JzdHI9IzRBNEE0QSk7LW1zLWZpbHRlcjpcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSM3MTcxNzEsZW5kQ29sb3JzdHI9IzRBNEE0QSlcIn0ucXRpcC1qdG9vbHMgLnF0aXAtY29udGVudHtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9IzRBNEE0QSwgZW5kQ29sb3JzdHI9IzIzMjMyMyk7LW1zLWZpbHRlcjpcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSM0QTRBNEEsZW5kQ29sb3JzdHI9IzIzMjMyMylcIn0ucXRpcC1qdG9vbHMgLnF0aXAtY29udGVudCwucXRpcC1qdG9vbHMgLnF0aXAtdGl0bGViYXJ7YmFja2dyb3VuZDowIDA7Y29sb3I6I2ZmZjtib3JkZXI6MCBkYXNoZWQgdHJhbnNwYXJlbnR9LnF0aXAtanRvb2xzIC5xdGlwLWljb257Ym9yZGVyLWNvbG9yOiM1NTV9LnF0aXAtanRvb2xzIC5xdGlwLXRpdGxlYmFyIC51aS1zdGF0ZS1ob3Zlcntib3JkZXItY29sb3I6IzMzM30ucXRpcC1jbHVldGlwey13ZWJraXQtYm94LXNoYWRvdzo0cHggNHB4IDVweCByZ2JhKDAsMCwwLC40KTstbW96LWJveC1zaGFkb3c6NHB4IDRweCA1cHggcmdiYSgwLDAsMCwuNCk7Ym94LXNoYWRvdzo0cHggNHB4IDVweCByZ2JhKDAsMCwwLC40KTtiYWNrZ3JvdW5kLWNvbG9yOiNEOUQ5QzI7Y29sb3I6IzExMTtib3JkZXI6MCBkYXNoZWQgdHJhbnNwYXJlbnR9LnF0aXAtY2x1ZXRpcCAucXRpcC10aXRsZWJhcntiYWNrZ3JvdW5kLWNvbG9yOiM4Nzg3NkE7Y29sb3I6I2ZmZjtib3JkZXI6MCBkYXNoZWQgdHJhbnNwYXJlbnR9LnF0aXAtY2x1ZXRpcCAucXRpcC1pY29ue2JvcmRlci1jb2xvcjojODA4MDY0fS5xdGlwLWNsdWV0aXAgLnF0aXAtdGl0bGViYXIgLnVpLXN0YXRlLWhvdmVye2JvcmRlci1jb2xvcjojNjk2OTUyO2NvbG9yOiM2OTY5NTJ9LnF0aXAtdGlwc3l7YmFja2dyb3VuZDojMDAwO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuODcpO2NvbG9yOiNmZmY7Ym9yZGVyOjAgc29saWQgdHJhbnNwYXJlbnQ7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6J0x1Y2lkYSBHcmFuZGUnLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjE2cHg7dGV4dC1zaGFkb3c6MCAxcHggIzAwMH0ucXRpcC10aXBzeSAucXRpcC10aXRsZWJhcntwYWRkaW5nOjZweCAzNXB4IDAgMTBweDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5xdGlwLXRpcHN5IC5xdGlwLWNvbnRlbnR7cGFkZGluZzo2cHggMTBweH0ucXRpcC10aXBzeSAucXRpcC1pY29ue2JvcmRlci1jb2xvcjojMjIyO3RleHQtc2hhZG93Om5vbmV9LnF0aXAtdGlwc3kgLnF0aXAtdGl0bGViYXIgLnVpLXN0YXRlLWhvdmVye2JvcmRlci1jb2xvcjojMzAzMDMwfS5xdGlwLXRpcHBlZHtib3JkZXI6M3B4IHNvbGlkICM5NTlGQTk7LW1vei1ib3JkZXItcmFkaXVzOjNweDstd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1yYWRpdXM6M3B4O2JhY2tncm91bmQtY29sb3I6I0Y5RjlGOTtjb2xvcjojNDU0NTQ1O2ZvbnQtd2VpZ2h0OjQwMDtmb250LWZhbWlseTpzZXJpZn0ucXRpcC10aXBwZWQgLnF0aXAtdGl0bGViYXJ7Ym9yZGVyLWJvdHRvbS13aWR0aDowO2NvbG9yOiNmZmY7YmFja2dyb3VuZDojM0E3OUI4O2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AsbGVmdCBib3R0b20sZnJvbSgjM0E3OUI4KSx0bygjMkU2MjlEKSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIzNBNzlCOCwjMkU2MjlEKTtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwjM0E3OUI4LCMyRTYyOUQpO2JhY2tncm91bmQtaW1hZ2U6LW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIzNBNzlCOCwjMkU2MjlEKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsIzNBNzlCOCwjMkU2MjlEKTtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9IzNBNzlCOCwgZW5kQ29sb3JzdHI9IzJFNjI5RCk7LW1zLWZpbHRlcjpcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSMzQTc5QjgsZW5kQ29sb3JzdHI9IzJFNjI5RClcIn0ucXRpcC10aXBwZWQgLnF0aXAtaWNvbntib3JkZXI6MnB4IHNvbGlkICMyODU1ODk7YmFja2dyb3VuZDojMjg1NTg5fS5xdGlwLXRpcHBlZCAucXRpcC1pY29uIC51aS1pY29ue2JhY2tncm91bmQtY29sb3I6I0ZCRkJGQjtjb2xvcjojNTU1fS5xdGlwLWJvb3RzdHJhcHtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoyMHB4O2NvbG9yOiMzMzM7cGFkZGluZzoxcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpOy13ZWJraXQtYm9yZGVyLXJhZGl1czo2cHg7LW1vei1ib3JkZXItcmFkaXVzOjZweDtib3JkZXItcmFkaXVzOjZweDstd2Via2l0LWJveC1zaGFkb3c6MCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKTstbW96LWJveC1zaGFkb3c6MCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKTtib3gtc2hhZG93OjAgNXB4IDEwcHggcmdiYSgwLDAsMCwuMik7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7LW1vei1iYWNrZ3JvdW5kLWNsaXA6cGFkZGluZztiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3h9LnF0aXAtYm9vdHN0cmFwIC5xdGlwLXRpdGxlYmFye3BhZGRpbmc6OHB4IDE0cHg7bWFyZ2luOjA7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjE4cHg7YmFja2dyb3VuZC1jb2xvcjojZjdmN2Y3O2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlYmViZWI7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjVweCA1cHggMCAwOy1tb3otYm9yZGVyLXJhZGl1czo1cHggNXB4IDAgMDtib3JkZXItcmFkaXVzOjVweCA1cHggMCAwfS5xdGlwLWJvb3RzdHJhcCAucXRpcC10aXRsZWJhciAucXRpcC1jbG9zZXtyaWdodDoxMXB4O3RvcDo0NSU7Ym9yZGVyLXN0eWxlOm5vbmV9LnF0aXAtYm9vdHN0cmFwIC5xdGlwLWNvbnRlbnR7cGFkZGluZzo5cHggMTRweH0ucXRpcC1ib290c3RyYXAgLnF0aXAtaWNvbntiYWNrZ3JvdW5kOjAgMH0ucXRpcC1ib290c3RyYXAgLnF0aXAtaWNvbiAudWktaWNvbnt3aWR0aDphdXRvO2hlaWdodDphdXRvO2Zsb2F0OnJpZ2h0O2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjcwMDtsaW5lLWhlaWdodDoxOHB4O2NvbG9yOiMwMDA7dGV4dC1zaGFkb3c6MCAxcHggMCAjZmZmO29wYWNpdHk6LjI7ZmlsdGVyOmFscGhhKG9wYWNpdHk9MjApfSNxdGlwLW92ZXJsYXksI3F0aXAtb3ZlcmxheSBkaXZ7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LnF0aXAtYm9vdHN0cmFwIC5xdGlwLWljb24gLnVpLWljb246aG92ZXJ7Y29sb3I6IzAwMDt0ZXh0LWRlY29yYXRpb246bm9uZTtjdXJzb3I6cG9pbnRlcjtvcGFjaXR5Oi40O2ZpbHRlcjphbHBoYShvcGFjaXR5PTQwKX0ucXRpcDpub3QoLmllOWhheG9ycykgZGl2LnF0aXAtY29udGVudCwucXRpcDpub3QoLmllOWhheG9ycykgZGl2LnF0aXAtdGl0bGViYXJ7ZmlsdGVyOm5vbmU7LW1zLWZpbHRlcjpub25lfS5xdGlwIC5xdGlwLXRpcHttYXJnaW46MCBhdXRvO292ZXJmbG93OmhpZGRlbjt6LWluZGV4OjEwfS5xdGlwIC5xdGlwLXRpcHt2aXNpYmlsaXR5OmhpZGRlbn0ucXRpcCAucXRpcC10aXAsLnF0aXAgLnF0aXAtdGlwIC5xdGlwLXZtbCwucXRpcCAucXRpcC10aXAgY2FudmFze3Bvc2l0aW9uOmFic29sdXRlO2NvbG9yOiMxMjM0NTY7YmFja2dyb3VuZDowIDA7Ym9yZGVyOjAgZGFzaGVkIHRyYW5zcGFyZW50fS5xdGlwIC5xdGlwLXRpcCBjYW52YXN7dG9wOjA7bGVmdDowfS5xdGlwIC5xdGlwLXRpcCAucXRpcC12bWx7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmlzaWJpbGl0eTp2aXNpYmxlfSNxdGlwLW92ZXJsYXl7cG9zaXRpb246Zml4ZWR9I3F0aXAtb3ZlcmxheSBkaXZ7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjojMDAwO29wYWNpdHk6Ljc7ZmlsdGVyOmFscGhhKG9wYWNpdHk9NzApOy1tcy1maWx0ZXI6XCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT03MClcIn0ucXRpcG1vZGFsLWllNmZpeHtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnR9XG4vKiBFbmQgUXRpcCBCYXNlbGluZSAqL1xuXG4vKiBRdGlwIE92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmhlbHAsXG4uYWpheC1oZWxwIHtcbiAgICAvL292ZXJmbG93OiBoaWRkZW47XG4gICAgLy9kaXNwbGF5OiBpbml0aWFsO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvL3dpZHRoOiAyMHB4O1xuICAgIC8vaGVpZ2h0OiAyMHB4O1xuICAgIC8vbWFyZ2luOiAwIDAgMCA1cHg7XG5cbiAgICAmLmlubGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAvKiBPbmx5IGFmZmVjdHMgcHJpbnQgbWVkaWEgKi9cbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICAvL21heC13aWR0aDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG59XG5cbi8qIFF0aXAgUmV3cml0ZXMvQmVuZWZpdCBQb3B1cHMgKi9cbi5xdGlwLWhlbHAge1xuICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgYm9yZGVyOiAycHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZ2FsbGVyeS1hcHByb3gpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIycHgpO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfSB7XG4gICAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICAgIHdpZHRoOiA1NTBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA1NTBweDtcbiAgICB9XG5cblxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMXB4KTtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjFweCk7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICB9XG5cbiAgICBkaXYge1xuICAgICAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMnB4KTtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICB9XG5cbiAgICBvbCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIycHgpO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbn1cblxuLnF0aXAge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLXNtYWxsIGRvd24pfSB7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5xdGlwLWNvbnRlbnQge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbn1cblxuLnF0aXAgLnF0aXAtdGlwIHtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbn1cblxuLnBvcHVwIHtcbiAgICB3aWR0aDogMjU2cHg7XG4gICAgbWFyZ2luOiAxMHB4IGF1dG8gMDtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBmb250LXNpemU6IDEuMHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtcmVndWxhcjtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pbmZvRGF0ZVRhYmxlIHtcblxuICAgIHRoIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGgtYm9yZGVyLWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIHRyOmZpcnN0LWNoaWxkIHRoIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuXG59XG4vKiBFbmQgUXRpcCBPdmVycmlkZXMgKi9cbiIsIlxuLy9jb2xvcnNcbiRsb2FkaW5nLWJhY2tncm91bmQ6IHJnYmEoNzksNzYsNzcsMC43NSk7XG4kbG9hZGluZy1wcmltYXJ5LWNvbG9yOiByZ2IoMjU0LDIwMyw0Nyk7XG4kbG9hZGluZy1zZWNvbmRhcnktY29sb3I6IHJnYmEoJGxvYWRpbmctcHJpbWFyeS1jb2xvciwgMC40KTtcblxuLyogTG9hZGluZyBTcGlubmVyICovXG4ucGFnZS1sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkaW5nLWJhY2tncm91bmQ7XG5cbiAgICAubG9hZGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDk0cHg7XG4gICAgICBoZWlnaHQ6IDk0cHg7XG4gICAgfVxuXG59XG5cbi8qIExvYWRpbmcgU3Bpbm5lciAqL1xuQGtleWZyYW1lcyBzcGluIHtcblxuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxuXG59XG5cbi5sb2FkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogOTRweDtcbiAgICBoZWlnaHQ6IDk0cHg7XG4gICAgbWFyZ2luOiA1MHB4IGF1dG87XG4gICAgYm9yZGVyOiAuMjVyZW0gc29saWQgJGxvYWRpbmctc2Vjb25kYXJ5LWNvbG9yO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRsb2FkaW5nLXByaW1hcnktY29sb3I7XG4gICAgYW5pbWF0aW9uOiBzcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbn1cbi8qIEVuZCBMb2FkaW5nIFNwaW5uZXIgKi9cbiIsIlxuLyogYmVuZWZpdHMgcG9wLXVwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucHJpY2UtdGFibGUsXG4uYmVuZWZpdHMtdGFibGUge1xuXG4gICAgdGgsXG4gICAgdGQge1xuXG4gICAgICAgIC5wb3B1cCB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIHdpZHRoOiAyNTZweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMTAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBnYWxsZXJ5LWFwcHJveCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjJweCk7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXJlZ3VsYXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcblxuICAgICAgICAgICAgLy9AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICAgICAgLy92aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIC8vZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIC8vcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIC8vd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgLy9tYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgLy9wYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIC8vYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIC8vYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIC8vfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgLnBvcHVwIHtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfSB7XG4gICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG4vKiBlbmQgYmVuZWZpdHMgcG9wLXVwICovXG4iLCIkbW9kYWwtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcblxuLyogTW9kYWxzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vIGZvdW5kYXRpb24gcmV2ZWFsIG1vZGFsXG4ucmV2ZWFsIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSBkb3duKX0ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBsYXJnZS1tZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgIHBhZGRpbmc6IDYwcHggMjBweDtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuYnV0dG9uLXdlbGwge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLnByaW1hcnktYWN0aW9uIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1hY3Rpb24gKyAuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogNTBweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2xvc2UtbW9kYWwsXG4gIC5tb2RhbC1jYW5jZWwtbGluayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiA0MHB4O1xuICAgIHRvcDogNDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBiYWNrZ3JvdW5kOiAkY2xvc2UtaWNvbiBuby1yZXBlYXQgLTZweCAtNnB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzJweCAzMnB4O1xuICAgIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgdG9wOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIGxvZy1vdXRcbiAgJi5sb2ctb3V0LW1vZGFsIHtcbiAgICBwIHtcbiAgICAgIG1heC13aWR0aDogNDEwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAzMHB4IGF1dG87XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2cHgpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5idXR0b24td2VsbCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgfVxufVxuXG4vLyBsb2FkaW5nIG1vZGFsXG4ubW9kYWwge1xuICB3aWR0aDogNjUycHg7XG4gIG1heC13aWR0aDogODAlO1xuICBtYXgtaGVpZ2h0OiA4MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBib3JkZXI6IHNvbGlkIDFweCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0aHVuZGVyLWFwcHJveCk7XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuICBsaW5lLWhlaWdodDogMS4zODtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1yZWd1bGFyO1xuICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuICBjb2xvcjogJG1vZGFsLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1zbWFsbCBkb3duKX0ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuc2Nyb2xsYWJsZUFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogMzIwcHg7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLm1vZGFsLWltYWdlIHtcbiAgICBtYXgtd2lkdGg6IDg2cHg7XG4gIH1cblxuICBoMixcbiAgcCB7XG4gICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAucG9zdC1jb2xsZWN0aW9uLFxuICAuZW1haWwtY29sbGVjdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICBsYWJlbCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC5idXR0b24td2VsbCB7XG4gICAgLy9tYXJnaW46IDIwcHggMCAxN3B4IDA7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLXNtYWxsIGRvd24pfSB7XG4gICAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1hY3Rpb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgfVxuXG4gICAgLm5vdGljZSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBmYWNuY3lib3ggb3ZlcnJpZGVzXG4uZmFuY3lib3gtYmcge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDc3LCA3NywgNzcsIDAuOCk7XG59XG5cbi5mYW5jeWJveC1jbG9zZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbn1cblxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcbiAgd2lkdGg6IDIycHg7XG4gIGhlaWdodDogMjJweDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZGVuaW0tYXBwcm94KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICB9XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICB0b3A6IDEycHg7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGZvbnQ6IDI4cHggLyAyOHB4ICRmb250LWZhbWlseS1tZWRpdW07XG4gICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4ycztcbiAgfVxufVxuXG4uZmFuY3lib3gtc2tpbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi8vIFN5c3RlbSBsb2cgb3V0IG92ZXJyaWRlXG4ubG9nLW91dC1tb2RhbCB7XG4gIC5idXR0b24td2VsbCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vKiBFbmQgTW9kYWxzICovXG4iLCIvKiAtLSBkYXNoYm9hcmQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhdGgtLW1hbmFnZS1wb2xpY2llcyB7XG4gICNwYWdlLXRpdGxlIHtcbiAgICBtYXJnaW46IDAgMCA0MHB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmICsgI3RyYXZlbC1hZHZpc29yeSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIH1cbiAgfVxufVxuXG4jZGFzaGJvYXJkLWludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tdG9wOiAuNzVyZW07XG4gICAgfVxuICB9XG5cbiAgLmFjdGlvbnMtd3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogNzRweDtcbiAgICBwYWRkaW5nLXRvcDogMTNweDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGR1c3R5LWdyYXktYXBwcm94KTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXG4gICAgICAvLyYucHJpbWFyeS1hY3Rpb24ge1xuICAgICAgLy99XG5cbiAgICAgICYuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGJ3LXBhbGV0dGUsIGVsZWN0cmljLWJsdWUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgICAgIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRidy1wYWxldHRlLCBlbGVjdHJpYy1ibHVlKTtcbiAgICAgIH1cblxuICAgICAgJiArIGJ1dHRvbiB7XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2NsYWltcyB7XG4gICYucG9saWN5LWxpc3QtY2Fwc3VsZSB7XG4gICAgLnBvbGljeS10YWJsZSB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICAmLmRlc3RpbmF0aW9ucyB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiAnQ2xhaW0gRGF0ZSc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wb2xpY3ktbGlzdC1jYXBzdWxlIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIG1lcmN1cnktYXBwcm94KTtcblxuICAuY2Fwc3VsZS1oZWFkZXIge1xuICAgIG1hcmdpbjogMCAzcmVtIDMwcHggM3JlbTtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGR1c3R5LWdyYXktYXBwcm94KTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuXG4gICAgICBoMiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLXBvbGljaWVzIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzNnB4IDQ0cHg7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gICAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgNDBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhbmNlbGxlZCB7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLXJlZ3VsYXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjYW5jZWxsZWQtcG9saWNpZXMgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM2cHggNDRweDtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA0MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuY2xhaW1zIHtcblxuICAgICAgaDIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtcmVndWxhcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGNsYWltcyBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzZweCA0NHB4O1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICAgICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDQwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5wYXN0IHtcblxuICAgICAgaDIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtcmVndWxhcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHBhc3QtcG9saWNpZXMgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM2cHggNDRweDtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA0MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzBweCk7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wb2xpY3ktdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIHRib2R5IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgdGgge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICB0ciB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGFsYWJhc3Rlci1hcHByb3gpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRkIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBpbmhlcml0O1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGlvbnMge1xuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wb2xpY3ktbnVtYmVyLFxuICAgICAgICAmLmRlc3RpbmF0aW9ucyB7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmRlc3RpbmF0aW9ucyB7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICdEZXN0aW5hdGlvbnMnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucG9saWN5LW51bWJlciB7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogJ1VwZ3JhZGUgbnVtYmVyJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgICAgICYuZGVwYXJ0dXJlIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiAnIC0gJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucG9saWN5LWFjdGlvbnMge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuXG4gICAgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGRlbmltLWFwcHJveCk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICYuY2FuY2VsIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjdGlvbi1jYW5jZWwgbm8tcmVwZWF0IDAgNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgIH1cblxuICAgICAgJi5jbGFpbSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY3Rpb24tY2xhaW0gbm8tcmVwZWF0IDAgNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTRweDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1hbmFnZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY3Rpb24tbWFuYWdlIG5vLXJlcGVhdCAwIDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDE0cHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWN0aW9uLW1vYmlsZSBuby1yZXBlYXQgLTI1cHggLTI1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDBweCAxMDBweDtcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTEwMDBweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52aWV3IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjdGlvbi12aWV3IG5vLXJlcGVhdCAwIDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWN0aW9uLW1vYmlsZSBuby1yZXBlYXQgLTI1cHggLTI1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDBweCAxMDBweDtcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTEwMDBweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2Jhc2UtcG9saWN5LWluZm8ge1xuICAmLnBvbGljeS1saXN0LWNhcHN1bGUge1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSl9IHtcbiAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLXJlZ3VsYXI7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgfVxuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcbiAgICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC5wb2xpY3ktYWN0aW9ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5uby1wb2xpY3ktbWVzc2FnZSB7XG4gIG1heC13aWR0aDogNjUwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiA2MHB4IDA7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzBweCk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbjogMCAyMHB4O1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuICB9XG5cbiAgJiArIC5idXR0b24td2VsbCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDAgMCA0MHB4O1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1idXR0b25dICsgaW5wdXRbdHlwZT1idXR0b25dIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiAtLSAvZGFzaGJvYXJkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiIsIi8qIC0tIHNlYXJjaCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jcGFnZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBzaWx2ZXItYXBwcm94KTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxufVxuXG4jbG9naW4tZmllbGRzLFxuI3NlYXJjaC1maWVsZHMge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBtZXJjdXJ5LWFwcHJveCk7XG4gIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBib3gtc2hhZG93OiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBib3gtc2hhZG93KTtcbn1cblxuI2xvZ2luLWZpZWxkcyB7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNjBweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuI3NlYXJjaC1vcHRpb25zIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgbWVyY3VyeS1hcHByb3gpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxcHgpO1xuICAgIHBhZGRpbmc6IDMzcHggMDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBtZXJjdXJ5LWFwcHJveCk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNHB4KTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA2cHg7XG4gICAgfVxuXG4gICAgJi5zZWxlY3RlZCB7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1ib2xkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgYWxhYmFzdGVyLWFwcHJveCk7XG4gICAgfVxuICB9XG59XG5cbi5wYXRoLS1zZWFyY2gge1xuICAubWVzc2FnZXMtLWVycm9yIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIHNlYXJjaC1maWVsZHNcbiNzZWFyY2gtZmllbGRzIHtcbiAgaDIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDIzcHggMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjBweCk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgYWxhYmFzdGVyLWFwcHJveCk7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgbWVyY3VyeS1hcHByb3gpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIG1lcmN1cnktYXBwcm94KTtcbiAgICB9XG5cbiAgICBkaXYge1xuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8jc2VhcmNoLWJ5LWN1c3RvbWVyLFxuI3NlYXJjaC1ieS1wb2xpY3ksXG4jc2VhcmNoLWJ5LXF1b3RlIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zZWFyY2gtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLnNlYXJjaC1jb250YWluZXItYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc2VhcmNoLXBhdGgge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiA0MHB4IDExMHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cbiAgbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIHN0cm9uZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMCAzNXB4IDA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNHB4KTtcbiAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZW1wZXJvci1hcHByb3gpO1xuICB9XG5cbiAgLmZvcm0taXRlbS0tZXJyb3Ige1xuICAgIC5lcnJvciB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1hcHByb3gpO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWl0ZW0tLWVycm9yLW1lc3NhZ2Uge1xuICAgIHN0cm9uZyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgIGNvbG9yOiAkZXJyb3ItdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubWFzay1iaXJ0aC1kYXRlLFxuICAubWFzay10ZWxlcGhvbmUge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLnByaW1hcnktYWN0aW9uIHtcbiAgbWluLXdpZHRoOiAyMDBweDtcbn1cblxuLy9idXR0b24gd2VsbFxuLnNlYXJjaC1jb250YWluZXIge1xuICAuYnV0dG9uLXdlbGwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgNjBweCAyNjdweDtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgICNwYWdpbmF0aW9uICsgJiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi5yb3cge1xuICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtcmVzdWx0LXdyYXBwZXIge1xuICAuYnV0dG9uLXdlbGwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgNjBweCAwO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJi5yb3cge1xuICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgfVxuICB9XG59XG5cbi8vIHJlc3VsdHNcbiNzZWFyY2gtcmVzdWx0cyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIG1lcmN1cnktYXBwcm94KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJveC1zaGFkb3c6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGJveC1zaGFkb3cpO1xuXG4gIC5yZXN1bHRzLXRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgICB0aGVhZCB7XG4gICAgICB0aCB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMCAyMHB4IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdpZHRoOiAxMi41JTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGdhbGxlcnktYXBwcm94KTtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRib2R5IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdHIge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgYWxhYmFzdGVyLWFwcHJveCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGQge1xuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgICAgIG1heC13aWR0aDogMDtcbiAgICAgICAgcGFkZGluZzogMTVweCA1cHggMTVweCAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgdGV4dC1vdmVyZmxvdzogaW5oZXJpdDtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgICAgJi5kZXBhcnR1cmUge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICcgLSAnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jcGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgdWwge1xuICAgIG1hcmdpbjogMCAwIDAgMzBweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwcHgpO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIH1cbiAgfVxufVxuXG4vKiAtLSAvc2VhcmNoIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiIsIi8qIFBheW1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wYXltZW50LXBhZ2Uge1xuICAjY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIH1cbiAgfVxuXG4gICNwYXltZW50IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWNoYWxpY2UtYXBwcm94KTtcbiAgICBwYWRkaW5nLXRvcDogMjlweDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsIHtcbiAgICBwYWRkaW5nOiA1cHggMCAwIDQwcHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjRweCAyNHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyNHB4IDI0cHg7XG4gIH1cblxuICBzZWN0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgcCwgaDMge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICB9XG5cbiAgLmV4cGlyZS1maWVsZHMge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWZvcm0tcmVndWxhcjtcblxuICAgIGxlZ2VuZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgICB9XG5cbiAgICAuc3RhcnQge1xuICAgICAgcGFkZGluZzogMCAyMHB4IDVweCAwO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLXNtYWxsIGRvd24pfSB7XG4gICAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICAgIHBhZGRpbmc6IDAgMCA1cHggMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBsYWJlbFtmb3I9c2VjdXJpdHlDb2RlXSAuYWpheC1oZWxwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMjBweDtcbiAgfVxuXG4gIC8qIERlY2xhcmF0aW9ucyAqL1xuICAuZGVjbGFyYXRpb25zIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTJweCk7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWNoYWxpY2UtYXBwcm94KTtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNzBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNDVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwjZGVjbGFyYXRpb24xLWVycm9yLmVycm9yIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgbGFiZWwuZXJyb3IyIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB0ZXh0LWluZGVudDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIFBvbGljeSBEZXRhaWxzIG9yIFZpZXcvTW9kaWZ5IFNoZWV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0ICdwb2xpY3ktZGV0YWlscy9wYWdlLWRpc3BsYXknO1xuQGltcG9ydCAncG9saWN5LWRldGFpbHMvY3NyLXBhbmVsJztcblxuLy8gZWRpdCBkYXRlcyBtb2RlbFxuI2VkaXQtZGF0ZXMge1xuICBAaW1wb3J0ICdwb2xpY3ktZGV0YWlscy93aGVuJztcbiAgQGltcG9ydCAncG9saWN5LWRldGFpbHMvZGF0ZS1yYW5nZS1waWNrZXInO1xuICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlKX0ge1xuICAgIG1pbi1oZWlnaHQ6IDU5MHB4O1xuICB9XG59XG5cbi8vIGVkaXQgZGVzdGluYXRpb24gbW9kZWxcbiNlZGl0LWRlc3RpbmF0aW9uIHtcbiAgICBtaW4taGVpZ2h0OiA1NTBweDtcblxuXHRcdC8vQGltcG9ydCAncG9saWN5LWRldGFpbHMvdHJpcC1kZXRhaWxzJztcblx0XHRAaW1wb3J0ICdwb2xpY3ktZGV0YWlscy93aGVyZSc7XG59XG5cbi8vIGFkZC1vbnMgcGxhbiBvcHRpb25zIG1vZGVsXG4jZWRpdC1wbGFuIHtcblx0XHRAaW1wb3J0ICdwb2xpY3ktZGV0YWlscy9hZGQtb25zJztcbn1cblxuLy8gYWRkLW9ucyBwbGFuIG9wdGlvbnMgbW9kZWxcbiNlZGl0LWx1Z2dhZ2UsICNlZGl0LWNhbmNlbGxhdGlvbiwgI2VkaXQtcmVudGFsLWNhcixcbiNlZGl0LUxVR0csICNlZGl0LUNBTlgsICNlZGl0LVJUQ1IsICNlZGl0LUFEVkFDVCwgI2VkaXQtTVRDTFRXTyB7XG5cdFx0QGltcG9ydCAncG9saWN5LWRldGFpbHMvYWRkLW9uLXN1Yi1pdGVtcyc7XG59XG5cbi8vIGVkaXQgdHJhdmVsbGVycyBtb2RlbFxuI2VkaXQtdHJhdmVsbGVyLXByaW1hcnksIHNlY3Rpb25baWRePVwiZWRpdC10cmF2ZWxsZXItc2Vjb25kYXJ5LVwiXSwgI2FkZC10cmF2ZWxsZXIge1xuXHRcdEBpbXBvcnQgJ3BvbGljeS1kZXRhaWxzL3RyYXZlbGxlcnMnO1xufVxuXG4vLyBlZGl0IHJlamVjdGVkIGVtY1xuc2VjdGlvbltpZF49XCJlZGl0LWVtYy1yZWplY3RlZC1cIl0ge1xuXHRcdEBpbXBvcnQgJ3BvbGljeS1kZXRhaWxzL3JlamVjdGVkLWVtYyc7XG59XG5cbi8vIGNsYWltIGZvcm1cbiNjbGFpbUZvcm0ge1xuXHRpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi8vIHJlZGlyZWN0IG1lc3NhZ2Vcbi5yZWRpcmVjdC1tZXNzYWdlIHtcblx0bGluZS1oZWlnaHQ6IDUwcHg7XG59XG5cbi5wb2xpY3ktZGV0YWlscy1jYXBzdWxlIHtcbiAgLnBvbGljeS1kZXRhaWxzLWluZm9ybWF0aW9uIHtcbiAgICAudHJhdmVsbGVyLWxpc3Qge1xuICAgICAgbGk6bnRoLW9mLXR5cGUobisyMSkge1xuICAgICAgICAuYWRkLXRyYXZlbGxlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBvdGhlciBtb2RhbHNcbkBpbXBvcnQgJ3BvbGljeS1kZXRhaWxzL2FsbC1iZW5lZml0cyc7XG5AaW1wb3J0ICdwb2xpY3ktZGV0YWlscy9jYW5jZWwtcG9saWN5JztcbkBpbXBvcnQgJ3BvbGljeS1kZXRhaWxzL21lZGljYWwtcXVlc3Rpb24nO1xuQGltcG9ydCAncG9saWN5LWRldGFpbHMvb3Zlci1hZ2UnO1xuQGltcG9ydCAncG9saWN5LWRldGFpbHMvc2VuZC1jb2knO1xuIiwiLyogLS0gcG9saWN5IGRldGFpbHMgLSB2aWV3L21vZGlmeSBwYWdlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNwYWdlLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWFwcHJveCk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICB9XG4gIH1cblxuICAuYmFjay1saW5rIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA3cHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMjFweDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWluZGVudDogLTEwMDBweDtcbiAgICBiYWNrZ3JvdW5kOiAkYmFjay1saW5rIG5vLXJlcGVhdCAwIDA7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMXB4IDQycHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICB0b3A6IDRweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTBweCAyMHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTcwcHg7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjRweCk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuICAgIH1cbiAgfVxufVxuXG4vLyB0cmF2ZWxsZXIgZGV0YWlscyBjYXBzdWxlXG4vLyNwb2xpY3ktZGV0YWlsc1xuLnBvbGljeS1kZXRhaWxzLWNhcHN1bGUge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgbWVyY3VyeS1hcHByb3gpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG5cbiAgLmNhcHN1bGUtaGVhZGVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMzVweCA3MHB4IDM1cHggNzBweDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA2cHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBhbGFiYXN0ZXItYXBwcm94KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZ2FsbGVyeS1hcHByb3gpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgcGFkZGluZzogMS41cmVtIC41cmVtO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzBweCk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG4gICAgICB9XG5cbiAgICAgIC5wb2xpY3ktbnVtYmVyIHtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBvbGljeSBBY3Rpb25zXG4gIC5wb2xpY3ktYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDcwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIG1lcmN1cnktYXBwcm94KTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAyMHB4IDguMjUlIDIwcHggMDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtIC41cmVtO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGlvbnMtY2FyZXQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtIC41cmVtO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1tZWRpdW07XG4gICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGJ3LXBhbGV0dGUsIGVsZWN0cmljLWJsdWUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2hldnJvbi11cCBuby1yZXBlYXQgOTUlIGNlbnRlcjtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLW1lZGl1bTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNsb3NlZCB7XG4gICAgICBsaSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3Rpb25zLWNhcmV0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2hldnJvbi1kb3duIG5vLXJlcGVhdCA5NSUgY2VudGVyO1xuXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBvbGljeS1saXN0IHtcbiAgICBwYWRkaW5nOiA0MHB4IDcwcHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gICAgfVxuICB9XG5cbiAgLmVkaXQtbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1tZWRpdW07XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgY29sb3I6IG1hcC1kZWVwLWdldCgkYnctcGFsZXR0ZSwgZWxlY3RyaWMtYmx1ZSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLmNsYWltLWRldGFpbHMtaW5mb3JtYXRpb24ge1xuICAgIG1hcmdpbjogNDBweCA3MHB4IDAgNzBweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIG1hcmdpbjogMjBweCAyMHB4IDAgMjBweDtcbiAgICB9XG5cbiAgICAuaXRlbS1oZWFkaW5nLmNsYWltcyB7XG4gICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA3MHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiAkY2xhaW1zIG5vLXJlcGVhdCAwIDA7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ0cHggNDhweDtcblxuICAgICAgaDMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLXJlZ3VsYXI7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjRweCk7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2xhaW1zLXRhYmxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblxuICAgICAgdGhlYWQge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDE1cHggMDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB3aWR0aDogMjAlO1xuXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgLy93aWR0aDogMzAlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIC8vd2lkdGg6IDEwJTtcbiAgICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDcwcHg7XG4gICAgICAgICAgLy99XG5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0Ym9keSB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBnYWxsZXJ5LWFwcHJveCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBpbmhlcml0O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgLy93aWR0aDogMzAlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogNzBweDtcblxuICAgICAgICAgICAgLy9AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAvL31cblxuICAgICAgICAgIH1cblxuICAgICAgICAgICYucG9saWN5LW51bWJlcixcbiAgICAgICAgICAmLmRlc3RpbmF0aW9ucyxcbiAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1ib2xkO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmRlc3RpbmF0aW9ucyB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG5cbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdEZXN0aW5hdGlvbnMnO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wb2xpY3ktbnVtYmVyIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcblxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ0NsYWltIG51bWJlcic7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgICAgICAgJi5kZXBhcnR1cmUge1xuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnIC0gJztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wb2xpY3ktZGV0YWlscy1pbmZvcm1hdGlvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJi5tZWRpdW0tb2Zmc2V0LTEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDMuMTI1JTtcbiAgICB9XG5cbiAgICAudHJpcC1kZXRhaWxzLFxuICAgIC5jb3ZlcmFnZS1kZXRhaWxzLFxuICAgIC50cmF2ZWxsZXJzIHtcbiAgICAgIGg0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtbWVkaXVtO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZW1wZXJvci1hcHByb3gpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIHRyaXAgZGV0YWlsc1xuICAgIC50cmlwLWRldGFpbHMge1xuXG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAuaXRlbS1oZWFkaW5nIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHByZW1pdW0tbHVnZ2FnZS1hZGQtb24gbm8tcmVwZWF0IC0xNXB4IDVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggNTBweDtcbiAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0uNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1hcHByb3gpO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGVtcGVyb3ItYXBwcm94KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYudHJhdmVsLWRhdGVzIHtcbiAgICAgICAgICBsaSArIGxpIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gdHJhdmVsbGVyc1xuICAgIC50cmF2ZWxsZXJzIHtcbiAgICAgIC5pdGVtLWhlYWRpbmcge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdHJhdmVsbGVycyBuby1yZXBlYXQgLTE1cHggNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzBweCA1MHB4O1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50cmF2ZWxsZXItbGlzdCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBzaWx2ZXItYXBwcm94KTtcbiAgICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZW1wZXJvci1hcHByb3gpO1xuXG4gICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRyYXZlbGxlciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50cmF2ZWxsZXItZW1jIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0aHVuZGVyLWFwcHJveCk7XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZ2FsbGVyeS1hcHByb3gpO1xuXG4gICAgICAgICAgLmVkaXQtbGluayB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFkZC10cmF2ZWxsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1tZWRpdW07XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGNvdmVyYWdlIGRldGFpbHNcbiAgICAuY292ZXJhZ2UtZGV0YWlscyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1hcHByb3gpO1xuXG4gICAgICAuaXRlbS1oZWFkaW5nIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGFjdGl2ZS1wb2xpY2llcyBuby1yZXBlYXQgLTE1cHggNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzBweCA1MHB4O1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgIH1cblxuICAgICAgLmNvdmVyYWdlLWl0ZW1zIHtcbiAgICAgICAgLnBsYW4tbmFtZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW0taGVhZGluZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICBoMyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtcmVndWxhcjtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNHB4KTtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvdmVyYWdlLWRldGFpbHMgLml0ZW0taGVhZGluZyB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBjaGFuZ2UgcGFuZWxcbi5jaGFuZ2UtcGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gIC8vcGFkZGluZzogMCAyMHB4IDQwcHggMjBweDtcblxuICAucGFuZWwtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgcGljdG9uLWJsdWUtYXBwcm94KTtcblxuICAgIHN0cm9uZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1ib2xkO1xuICAgIH1cbiAgfVxuXG4gIC5wYW5lbC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA0MHB4IDI1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgbWVyY3VyeS1hcHByb3gpO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGVtcGVyb3ItYXBwcm94KTtcblxuICAgIC5wcmljZS1saXN0IHtcbiAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIH1cblxuICAgICAgLml0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIC52YWx1ZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1cHgpO1xuICAgICAgfVxuXG4gICAgICAudG90YWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMjBweCAwO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWFwcHJveCk7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBidXR0b24ucHJpbWFyeS1hY3Rpb24sXG4gICAgaW5wdXQuZm9ybS1zdWJtaXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRidy1wYWxldHRlLCBlbGVjdHJpYy1ibHVlKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGJ3LXBhbGV0dGUsIGVsZWN0cmljLWJsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyByZXZlcnRcbi5yZXZlcnQtbGluayB7XG4gIC8vbWFyZ2luOiAzMHB4IDAgMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkZW5pbS1hcHByb3gpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vc3VjZXNzXG4uc3VjY2Vzcy1tZXNzYWdlIHtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZDogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZW1lcmFsZC1hcHByb3gpO1xuICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1ib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5sb2dnZWQtb3V0IHtcbiAgLm1lc3NhZ2VzLS1lcnJvciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKiAtLSAvcG9saWN5IGRldGFpbHMgLSB2aWV3L21vZGlmeSBwYWdlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiIsIi5ub3Rlcy1wYW5lbCB7XG5cbiAgLnBhbmVsLWhlYWRlciB7XG4gICAgcGFkZGluZzogMThweCAzNXB4O1xuICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHBpbmUtZ3JlZW4tYXBwcm94KTtcblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgIH1cbiAgfVxuXG4gIC5wYW5lbC1ib2R5IHtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIG1lcmN1cnktYXBwcm94KTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcblxuICAgIC5ub3Rlcy1saXN0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuXG4gICAgICAgIC5hdHRyaWJ1dGlvbi1saW5lIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgbWVyY3VyeS1hcHByb3gpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG5cbiAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uZXctbm90ZSB7XG4gICAgcGFkZGluZzogMjBweCAxMnB4IDEwcHggMTJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBtZXJjdXJ5LWFwcHJveCk7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBjb25jcmV0ZS1zb2xpZCk7XG5cbiAgICBoNCB7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDI1cHg7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkb3ZlLWdyYXktYXBwcm94KTtcbiAgICB9XG5cbiAgICAubm90ZS1lbnRyeSB7XG4gICAgICBtaW4taGVpZ2h0OiAxODVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gICAgLm5vdGUtYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGRlbmltLWFwcHJveCk7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIERhdGUgUGlja2VyICovXG5cbi5yb3cgLnJvdy5kYXRlcGlja2VyLWNvbnRhaW5lcixcbi5kYXRlcGlja2VyLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgbGkge1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcbiAgICAgICAgLyogT25seSBhZmZlY3RzIG1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1jaGFsaWNlLWFwcHJveCk7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgdG9wOiA1NSU7XG4gICAgICAgICAgcmlnaHQ6IC01NXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIGRvd24pfSB7XG4gICAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkYmFja2dyb3VuZC1jYWxlbmRhciwgJGJhY2tncm91bmQtc2VsZWN0LWFycm93O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCUsIDk1JSA1NSU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDYwcHggNjBweCwgMTZweCAxNnB4O1xuICAgICAgcGFkZGluZzogMnB4IDMwcHggMCA3MnB4O1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgaGVpZ2h0OiA3NXB4O1xuICAgIH1cbiAgfVxufVxuXG4vLyBjYWxlbmRhciB3cmFwcGVyXG4uY2FsZW5kYXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0yM3B4O1xuICB6LWluZGV4OiAxMDAwMDtcbn1cblxuXG4vLyBidXR0b24gd2VsbFxuLmJ1dHRvbi13ZWxsIHtcbiAgbWFyZ2luOiAzNXB4IDAgMjBweCAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbiIsIi5kYXRlLXBpY2tlciB7XG4gICAgd2lkdGg6IDE3MHB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZWNvbmRhcnk7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbn1cblxuLmRhdGUtcGlja2VyLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgIHBhZGRpbmc6IDAgN3B4IDdweCA3cHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdGh1bmRlci1hcHByb3gpO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLXJlZ3VsYXI7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIGJveC1zaXppbmc6IGluaXRpYWw7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIG1hcmdpbjogLTEwcHggMCAwIDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cblxufVxuXG4uZHAtY2xlYXJmaXgge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGhlaWdodDogMDtcbiAgICBmb250LXNpemU6IDA7XG59XG5cbi5jdXN0b20tdG9wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIC8vYm94LXNoYWRvdzogMCA1cHggMTVweCAycHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcblxuICAgICNtb2JpbGVEZXBhcnR1cmVEYXRlRGlzcGxheSxcbiAgICAjbW9iaWxlUmV0dXJuRGF0ZURpc3BsYXksXG5cbiAgICAuY2xvc2UtY2FsZW5kYXIge1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5kaXNwbGF5LWRhdGUtaW5wdXRzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIHBhZGRpbmc6IDJweCAwIDAgNDBweDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY2FsZW5kYXIgbm8tcmVwZWF0IDEwcHggNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmNsb3NlLWNhbGVuZGFyIHtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDIwJSAtIDI1cHgpO1xuICAgIH1cblxufVxuXG4uZGF0ZS1waWNrZXItd3JhcHBlciB7XG5cbiAgICAmLmlubGluZS13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgJi5zaW5nbGUtZGF0ZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgICYubm8tc2hvcnRjdXRzIHtcbiAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi5uby10b3BiYXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICB9XG5cbiAgICAuZm9vdGVyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcHg7XG4gICAgfVxuXG4gICAgYiB7XG4gICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkb3ZlLWdyYXktYXBwcm94KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGRlbmltLWFwcHJveCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIC5tb250aC13cmFwcGVyIHRhYmxlIHRoLm1vbnRoLW5hbWUsXG4gICAgLm1vbnRoLW5hbWUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJvbGQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTVweCk7XG4gICAgfVxuXG4gICAgLnNlbGVjdC13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLm1vbnRoLWVsZW1lbnQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLnNlbGVjdC13cmFwcGVyIHNlbGVjdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zdHlsZTogaW5oZXJpdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xKVwiO1xuICAgICAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MSk7XG4gICAgICAgIG9wYWNpdHk6IDAuMDE7XG4gICAgfVxuXG4gICAgLm1vbnRoLXdyYXBwZXIge1xuICAgICAgICAvL2JvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1hcHByb3gpO1xuICAgICAgICAvL2JvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICBwYWRkaW5nOiAwOy8vNXB4O1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgX292ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgIC8vd2lkdGg6IDE5MHB4O1xuICAgICAgICAgICAgLy93aWR0aDogMjI0cHg7XG4gICAgICAgICAgICB3aWR0aDogMjY2cHg7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4NSU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDcuNSU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubW9udGgyIHtcbiAgICAgICAgICAgICAgICAvL3dpZHRoOiAxOTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjY2cHg7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1ib2xkO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxNC4yODUlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGF5IHtcbiAgICAgICAgICAgICAgICAvL21pbi13aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI4cHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzOHB4O1xuICAgICAgICAgICAgICAgIC8vbWluLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICAgIC8vbWF4LWhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZzogOXB4IDVweCAxcHggNXB4O1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZzogOHB4IDVweCAycHggNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCA1cHggMnB4IDVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgICAvL21hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgICAgICAgICAvL21hcmdpbjogM3B4IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAzcHggYXV0bztcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWNoYWxpY2UtYXBwcm94KTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIGRvd24pfSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGl2LmRheSB7XG5cbiAgICAgICAgICAgICAgICAmLmxhc3RNb250aCxcbiAgICAgICAgICAgICAgICAmLm5leHRNb250aCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0aHVuZGVyLWFwcHJveCk7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRheS5jaGVja2VkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBzdW4tZ2xvdy1hcHByb3gpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud2Vlay1uYW1lIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGF5Lmhhcy10b29sdGlwIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGhlbHAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIC50b29sdGlwIHtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAudGltZSBsYWJlbCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLm1vbnRoLXdyYXBwZXIgdGFibGUgLmRheSB7XG5cbiAgICAgICAgJi50b01vbnRoIHtcblxuICAgICAgICAgICAgJi52YWxpZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaG92ZXJpbmcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHN1bi1nbG93LWFwcHJveCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICYubmV4dE1vbnRoLFxuICAgICAgICAmLmxhc3RNb250aCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5yZWFsLXRvZGF5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcblxuICAgICAgICAgICAgJi5jaGVja2VkLFxuICAgICAgICAgICAgJi5ob3ZlcmluZyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZG92ZS1ncmF5LWFwcHJveCk7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICB0YWJsZSAuY2FwdGlvbiB7XG4gICAgICAgIGhlaWdodDogNDBweDtcblxuICAgICAgICA+IHRoIHtcblxuICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlLFxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLm5leHQsXG4gICAgICAgIC5wcmV2IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5leHQge1xuICAgICAgICAgICAgLy9wYWRkaW5nOiAwIDAgMCA1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiAtNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm5leHQ6aG92ZXIsXG4gICAgICAgIC5wcmV2OmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmdhcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgLy93aWR0aDogMTVweDtcbiAgICAgICAgLy93aWR0aDogNXB4O1xuICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IC0xMHB4O1xuICAgICAgICAvLyB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIC8vZGlzcGxheTpub25lO1xuICAgICAgICBoZWlnaHQ6IDA7XG5cbiAgICAgICAgLmdhcC1saW5lcyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdhcC1saW5lIHtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgIC8vd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAuZ2FwLTEge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA4cHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0aHVuZGVyLWFwcHJveCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmdhcC0yIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiA4cHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ2FwLTMge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5nYXAtdG9wLW1hc2sge1xuICAgICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICAgICAgbGVmdDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfVxuXG4gICAgICAgIC5nYXAtYm90dG9tLW1hc2sge1xuICAgICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNlbGVjdGVkLWRheXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5kcnBfdG9wLWJhciB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLy9wYWRkaW5nOiAxMHB4IDQwcHggMTBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5lcnJvci10b3AsXG4gICAgICAgIC5ub3JtYWwtdG9wIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVmYXVsdC10b3Age1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmLmVycm9yIHtcblxuICAgICAgICAgICAgLmRlZmF1bHQtdG9wIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZXJyb3ItdG9wIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdG9yY2gtcmVkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5ub3JtYWwge1xuXG4gICAgICAgICAgICAuZGVmYXVsdC10b3Age1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5ub3JtYWwtdG9wIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC5zZWxlY3Rpb24tdG9wIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmFwcGx5LWJ0biB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMHB4O1xuICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggNXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjMDA3NmEzO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwOTVjZDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oIzAwYWRlZSksIHRvKCMwMDc4YTUpKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwYWRlZSwgIzAwNzhhNSk7XG4gICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDBhZGVlJywgZW5kQ29sb3JzdHI9JyMwMDc4YTUnKTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcblxuICAgICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNjA2MDYwO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNiN2I3Yjc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCNmZmYpLCB0bygjZWRlZGVkKSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmLCAjZWRlZGVkKTtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZGVkZWQnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAudGltZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmLnNpbmdsZS1tb250aCAudGltZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC50aW1lIGlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgd2lkdGg6IDEyOXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICB9XG5cbiAgICAudGltZTEge1xuICAgICAgICB3aWR0aDogMTgwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG59XG5cbi8qdGltZSBzdHlsaW5nKi9cbi50aW1lMiB7XG4gICAgd2lkdGg6IDE4MHB4O1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmRhdGUtcGlja2VyLXdyYXBwZXIge1xuXG4gICAgLnRpbWUxIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpbWUyIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIC5ob3VyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG59XG5cbi5taW51dGUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZGF0ZS1waWNrZXItd3JhcHBlciB7XG5cbiAgICAuaGlkZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5maXJzdC1kYXRlLXNlbGVjdGVkLFxuICAgIC5sYXN0LWRhdGUtc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkb3ZlLWdyYXktYXBwcm94KSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7Ly81MCU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYm9sZDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZG92ZS1ncmF5LWFwcHJveCk7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIGRvd24pfSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmRhdGUtcmFuZ2UtbGVuZ3RoLXRpcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBtZXJjdXJ5LWFwcHJveCk7XG4gICAgICAgIHBhZGRpbmc6IDAgNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGRyb3Atc2hhZG93KDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpKTtcbiAgICAgICAgLW1vei1maWx0ZXI6IGRyb3Atc2hhZG93KDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpKTtcbiAgICAgICAgLW1zLWZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMykpO1xuICAgICAgICAtby1maWx0ZXI6IGRyb3Atc2hhZG93KDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpKTtcbiAgICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4zKSk7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAgICAgICAgICAgYm90dG9tOiAtNHB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLnR3by1tb250aHMubm8tZ2FwIHtcblxuICAgICAgICAubW9udGgxIC5uZXh0LFxuICAgICAgICAubW9udGgyIC5wcmV2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC53ZWVrLW51bWJlciB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICYud2Vlay1udW1iZXItc2VsZWN0ZWQge1xuICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHRodW5kZXItYXBwcm94KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbiIsIi8vY29sb3JzXG4kZ3JvdXAtYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZG92ZS1ncmF5LWFwcHJveCk7XG4kdWktYnV0dG9uLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkb3ZlLWdyYXktYXBwcm94KTtcbiRidXR0b24tdGV4dC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdGh1bmRlci1hcHByb3gpO1xuJGlucHV0LWJvcmRlci1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZGVuaW0tYXBwcm94KTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGRlbmltLWFwcHJveCk7XG4kYnV0dG9uLWJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcblxuXG5cbi8qIENvdW50cnkvUmVnaW9uIFNlbGVjdG9yICovXG5cblxuLyogRGlzcGxheSBGaWVsZCAqL1xuXG4jY291bnRyeSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcblxuICAgICYuZm9jdXNMZXZlbCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICAgICAgfVxuICAgIH1cbn1cblxubGFiZWwjY291bnRyeS1lcnJvci5lcnJvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTEzcHg7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5cbi8qIFNlbGVjdG9yIEJ1dHRvbiAqL1xuXG4uZGVzdGluYXRpb24tbWVudS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIG1hcmdpbjogLTUwcHggMTBweCAwIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpICRiYWNrZ3JvdW5kLXNlbGVjdC1hcnJvdyBuby1yZXBlYXQgNTAlIDUwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTZweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtaW5kZW50OiAtMzAwcHg7XG4gICAgei1pbmRleDogNjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgfVxufVxuXG5cbi8qIERpc3BsYXkgR3JpZCAqL1xuXG4uZGVzdGluYXRpb24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogOTBweDtcbiAgICB6LWluZGV4OiA0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMjcycHg7XG4gICAgaGVpZ2h0OiAzODBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcblxuICAgIC5yZWdpb24tY29udGFpbmVyIHtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMjc1cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSl9IHtcbiAgICAgICAgICAgIC8qIE9ubHkgYWZmZWN0cyBsYXJnZSBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDM4NXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNXB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIFJlZ2lvbi9Db3VudHJ5IEdyb3VwaW5nICovXG4gICAgLnJlZ2lvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZS1tZWRpdW0pfSB7XG4gICAgICAgICAgICB3aWR0aDogMzg1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQrLnJlZ2lvbi1sZWJlbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JvdXAtYmFja2dyb3VuZC1jb2xvcjtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSl9IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyb3VwLWJhY2tncm91bmQtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBMYWJlbHMvTGVnZW5kcyAqL1xuICAgIGxlZ2VuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5yZWdpb24tbGViZWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICBjb2xvcjogJHVpLWJ1dHRvbi1jb2xvcjtcbiAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSl9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1mb3JtLXJlZ3VsYXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1mb3JtLXJlZ3VsYXI7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzcHgpO1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UtbWVkaXVtKX0ge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIE9wZW5pbmcgUmVnaW9ucyAqL1xuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG5cbiAgICAgICAgK2xhYmVsfmRpdi5kZXN0aW5hdGlvbi1saXN0LXdyYXBwZXIge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSl9IHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Y2hlY2tlZCtsYWJlbH5kaXYuZGVzdGluYXRpb24tbGlzdC13cmFwcGVyIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDI1MHB4O1xuICAgICAgICAgICAgY2xpcDogYXV0bztcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UtbWVkaXVtKX0ge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzg0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UtbWVkaXVtKX0ge1xuXG4gICAgICAgICAgICAmOmZvY3VzK2xhYmVsIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogQ29sdW1ucyAqL1xuICAgIC5kZXN0aW5hdGlvbi1saXN0IHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZS1tZWRpdW0pfSB7XG4gICAgICAgICAgICAvKiBPbmx5IGFmZmVjdHMgbGFyZ2Ugc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAmOmNoZWNrZWQrbGFiZWwge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR1aS1idXR0b24tY29sb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZS1tZWRpdW0pfSB7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDE1cHggMCAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgICAgICAgICBjb2xvcjogJHVpLWJ1dHRvbi1jb2xvcjtcbiAgICAgICAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZS1tZWRpdW0pfSB7XG4gICAgICAgICAgICAgICAgLyogT25seSBhZmZlY3RzIGxhcmdlIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwIDAgMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogQ291bnRyeSBMaXN0ZXIgKi9cblxuLmRlc3RpbmF0aW9uLWxpc3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMCAxNnB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDQ1cHggMTJweCAyNXB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgc2lsdmVyLWFwcHJveCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1mb3JtLXJlZ3VsYXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1mb3JtLXJlZ3VsYXI7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1cHgpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB0aHVuZGVyLWFwcHJveCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQgJGJhY2tncm91bmQtcmVtb3ZlLWNvdW50cnkgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMjBweCBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzcHggMTNweDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkZW5pbS1hcHByb3gpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBhZGQgZGVzdGluYXRpb24gYnV0dG9uXG4uYWRkLWRlc3RpbmF0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgbWFyZ2luOiAxMnB4IDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICRiYWNrZ3JvdW5kLWFkZC10cmF2ZWxsZXIgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHggMjVweDtcbiAgICB0ZXh0LWluZGVudDogLTEwMDBweDtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cblxuXG4vKiBBdXRvQ29tcGxldGUgKi9cblxuLmRlc3RpbmF0aW9uLWF1dG9jb21wbGV0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNDtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMDtcbiAgICB0b3A6IDA7XG5cbiAgICAudWktYXV0b2NvbXBsZXRlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICBtaW4td2lkdGg6IDI3MnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDc4MHB4O1xuICAgICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTsgLy9iYWNrZ3JvdW5kLXNpemU6IGNhbGMoMTAwJSAtIDIwcHgpIDFweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UtbWVkaXVtKX0ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC51aS1tZW51LWl0ZW0sXG4gICAgLnVpLW1lbnUtaXRlbTpob3ZlcixcbiAgICAudWktbWVudS1pdGVtOmZvY3VzLFxuICAgIC51aS1tZW51LWl0ZW06YWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDdweCAwIDAgMzBweDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1mb3JtLXJlZ3VsYXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWZvcm0tcmVndWxhcjtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNXB4KTtcbiAgICAgICAgY29sb3I6ICR1aS1idXR0b24tY29sb3I7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudWktbWVudSAudWktc3RhdGUtZm9jdXMge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cblxuLnVpLWJ1dHRvbiB7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCkgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICR1aS1idXR0b24tY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgICYudWktc3RhdGUtYWN0aXZlOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJHVpLWJ1dHRvbi1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuXG5cbi8qIFBvcHVsYXIgRGVzdGluYXRpb25zICovXG5cbi5wb3B1bGFyIHtcbiAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiA0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICAgIG1heC1oZWlnaHQ6IDM5MHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTsgLy9iYWNrZ3JvdW5kLXNpemU6IGNhbGMoMTAwJSAtIDIwcHgpIDFweDtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLyogT25seSBhZmZlY3RzIHByaW50IG1lZGlhICovXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBjb2xvcjogJGJ1dHRvbi10ZXh0LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIxKTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA3cHggMCA3cHggMjBweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktZm9ybS1yZWd1bGFyO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1mb3JtLXJlZ3VsYXI7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTVweCk7XG5cbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWxlY3RSZWdpb24ge1xuXG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMTBweCAwIDEwcHggMzBweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBlbSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6ICRidXR0b24tdGV4dC1jb2xvcjtcbiAgICB9XG59XG5cbnNlY3Rpb24gaDIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLy8uZGVzdGluYXRpb24tY29udGFpbmVyIHtcbi5kZXN0aW5hdGlvbi1saXN0LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHVpLWJ1dHRvbi1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuYS51aS1idXR0b246YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHVpLWJ1dHRvbi1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLy8gQXV0byBDb3VudHJ5IExpc3QgSXRlbXNcbi51aS1tZW51IC51aS1tZW51LWl0ZW0td3JhcHBlcixcbi51aS1tZW51IC51aS1tZW51LWl0ZW0td3JhcHBlci51aS1zdGF0ZS1hY3RpdmUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktZm9ybS1yZWd1bGFyO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWZvcm0tcmVndWxhcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWNsKDE1cHgpO1xuXG4gICAgJi51aS1zdGF0ZS1hY3RpdmUge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbi8vIGJ1dHRvbiB3ZWxsXG4uYnV0dG9uLXdlbGwge1xuICAgIG1hcmdpbjogMzVweCAwIDIwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIGRvd24pfSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5wb3B1cC1lcnJvci1tc2cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0MHB4IDA7XG4gIGNvbG9yOiByZWQ7XG59XG4iLCIvL2NvbG9yc1xuJGxvYWRpbmctYmFja2dyb3VuZDogcmdiYSg3OSwgNzYsIDc3LCAwLjc1KTtcblxuXG4vKiBDb3ZlcmFnZSBhbmQgQWRkLU9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5oMi5tb2RhbC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzZweCk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSBkb3duKX0ge1xuICAgIC8qIE9ubHkgYWZmZWN0cyBsYXJnZS1tZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgIHBhZGRpbmc6IDkwcHggMzBweCAyMHB4IDMwcHg7XG4gICAgbWFyZ2luOiAwIC0yMHB4IDIwcHggLTIwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIG1lcmN1cnktYXBwcm94KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0cHgpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLXBvbGljaWVzIG5vLXJlcGVhdCBjZW50ZXIgMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDUzcHggNjhweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJG1vYmlsZS1kZXRhaWxzO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ub2ZmZXItY29weSB7XG4gIC8vcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcblxuICBoMiB7XG4gICAgLy9tYXJnaW46IDQwcHggMDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzBweCk7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcbiAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEFkZC1PbnMgU2VjdGlvblxuLmFkZC1vbi1jb250ZW50IHtcbiAgbWFyZ2luOiAwIC00MHB4IC00MHB4IC00MHB4O1xuICBwYWRkaW5nOiA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBhbGFiYXN0ZXItYXBwcm94KTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UtbWVkaXVtIGRvd24pfSB7XG4gICAgLyogT25seSBhZmZlY3RzIGxhcmdlLW1lZGl1bSBzY3JlZW5zIGFuZCBzbWFsbGVyICovXG4gICAgbWFyZ2luOiAwIC0yMHB4IC02MHB4IC0yMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBtZXJjdXJ5LWFwcHJveCk7XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwcHgpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UtbWVkaXVtIGRvd24pfSB7XG4gICAgICAvKiBPbmx5IGFmZmVjdHMgbGFyZ2UtbWVkaXVtIHNjcmVlbnMgYW5kIHNtYWxsZXIgKi9cbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLmFkZC1vbi1jb3B5IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG4gIH1cblxuICAubGVhZC1pbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICB9IC8vLnJvdy5wdXJjaGFzZS1saXN0LFxuICAucHVyY2hhc2UtbGlzdCB7XG4gICAgbWFyZ2luOiAwIDAgNjBweCAwOyAvLyYuaW5pdGlhbCB7XG4gICAgLy9saSB7XG4gICAgLy8mOm50aC1jaGlsZChuKzUpIHtcbiAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgLy99XG4gICAgLy99XG4gICAgLy99XG4gICAgbGkuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgbGkuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWF4LWhlaWdodDogMjk0cHg7XG5cbiAgICAgIC5oZWxwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgfVxuXG4gICAgICAuYWRkLW9uLWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAyNjlweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCA0MHB4IDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm94LXNoYWRvdzogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgYm94LXNoYWRvdyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDYwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSBkb3duKX0ge1xuICAgICAgICAgIC8qIE9ubHkgYWZmZWN0cyBsYXJnZS1tZWRpdW0gc2NyZWVucyBhbmQgc21hbGxlciAqL1xuICAgICAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubHVnZ2FnZSxcbiAgICAgICAgJi5MVUdHIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkbHVnZ2FnZS1hZGQtb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmx1Z2dhZ2UtcHJlbWl1bSxcbiAgICAgICAgJi5ORVdGT1JPTEQge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRwcmVtaXVtLWx1Z2dhZ2UtYWRkLW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzBweCA3MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tb3RvcmN5Y2xlLFxuICAgICAgICAmLk1UQ0xUV08ge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRtb3Rvci1zcG9ydC1hZGQtb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNhbmNlbGxhdGlvbixcbiAgICAgICAgJi5DQU5YIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY2FuY2VsbGF0aW9uLWFkZC1vbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggNzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYud2ludGVyLFxuICAgICAgICAmLlNOU1BSVFMsXG4gICAgICAgICYuU05TUFJUUzMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICR3aW50ZXItc3BvcnQtYWRkLW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzBweCA3MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jcnVpc2UsXG4gICAgICAgICYuQ1JTLFxuICAgICAgICAmLkNSUzIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjcnVpc2UtYWRkLW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzBweCA3MHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogNzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYucmVudGFsLWNhcixcbiAgICAgICAgJi5SVENSIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY2FyLXJlbnRhbC1hZGQtb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFkdmVudHVyZSxcbiAgICAgICAgJi5BRFZBQ1QsXG4gICAgICAgICYuQURWQUNUMyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGFkdmVudHVyZS1hZGQtb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmVsZWN0cm9uaWNzLFxuICAgICAgICAmLkVMRUMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRlbGVjdHJvbmljcy1hZGQtb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLndpbnRlci1wbHVzLFxuICAgICAgICAmLlNOU1BSVFMyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkd2ludGVyLXNwb3J0LXBsdXMtYWRkLW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzBweCA3MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5vdmVyc2Vhcy1tZWRpY2FsLFxuICAgICAgICAmLkFHRUNCQSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJG1lZGljYWwtb3Zlci04MC1hZGQtb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MHB4IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBsZWdlbmQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAxNDBweCAwIDAgMDtcblxuICAgICAgICAgIC5leHRyYS10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZXh0cmEtcHJpY2Uge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLWJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VsZWN0aW9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LWhlaWdodDogNTBweDtcblxuICAgICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXStsYWJlbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBjb25jcmV0ZS1zb2xpZCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcblxuICAgICAgICAgICAgK2xhYmVsIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgY29uY3JldGUtc29saWQpO1xuICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgd2hpdGUtc29saWQpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGVtZXJhbGQtYXBwcm94KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmNoZWNrZWQrbGFiZWwge1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTEwMDBweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZW1lcmFsZC1hcHByb3gpICRzZWxlY3RlZC1jaGVjayBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC52aWV3LWFsbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgIGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBkZW5pbS1hcHByb3gpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTAwcHgpO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIG1lcmN1cnktYXBwcm94KTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy9idXR0b253ZWxsIG92ZXItcmlkZXNcbi5idXR0b24td2VsbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlLW1lZGl1bSBkb3duKX0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wcmltYXJ5LWFjdGlvbiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCIvLyBhZGQgb24gbW9kYWxcbi5hZGQtb24taWNvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1heC13aWR0aDogNjBweDtcblx0bWFyZ2luOiAwIDMwcHggMzBweCAwO1xuXHRtYXgtaGVpZ2h0OiA2MHB4O1xuXG5cdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcblx0XHRtYXJnaW46IDAgMjBweCAyMHB4IDA7XG5cdH1cbn1cblxuaDMge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uaGVscCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dG9wOiAxMnB4O1xuXHRsZWZ0OiAxMHB4O1xuXG5cdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcblx0XHR0b3A6IDEwcHg7XG5cdH1cbn1cblxuLy8gbHVnZ2FnZSBsaXN0IG1vZGFsXG4ubHVnZ2FnZS1saXN0IHtcblx0ZGlzcGxheTogYmxvY2s7IC8vd2lkdGg6IDYwMHB4O1xuXHRtaW4taGVpZ2h0OiA2MDBweDtcblx0bWFyZ2luOiA1MHB4IGF1dG87XG5cblx0QG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuXHRcdG1pbi13aWR0aDogMzIwcHg7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDMycHgpO1xuXHRcdG1hcmdpbjogMjBweCBhdXRvO1xuXHR9XG5cblx0Lmx1Z2dhZ2UtaXRlbXMtdGFibGUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBtZXJjdXJ5LWFwcHJveCk7XG5cblx0XHQuYWRkLWl0ZW0ge1xuXHRcdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDQwcHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMjVweDtcblx0XHR9XG5cblx0XHR0aGVhZCB7XG5cdFx0XHQucm93IHtcblx0XHRcdFx0JjpsYXN0LW9mLXR5cGUge1xuXHRcdFx0XHRcdHRkIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHRib2R5IHtcblx0XHRcdC5yb3cge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBhbGFiYXN0ZXItYXBwcm94KTtcblx0XHRcdFx0JjpmaXJzdC1vZi10eXBlIHtcblx0XHRcdFx0XHR0ZCB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogMTBweDtcblx0XHRcdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBtZXJjdXJ5LWFwcHJveCk7XG5cblx0XHRcdFx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXRvcDogbm9uZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOm50aC1jaGlsZChvZGQpIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0ZCB7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDVweDtcblxuXHRcdFx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDVweCAxMHB4IDVweCAxMHB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5yZW1vdmUtaXRlbSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdHRleHQtaW5kZW50OiAwO1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1hcHByb3gpO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcmVndWxhcjtcblx0XHRcdFx0XHRmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxN3B4KTtcblx0XHRcdFx0XHRjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdGh1bmRlci1hcHByb3gpO1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDI1cHg7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcblxuXHRcdFx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcblx0XHRcdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCYuYnRuLXJlbXZvZSB7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDQ4cHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwIDI1cHg7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogNDhweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gY2FuY2VsbGF0aW9uIGFuZCByZW50YWwgbW9kYWxcbiYucmVudGFsLW9wdGlvbnMsXG4mLmNhbmNlbGxhdGlvbi1vcHRpb25zIHtcblx0ZGlzcGxheTogYmxvY2s7IC8vd2lkdGg6IDYwMHB4O1xuXHRtaW4taGVpZ2h0OiAzMDBweDtcblx0bWFyZ2luOiA1MHB4IGF1dG87XG5cblx0Lm1vZGFsLWJ1dHRvbiB7XG5cdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHBhZGRpbmctbGVmdDogNDBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDI1cHg7XG5cdH1cbn1cblxuLnNlY29uZGFyeS1hY3Rpb24ge1xuXHRjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgYmxhY2stc29saWQpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCB3aGl0ZS1zb2xpZCk7XG5cdHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcblx0Ym9yZGVyOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgYmxhY2stc29saWQpO1xufVxuXG4vL2J1dHRvbndlbGwgb3Zlci1yaWRlc1xuLmJ1dHRvbi13ZWxsIHtcblx0bWFyZ2luLXRvcDogMDtcblx0Ym9yZGVyLXRvcDogbm9uZTtcblx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHRAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UtbWVkaXVtIGRvd24pfSB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cblx0LnByaW1hcnktYWN0aW9uIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cblxuXG4uY292ZXJhZ2UtZm9ybSB7XG5cdGxhYmVsIHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0fVxufVxuIiwiJGVtYy1lcnJvci1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgdG9yY2gtcmVkKTtcbiRoMi1ib3JkZXItY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1jaGFsaWNlLWFwcHJveCk7XG5cblxuXG4vKiBUcmF2ZWxsZXJzICovXG5cbi50cmF2ZWxsZXItbGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cbiAgICAucmVtb3ZlLWxpbmsge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLXJlZ3VsYXI7XG4gICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZGVuaW0tYXBwcm94KTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gcHJpbWFyeSB0cmF2ZWxsZXIgbm9uLWVkaXRhYmxlXG4ubm8tZWRpdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiByZW0tY2FsYygyNHB4KTtcbiAgbWFyZ2luOiAxMHB4IDAgNTBweCAwO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwcHgpO1xuICAgIG1hcmdpbjogNXB4IDAgMjBweCAwO1xuICB9XG59XG5cbi8vIHNlY29uZGFyeSB0cmF2ZWxsZXIgZG9iXG4ubWFzay1iaXJ0aC1kYXRlIHtcbiAgcGFkZGluZzogMnB4IDMwcHggMnB4IDcwcHg7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNhbGVuZGFyIG5vLXJlcGVhdCAxMnB4IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMnB4IDMycHg7XG59XG5cbi8vIGFkZCB0cmF2ZWxsZXJcbi50cmF2ZWxsZXItcXVlc3Rpb24ge1xuICAvL3BhZGRpbmc6IDAgMCAyNXB4IDA7XG59XG5cbi8vIGVtYyBxdWVzdGlvbnNcbi5oZWFsaXgge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAuaGVhbGl4LWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICA+bGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtcmVndWxhcjtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjJweCk7XG4gICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgICAgJi5lcnJvcjIsXG4gICAgICAmLmVycm9yIHtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwuZXJyb3Ige1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG5cbiAgICAudW5hYmxlIHtcbiAgICAgIG1hcmdpbjogNDBweCAwO1xuICAgICAgY29sb3I6ICRlbWMtZXJyb3ItY29sb3I7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlY29uZGFyeS1ib2xkO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIH1cblxuICAgIC5jb25zZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLXJlZ3VsYXI7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjJweCk7XG4gICAgfVxuXG4gICAgI2VtY180X25vdGljZSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZWNvbmRhcnk7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWZhY2UtcmVndWxhcjtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICB9XG5cbiAgLmlubmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLmVtY0luZm8ge1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcbiAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuYnV0dG9uLXdlbGwge1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMzJweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZWNvbmRhcnk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxNnB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHNpbHZlci1hcHByb3gpO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAgICAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGRlbmltLWFwcHJveCk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZGVlcC1nZXQoJGNiYS1wYWxldHRlLCBhbHRvLWFwcHJveCk7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAgICAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5kZWNsaW5lLWVtYyB7XG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICB9XG4gIH1cblxuICB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcbiAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XG4gICAgfVxuXG4gICAgdGgge1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAgICAgICAvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0aCB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAgICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG4gIH1cblxuICB0ZCB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAgICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG4gIH1cblxuICB0ciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuICAgICAgLyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICB9XG4gIH1cblxuICBlbSB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcbiAgICAgIC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubm90aWNlIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfSB7XG4gICAgbWFyZ2luLWxlZnQ6IDU1cHg7XG4gIH1cbn1cblxuXG4vL2RlY2xhcmF0aW9uc1xuLmRlY2xhcmF0aW9uIHtcblxuICBoMiB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTJweCk7XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEycHgpO1xuICB9XG59XG5cbi8vIGJ1dHRvbiB3ZWxsXG4uYnV0dG9uLXdlbGwge1xuICBtYXJnaW46IDM1cHggMCAyMHB4IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLnBvcHVwLWVycm9yLW1zZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDQwcHggMDtcbiAgY29sb3I6IHJlZDtcbn1cblxuXG4vKiAvVHJhdmVsbGVycyAqL1xuIiwiLy8gbWVkaWNhbCBxdWVzdGlvblxuJi5lZGl0LWVtYy1yZWplY3RlZC1tb2RhbCB7XG5cblx0dGFibGUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbi10b3A6IDI1cHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0fVxuXHR0Ym9keSB7XG5cdFx0dHI6bnRoLW9mLXR5cGUob2RkKSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHR9XG5cdH1cblxuXHR0aGVhZCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfSB7XG5cdFx0XHQvKiBPbmx5IGFmZmVjdHMgbWVkaXVtLXNtYWxsIHNjcmVlbnMgYW5kIGxhcmdlciAqL1xuXHRcdFx0ZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuXHRcdH1cblxuXHRcdHRoIHtcblxuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcblx0XHRcdFx0LyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0dHIge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcblx0XHRcdC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG5cdFx0XHRkaXNwbGF5OiB0YWJsZS1yb3c7XG5cdFx0fVxuXHR9XG5cblx0dGgsXG5cdC5tZWRpY2FsLWNvbmRpdG9pbl9fdGQge1xuXHRcdGRpc3BsYXk6IGxpc3QtaXRlbTtcblx0XHRwYWRkaW5nLWJvdHRvbTogNXB4O1xuXHRcdHdpZHRoOiA1MCU7XG5cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuXHRcdFx0LyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cblx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDVweDtcblx0XHR9XG5cdH1cblxuXHR0ZCB7XG5cdFx0ZGlzcGxheTogbGlzdC1pdGVtO1xuXHRcdHBhZGRpbmctYm90dG9tOiA1cHg7XG5cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0ge1xuXHRcdFx0LyogT25seSBhZmZlY3RzIG1lZGl1bS1zbWFsbCBzY3JlZW5zIGFuZCBsYXJnZXIgKi9cblx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDVweDtcblx0XHR9XG5cdH1cblxuXHRlbSB7XG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcblx0XHRcdC8qIE9ubHkgYWZmZWN0cyBtZWRpdW0tc21hbGwgc2NyZWVucyBhbmQgbGFyZ2VyICovXG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC5idXR0b24td2VsbCB7XG5cdFx0bWFyZ2luOiAzNXB4IDAgMjBweCAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHRcdGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0XHQmLWxpbmsge1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHR9XG5cdH1cbn1cbiIsIi8vLnJldmVhbCB7XG4jdmlldy1hbGwtYmVuZWZpdHMge1xuXG5cdFx0LmJlbmVmaXRzLXRhYmxlIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdFx0dGhlYWQge1xuXG5cdFx0XHRcdFx0XHR0aCB7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZy10b3A6IDA7XG5cblx0XHRcdFx0XHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzBweCk7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDAgMCA0MHB4IDA7XG5cblx0XHRcdFx0XHRcdFx0XHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0aCxcblx0XHRcdFx0dGQge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDEwcHggMDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHRoIHtcblxuXHRcdFx0XHRcdFx0Ji5kaXNjb3VudCB7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0ZCB7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdFx0fVxuXG5cdFx0fVxuXG59XG4iLCIucmV2ZWFsIHtcbiAgLy8gbG9nLW91dCBhbmQgY2FuY2VsIHBvbGljeVxuICAmLmNhbmNlbC1wb2xpY3ktbW9kYWwge1xuICAgIHAge1xuICAgICAgbWF4LXdpZHRoOiA2MTBweDtcdFxuICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweCBhdXRvO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNnB4KTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bS1sYXJnZSBkb3duKX0ge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24td2VsbCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAmLWxpbmsge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnJldmVhbCB7XG5cblx0XHQvLyBtZWRpY2FsIHF1ZXN0aW9uXG5cdFx0Ji5tZWRpY2FsLXF1ZXN0aW9uLW1vZGFsIHtcblxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdG1heC13aWR0aDogNjQwcHg7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDAgYXV0byAzMHB4IGF1dG87XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0cHgpO1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHR9XG5cblx0XHR9XG5cbn1cbiIsIi5yZXZlYWwge1xuXG5cdFx0Ji5vdmVyLWFnZS1tb2RhbCB7XG5cblx0XHRcdFx0aDIsXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOiA2NDBweDtcblx0XHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcblx0XHRcdFx0fVxuXG5cdFx0fVxuXG59XG4iLCIucmV2ZWFsIHtcblx0aDIge1xuXHRcdGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLXJlZ3VsYXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHRmb250LXNpemU6IDNyZW07XG5cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtLWxhcmdlIGRvd24pfSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHR9XG5cdH1cblxuXHRsYWJlbCB7XG5cdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiAkZm9udC1mYWNlLXJlZ3VsYXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogNnB4O1xuXHR9XG5cblx0aDIuZGl2aWRlciB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNHB4KTtcblx0XHRmb250LXdlaWdodDogJGZvbnQtZmFjZS1yZWd1bGFyO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcblx0XHRcdG1hcmdpbi10b3A6IDMwcHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHRcdH1cblxuXHRcdCY6YmVmb3JlLFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0Y29udGVudDogJyAnO1xuXHRcdFx0aGVpZ2h0OiAxcHg7XG5cdFx0XHR3aWR0aDogY2FsYyg1MCUgLSA4MHB4KTtcblx0XHRcdG1hcmdpbi10b3A6IDE4cHg7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgbWFwLWRlZXAtZ2V0KCRjYmEtcGFsZXR0ZSwgZG92ZS1ncmF5LWFwcHJveCk7XG5cblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0tbGFyZ2UgZG93bil9IHtcblx0XHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gNTBweCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi13ZWxsIHtcblx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXG5cdFx0Ji5uby1tYXJnaW4ge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0bGluZS1oZWlnaHQ6IDUwcHg7XG5cdFx0fVxuXHR9XG5cblx0LnBvcHVwLWVycm9yLW1zZyB7XG5cdCAgZGlzcGxheTogYmxvY2s7XG5cdCAgbWFyZ2luOiA0MHB4IDA7XG5cdCAgY29sb3I6IHJlZDtcblx0fVxufVxuIiwiLyogLS0gbG9nLWluIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5pY3NwLWxvZ2luIHtcbiAgI3BhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMDtcblxuICAgIGgxIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuICAgIH1cbiAgfVxuXG4gICNsb2dpbi1maWVsZHMtY2xpZW50IHtcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbi13ZWxsIHtcbiAgICBtYXJnaW46IDAgLTAuMjE4NzVyZW0gMS41cmVtO1xuICAgIHBhZGRpbmc6IDI1cHggMCAwIDA7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgfVxuXG4gIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG5ib2R5LnBhdGgtLWxvZ2luIHtcbiAgZGl2LmRydXBhbC1tZXNzYWdlcy5tZXNzYWdlcy0tZXJyb3Ige1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gRHJ1cGFsIHVzZXIgbG9naW4gZm9ybVxuLnVzZXItbG9naW4tZm9ybSB7XG4gIC5mb3JtLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cbiIsInRoZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cbnRib2R5IHtcbiAgdHJ7XG4gICAgJjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIGFsYWJhc3Rlci1hcHByb3gpO1xuICAgIH1cbiAgICAmOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2JhLXBhbGV0dGUsIHdoaXRlLXNvbGlkKTtcbiAgICB9XG4gIH1cbn1cblxuLnBhdGgtLXBvbGljeSxcbi5wYXRoLS1sb2dpbixcbi5wYXRoLS0yZmEge1xuICAuYmxvY2stcGFnZS10aXRsZS1ibG9jayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDA7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiAwO1xufVxuLmNsZWFyZml4IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuKiBodG1sIC5jbGVhcmZpeCB7XG4gIGhlaWdodDogMSU7XG59XG4uY2xlYXJmaXgge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5wb3B1cC1lcnJvci1tc2cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0MHB4IDA7XG4gIGNvbG9yOiByZWQ7XG59XG4iXX0= */
