/**
 * Foundation for Sites by ZURB
 * Version 6.4.3
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto; } }

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

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

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

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

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

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

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

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

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

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
     * Remove the outline on focused links when they are also active or hovered
     * in all browsers (opinionated).
     */
a:active,
a:hover {
  outline-width: 0; }

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

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit; }

/**
     * Add the correct font weight in Chrome, Edge, and Safari.
     */
b,
strong {
  font-weight: bolder; }

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

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

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

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

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

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

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

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

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

/**
     * Show the overflow in IE.
     */
button {
  overflow: visible; }

/**
     * Remove the inheritance of text transform in Edge, Firefox, and IE.
     * 1. Remove the inheritance of text transform in Firefox.
     */
button,
select {
  /* 1 */
  text-transform: none; }

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

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

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

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

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

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

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

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

/**
     * 1. Correct the text wrapping in Edge and IE.
     * 2. Correct the color inheritance from `fieldset` elements in IE.
     * 3. Remove the padding so developers are not caught out when they zero out
     *    `fieldset` elements in all browsers.
     */
legend {
  box-sizing: border-box;
  /* 1 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */ }

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

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

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

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

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

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

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

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

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

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

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

body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: "Gotham", "Helvetica Neue", sans-serif;
  font-weight: 300;
  line-height: 1.5;
  color: #3f3f3f;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

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

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

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

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

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

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

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

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

.label {
  display: inline-block;
  padding: 1rem 1rem 1rem;
  border-radius: 0;
  font-size: 80%;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #1486c8;
  color: #fff; }
  .label.primary {
    background: #1486c8;
    color: #fff; }
  .label.secondary {
    background: #767676;
    color: #fff; }
  .label.success {
    background: #3adb76;
    color: #3f3f3f; }
  .label.warning {
    background: #ffae00;
    color: #3f3f3f; }
  .label.alert {
    background: #cc4b37;
    color: #fff; }
  .label.navy {
    background: #003262;
    color: #fff; }
  .label.blue {
    background: #1486c8;
    color: #fff; }
  .label.lightblue {
    background: #d3e8e9;
    color: #3f3f3f; }
  .label.yellow {
    background: #fdb515;
    color: #3f3f3f; }
  .label.orange {
    background: #fc6605;
    color: #3f3f3f; }

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

html.is-reveal-open,
html.is-reveal-open body {
  min-height: 100%;
  overflow: hidden;
  position: fixed;
  -webkit-user-select: none;
      -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(63, 63, 63, 0.45);
  overflow-y: scroll; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #b9c1c3;
  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 {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 75rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 75rem; } }
  .reveal.full {
    top: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 26.5em) {
    .reveal {
      top: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      height: 100vh;
      min-height: 100vh;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

table {
  border-collapse: collapse;
  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: bold; }
  thead {
    background: #f9f9f9;
    color: #3f3f3f; }
  tfoot {
    background: #f2f2f2;
    color: #3f3f3f; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f2f2f2; }
  table.unstriped tbody {
    background-color: #fff; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f2f2f2;
      background-color: #fff; }

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

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

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

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

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

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

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

/*
  My custom styles:
  Add your scss files below to structure your project styles
*/
body,
html {
  height: 100%;
  font-size: 16px; }

body {
  font-size: 16px;
  line-height: 1.68; }
  @media print, screen and (min-width: 40em) {
    body {
      font-size: 18px; } }
  body.menu-in {
    overflow: hidden; }

/*----------  Move browserify notification down  ----------*/
#__bs_notify__ {
  top: 50% !important;
  padding: 10px !important;
  border-radius: 5px 0 0 5px !important;
  font-size: 12px !important;
  letter-spacing: 0;
  z-index: 9999; }

/*----------  Interchange  ----------*/
[data-interchange] {
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important; }

/*----------  data-url  ----------*/
[data-url] {
  cursor: pointer; }

a {
  text-decoration: none; }

hr {
  margin: 2rem 0 3rem;
  background: #b9c1c3;
  border: none;
  height: 1px; }
  @media print, screen and (min-width: 40em) {
    hr {
      margin: 2rem 0 3rem; } }
  @media print, screen and (min-width: 64em) {
    hr {
      margin: 4rem 0; } }

@font-face {
  font-family: 'ArnoPro';
  font-display: auto;
  src: local("Arno Pro Light Display"), local("ArnoPro-LightDisplay"), url("../fonts/ArnoPro-LightDisplay.woff2") format("woff2"), url("../fonts/ArnoPro-LightDisplay.woff") format("woff");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'Gotham';
  font-display: auto;
  src: local("Gotham Light"), local("Gotham-Light"), url("../fonts/Gotham-Light.woff2") format("woff2"), url("../fonts/Gotham-Light.woff") format("woff");
  font-weight: 100;
  font-style: normal; }

@font-face {
  font-family: 'Gotham';
  font-display: auto;
  src: local("Gotham Book"), local("Gotham-Book"), url("../fonts/Gotham-Book.woff2") format("woff2"), url("../fonts/Gotham-Book.woff") format("woff");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'Gotham';
  font-display: auto;
  src: local("Gotham Medium"), local("Gotham-Medium"), url("../fonts/Gotham-Medium.woff2") format("woff2"), url("../fonts/Gotham-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'Gotham';
  font-display: auto;
  src: local("Gotham Bold"), local("Gotham-Bold"), url("../fonts/Gotham-Bold.woff2") format("woff2"), url("../fonts/Gotham-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal; }

/*
@font-face {
    font-family: 'ArnoPro';
    src: local('Arno Pro'), local('ArnoPro-Regular'),
        url('ArnoPro-Regular.woff2') format('woff2'),
        url('ArnoPro-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

 */
/*----------  Type Mixins  ----------*/
h1,
span.header {
  letter-spacing: -0.42px;
  font-size: 200%;
  line-height: 1.2;
  color: #003262;
  font-weight: 600;
  font-family: 'Gotham'; }
  @media print, screen and (min-width: 40em) {
    h1,
    span.header {
      font-size: 250%; } }
  @media print, screen and (min-width: 64em) {
    h1,
    span.header {
      font-size: 330%; } }

h2 {
  letter-spacing: -0.42px;
  font-size: 200%;
  line-height: 1.2;
  color: #003262;
  margin: 0 0 1rem;
  font-family: 'Gotham'; }
  @media print, screen and (min-width: 40em) {
    h2 {
      font-size: 250%;
      margin: 0 0 2rem; } }
  @media print, screen and (min-width: 64em) {
    h2 {
      font-size: 330%;
      margin: 0 0 3rem; } }

h3, #page-intro h2,
#page-intro h3,
#page-intro h4, .build-content_and_background_image#build-1 h2 {
  letter-spacing: -0.42px;
  line-height: 1.2;
  font-size: 120%;
  margin: 0 0 1rem;
  color: #003262;
  font-family: 'Gotham'; }
  @media print, screen and (min-width: 40em) {
    h3, #page-intro h2,
    #page-intro h3,
    #page-intro h4, .build-content_and_background_image#build-1 h2 {
      font-size: 130%;
      margin: 0 0 2rem; } }
  @media print, screen and (min-width: 64em) {
    h3, #page-intro h2,
    #page-intro h3,
    #page-intro h4, .build-content_and_background_image#build-1 h2 {
      font-size: 160%;
      margin: 0 0 3rem; } }

h4 {
  letter-spacing: 0.2px;
  font-size: 120%;
  line-height: 1.2;
  margin: 0 0 1rem;
  font-family: 'Gotham'; }
  @media print, screen and (min-width: 40em) {
    h4 {
      font-size: 130%;
      margin: 0 0 2rem; } }
  @media print, screen and (min-width: 64em) {
    h4 {
      font-size: 160%;
      margin: 0 0 3rem; } }

h5 {
  letter-spacing: 0.2px;
  font-size: 120%;
  line-height: 1.2;
  margin: 0 0 1rem;
  font-family: 'Gotham'; }
  @media print, screen and (min-width: 40em) {
    h5 {
      font-size: 130%;
      margin: 0 0 2rem; } }
  @media print, screen and (min-width: 64em) {
    h5 {
      font-size: 160%;
      margin: 0 0 3rem; } }

h6 {
  letter-spacing: 2.96px;
  font-family: 'Gotham'; }

.center {
  text-align: center; }

a {
  color: #1486c8; }

.smallcaps, #whoweare #map h6 {
  letter-spacing: 2.9px;
  color: #1486c8;
  text-transform: uppercase;
  font-family: 'ArnoPro';
  font-size: 85%;
  font-weight: 300; }

/*----------  Single Item  ----------*/
.single-content h2,
.single-content h3,
.single-content #page-intro h2,
#page-intro .single-content h2,
.single-content #page-intro h3,
#page-intro .single-content h3,
.single-content #page-intro h4,
#page-intro .single-content h4,
.single-content .build-content_and_background_image#build-1 h2,
.build-content_and_background_image#build-1 .single-content h2,
.single-content h4,
.single-content h5,
.single-content h6 {
  margin: 1rem 0; }
  @media print, screen and (min-width: 40em) {
    .single-content h2,
    .single-content h3,
    .single-content #page-intro h2,
    #page-intro .single-content h2,
    .single-content #page-intro h3,
    #page-intro .single-content h3,
    .single-content #page-intro h4,
    #page-intro .single-content h4,
    .single-content .build-content_and_background_image#build-1 h2,
    .build-content_and_background_image#build-1 .single-content h2,
    .single-content h4,
    .single-content h5,
    .single-content h6 {
      margin: 2rem 0; } }
  @media print, screen and (min-width: 64em) {
    .single-content h2,
    .single-content h3,
    .single-content #page-intro h2,
    #page-intro .single-content h2,
    .single-content #page-intro h3,
    #page-intro .single-content h3,
    .single-content #page-intro h4,
    #page-intro .single-content h4,
    .single-content .build-content_and_background_image#build-1 h2,
    .build-content_and_background_image#build-1 .single-content h2,
    .single-content h4,
    .single-content h5,
    .single-content h6 {
      margin: 3rem 0; } }

.single-content .has-table {
  overflow: scroll; }

.grey-text {
  color: #b9c1c3 !important; }

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; }

#wpadminbar {
  position: fixed !important; }

body.admin-bar.f-topbar-fixed .sticky.fixed {
  margin-top: 2rem; }

body.admin-bar.offcanvas .off-canvas.is-open {
  top: 2.875rem; }
  @media screen and (min-width: 48.9375em) {
    body.admin-bar.offcanvas .off-canvas.is-open {
      top: 2rem; } }

.wp-caption > figcaption {
  max-width: 100%;
  font-size: 0.8rem;
  color: #999;
  padding: 0.25rem 0; }

p.wp-caption-text {
  font-size: 90%;
  color: #666;
  padding: 0.625rem 0; }

.alignleft {
  float: left;
  padding-right: 1rem;
  margin: 0; }

.alignright {
  float: right;
  padding-left: 1rem;
  margin: 0; }

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

.section {
  padding: 50px 3%;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .section {
      padding: 75px 3%; } }
  @media print, screen and (min-width: 64em) {
    .section {
      padding: 75px 5% 60px; } }

.inside {
  max-width: 1150px;
  margin-left: auto;
  margin-right: auto; }
  .inside.has-cards {
    display: -ms-grid;
    display: grid;
    gap: 2em;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr; }
    @media print, screen and (min-width: 40em) {
      .inside.has-cards {
        -ms-grid-columns: 1fr 1fr;
            grid-template-columns: 1fr 1fr; } }
    @media print, screen and (min-width: 64em) {
      .inside.has-cards {
        -ms-grid-columns: 1fr 1fr 1fr;
            grid-template-columns: 1fr 1fr 1fr; } }
    .inside.has-cards .card {
      margin: 0 !important; }

form {
  font-size: 80%; }
  form input,
  form textarea {
    font-weight: 400;
    border: none;
    padding-left: 1rem;
    padding-right: 1rem; }
  form select {
    font-weight: 400;
    border: none;
    padding-left: 1rem;
    padding-right: 1rem;
    position: relative;
    background: #fff url('data:image/svg+xml;utf8,<svg preserveAspectRatio="none" viewBox="0 0 124 85" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path fill="#003262" d="M0 0H124V85H0z" transform="translate(-603.000000, -824.000000) translate(182.000000, 824.000000) translate(421.000000, 0.000000)"/><path d="M5.42542974,3.70211356 L14.1827891,12.4594729 L14.1827891,3.70211356 L5.42542974,3.70211356 Z" transform="translate(-603.000000, -824.000000) translate(182.000000, 824.000000) translate(421.000000, 0.000000) translate(51.652174, 31.058824) translate(9.097003, 8.787900) rotate(-225.000000) translate(-9.097003, -8.787900)" fill="#fff"/></g></svg>');
    background-size: 80px 100%;
    background-position: right center;
    background-repeat: no-repeat; }

.single-content .gform_wrapper {
  background: #efefef;
  padding: 1rem;
  margin-top: 1rem;
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 40em) {
    .single-content .gform_wrapper {
      margin-top: 2rem;
      margin-bottom: 2rem;
      padding: 2rem; } }
  @media print, screen and (min-width: 64em) {
    .single-content .gform_wrapper {
      margin-top: 3rem;
      margin-bottom: 3rem;
      padding: 3rem; } }
  .single-content .gform_wrapper .gform_title {
    margin-top: 0;
    margin-bottom: 1rem; }
    @media print, screen and (min-width: 40em) {
      .single-content .gform_wrapper .gform_title {
        margin-bottom: 2rem; } }

/*----------  GForms  ----------*/
.gform_wrapper ul {
  margin: 0;
  padding: 0; }
  .gform_wrapper ul li {
    list-style: none; }

.gform_wrapper .gform_heading {
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 64em) {
    .gform_wrapper .gform_heading {
      margin-bottom: 2rem; } }

.gform_wrapper .gfield {
  margin-bottom: 1rem;
  width: 100%;
  float: left; }
  .gform_wrapper .gfield input {
    height: 60px;
    font-family: "Gotham", "Helvetica Neue", sans-serif;
    letter-spacing: 1px;
    width: 100%; }
  .gform_wrapper .gfield ::-webkit-input-placeholder {
    font-family: "Gotham", "Helvetica Neue", sans-serif;
    letter-spacing: 1px; }
  .gform_wrapper .gfield :-ms-input-placeholder {
    font-family: "Gotham", "Helvetica Neue", sans-serif;
    letter-spacing: 1px; }
  .gform_wrapper .gfield ::placeholder {
    font-family: "Gotham", "Helvetica Neue", sans-serif;
    letter-spacing: 1px; }
  .gform_wrapper .gfield textarea {
    width: 100%;
    padding-top: 1rem;
    padding-bottom: 1rem; }
  .gform_wrapper .gfield label {
    display: none; }
  .gform_wrapper .gfield.has-checkbox label {
    display: block;
    font-weight: 400; }
  .gform_wrapper .gfield .ginput_container_checkbox .gfield_checkbox {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .gform_wrapper .gfield .ginput_container_checkbox .gfield_checkbox li {
      margin-right: auto; }
  .gform_wrapper .gfield .ginput_container_checkbox li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .gform_wrapper .gfield .ginput_container_checkbox br {
    display: none; }
  .gform_wrapper .gfield .ginput_container_checkbox input {
    width: auto !important;
    display: inline-block;
    margin-right: 1rem; }
  .gform_wrapper .gfield .ginput_container_checkbox label {
    display: inline-block;
    font-weight: 400; }
  .gform_wrapper .gfield .ginput_complex {
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media print, screen and (min-width: 40em) {
      .gform_wrapper .gfield .ginput_complex {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; } }
    .gform_wrapper .gfield .ginput_complex p {
      -webkit-flex: 0 1 48%;
          -ms-flex: 0 1 48%;
              flex: 0 1 48%;
      margin: 0; }
      @media screen and (max-width: 74.9375em) {
        .gform_wrapper .gfield .ginput_complex p {
          margin: 0 0 1rem; }
          .gform_wrapper .gfield .ginput_complex p:last-of-type {
            margin-bottom: 0; } }
      .gform_wrapper .gfield .ginput_complex p br {
        display: none; }
      .gform_wrapper .gfield .ginput_complex p input {
        width: 100%; }

@media print, screen and (min-width: 40em) {
  .gform_wrapper #field_1_1 {
    width: 48%;
    float: left; }
  .gform_wrapper #field_1_2 {
    width: 48%;
    float: right; } }

.gform_wrapper .gform_footer button {
  color: #003262;
  font-size: 100%; }
  .gform_wrapper .gform_footer button:hover {
    color: #1486c8; }
    .gform_wrapper .gform_footer button:hover svg path {
      fill: #1486c8; }
  .gform_wrapper .gform_footer button span {
    width: 50px;
    height: 50px;
    display: inline-block;
    border: 1px solid #003262;
    margin-left: 1rem; }
  .gform_wrapper .gform_footer button svg {
    width: 20px;
    height: 100%;
    margin: 0; }
    .gform_wrapper .gform_footer button svg path {
      fill: #003262; }

.gform_wrapper .validation_error {
  background: #ff9999;
  font-weight: 300;
  padding: 1rem;
  margin: 0 0 1rem;
  color: #3f3f3f; }

.gform_wrapper .gfield_error input {
  border: 1px solid #ff9999; }

.gform_wrapper .validation_message {
  display: block;
  color: red;
  font-weight: 400;
  margin-top: 2px;
  font-size: 90%; }

.gform_confirmation_message {
  text-align: center;
  font-size: 120%;
  font-weight: 500; }

#sticky #searchform {
  position: absolute;
  width: calc(100% - 109.5px);
  top: 0;
  left: 0;
  height: 54.75px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  z-index: 100;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
  -webkit-transform: translate(calc(100% + 200px), 0);
      -ms-transform: translate(calc(100% + 200px), 0);
          transform: translate(calc(100% + 200px), 0);
  pointer-events: none; }
  #sticky #searchform.active {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    pointer-events: all; }
  @media print, screen and (min-width: 40em) {
    #sticky #searchform {
      height: 73px;
      width: calc(100% - 146px); } }
  #sticky #searchform input {
    border: none;
    background: #003262;
    padding: 0 15px;
    width: 100%;
    font-size: 100%;
    font-weight: 300;
    height: 54.75px;
    color: white;
    font-family: "Gotham", "Helvetica Neue", sans-serif;
    font-weight: 300;
    outline-color: white; }
    #sticky #searchform input::-webkit-input-placeholder {
      color: rgba(255, 255, 255, 0.8); }
    #sticky #searchform input:-ms-input-placeholder {
      color: rgba(255, 255, 255, 0.8); }
    #sticky #searchform input::placeholder {
      color: rgba(255, 255, 255, 0.8); }
    @media print, screen and (min-width: 40em) {
      #sticky #searchform input {
        height: 73px; } }
  #sticky #searchform button {
    -webkit-flex: 0 1 73px;
        -ms-flex: 0 1 73px;
            flex: 0 1 73px;
    height: 54.75px;
    border: 1px solid #1486c8;
    background: #1486c8; }
    @media print, screen and (min-width: 40em) {
      #sticky #searchform button {
        height: 73px; } }
    #sticky #searchform button svg {
      position: relative;
      top: 1px;
      margin: 0; }
      #sticky #searchform button svg path {
        fill: #fff; }

#sticky {
  position: fixed;
  top: 0;
  z-index: 200;
  left: 0;
  width: 100%;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 54.75px; }
  @media print, screen and (min-width: 40em) {
    #sticky {
      height: 73px; } }
  .scrolled #sticky {
    background: rgba(0, 50, 98, 0.7); }
    .scrolled #sticky #logo {
      -webkit-transform: translate(0, -6px);
          -ms-transform: translate(0, -6px);
              transform: translate(0, -6px); }
      @media print, screen and (min-width: 40em) {
        .scrolled #sticky #logo {
          -webkit-transform: translate(0, -9px) scale(0.8);
              -ms-transform: translate(0, -9px) scale(0.8);
                  transform: translate(0, -9px) scale(0.8); } }
  .page-template-maps #sticky {
    background: #003262; }

/*----------  Logo  ----------*/
#logo {
  margin: 1rem 0 0 2rem;
  transition: all 0.3s cubic-bezier(0.51, 0.31, 0.26, 1); }
  @media print, screen and (min-width: 40em) {
    #logo {
      margin: 0.5rem 0 0 2rem; } }
  #logo svg {
    width: 116.4px;
    height: 34.8px; }
    @media print, screen and (min-width: 64em) {
      #logo svg {
        width: 194px;
        height: 58px; } }
  .single-post #logo,
  .single-research #logo,
  .single-resource #logo,
  .single-impact #logo {
    margin-top: 6px; }
  .single-post.scrolled #logo,
  .single-research.scrolled #logo,
  .single-resource.scrolled #logo,
  .single-impact.scrolled #logo {
    margin-top: 1rem; }

/*----------  Sticky Buttons  ----------*/
.buttons {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
  z-index: 300; }
  .buttons button {
    width: 54.75px;
    height: 54.75px;
    padding: 0;
    border: none;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer; }
    @media print, screen and (min-width: 40em) {
      .buttons button {
        width: 73px;
        height: 73px; } }
  .buttons #searchtoggle {
    background: #fff;
    transition: all 0.2s cubic-bezier(0.51, 0.31, 0.26, 1); }
    .buttons #searchtoggle svg {
      width: 27px;
      height: 27px; }
      .buttons #searchtoggle svg path {
        fill: #003262;
        transition: fill 0.2s cubic-bezier(0.51, 0.31, 0.26, 1); }
    .buttons #searchtoggle:hover, .buttons #searchtoggle:focus, .buttons #searchtoggle.active {
      background: #d3e8e9; }
  .buttons #menutoggle {
    background: #003262; }
    .buttons #menutoggle .inside {
      transition: all 0.4s cubic-bezier(0.51, 0.31, 0.26, 1); }
    .buttons #menutoggle span {
      width: 25px;
      height: 2px;
      background: #fff;
      display: block;
      margin: 0;
      transition: all 0.2s cubic-bezier(0.51, 0.31, 0.26, 1);
      -webkit-transform-origin: center center;
          -ms-transform-origin: center center;
              transform-origin: center center;
      -webkit-transform-origin: 0 0;
          -ms-transform-origin: 0 0;
              transform-origin: 0 0; }
      .buttons #menutoggle span:nth-of-type(1) {
        -webkit-transform: translate(0, -8px);
            -ms-transform: translate(0, -8px);
                transform: translate(0, -8px); }
      .buttons #menutoggle span:nth-of-type(3) {
        -webkit-transform: translate(0, 8px);
            -ms-transform: translate(0, 8px);
                transform: translate(0, 8px); }
    .buttons #menutoggle:hover span:nth-of-type(1) {
      -webkit-transform: translate(0, -8px) scaleX(0.8);
          -ms-transform: translate(0, -8px) scaleX(0.8);
              transform: translate(0, -8px) scaleX(0.8); }
    .buttons #menutoggle:hover span:nth-of-type(2) {
      -webkit-transform: scaleX(1);
          -ms-transform: scaleX(1);
              transform: scaleX(1); }
    .buttons #menutoggle:hover span:nth-of-type(3) {
      -webkit-transform: translate(0, 8px) scaleX(0.6);
          -ms-transform: translate(0, 8px) scaleX(0.6);
              transform: translate(0, 8px) scaleX(0.6); }
    .buttons #menutoggle.active .inside {
      -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
              transform: rotate(180deg); }
    .buttons #menutoggle.active span:nth-of-type(1) {
      -webkit-transform: translate(4px, -6px) scaleX(1) rotate(45deg);
          -ms-transform: translate(4px, -6px) scaleX(1) rotate(45deg);
              transform: translate(4px, -6px) scaleX(1) rotate(45deg); }
    .buttons #menutoggle.active span:nth-of-type(2) {
      -webkit-transform: scaleX(0);
          -ms-transform: scaleX(0);
              transform: scaleX(0); }
    .buttons #menutoggle.active span:nth-of-type(3) {
      -webkit-transform: translate(3px, 8px) scaleX(1) rotate(-45deg);
          -ms-transform: translate(3px, 8px) scaleX(1) rotate(-45deg);
              transform: translate(3px, 8px) scaleX(1) rotate(-45deg); }

.supportus {
  position: fixed !important;
  white-space: nowrap;
  padding-left: 20px;
  padding-right: 20px;
  right: 0;
  z-index: 150;
  -webkit-transform: translate(0, 130px);
      -ms-transform: translate(0, 130px);
          transform: translate(0, 130px); }
  .supportus b {
    display: inline-block;
    overflow: hidden;
    max-width: 200px;
    transition: all 0.3s cubic-bezier(0.51, 0.31, 0.26, 1);
    overflow: hidden;
    white-space: nowrap; }
  .scrolled .supportus {
    width: 54.75px;
    -webkit-transform: translate(0, 54.75px);
        -ms-transform: translate(0, 54.75px);
            transform: translate(0, 54.75px); }
    @media print, screen and (min-width: 40em) {
      .scrolled .supportus {
        width: 73px;
        -webkit-transform: translate(0, 73px);
            -ms-transform: translate(0, 73px);
                transform: translate(0, 73px);
        padding-top: 23px !important;
        padding-bottom: 23px !important;
        height: auto; } }
    .scrolled .supportus b {
      max-width: 0; }
    .scrolled .supportus svg {
      margin: 0 !important; }
    .scrolled .supportus:hover, .scrolled .supportus:focus, .scrolled .supportus:active {
      width: auto; }
      .scrolled .supportus:hover svg, .scrolled .supportus:focus svg, .scrolled .supportus:active svg {
        margin-right: 10px !important; }
      .scrolled .supportus:hover b, .scrolled .supportus:focus b, .scrolled .supportus:active b {
        max-width: 200px; }
  @media print, screen and (min-width: 64em) {
    .supportus {
      top: 230px; } }

#hero {
  width: 100%;
  min-height: 100vh;
  overflow: hidden;
  color: #fff;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative; }
  #hero::before {
    content: ' ';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0.25;
    background: linear-gradient(-180deg, #1486c8 0%, #759a7d 42%, #fdb515 100%, rgba(0, 0, 0, 0.01) 100%); }
  #hero .watermark {
    position: absolute;
    width: 60%;
    height: 100%;
    top: 0;
    left: 20%;
    pointer-events: none; }
  #hero .text {
    width: 90%;
    max-width: 800px;
    padding-top: 250px;
    padding-bottom: 50px;
    text-align: center;
    position: relative;
    z-index: 100; }
    @media print, screen and (min-width: 40em) {
      #hero .text {
        padding-bottom: 100px;
        padding-top: 150px;
        width: 70%; } }
    @media print, screen and (min-width: 64em) {
      #hero .text {
        width: 80%; } }
    #hero .text h1 {
      margin: 0 0 2rem;
      color: #fff; }
    #hero .text h2 {
      font-family: 'ArnoPro';
      color: #fff;
      font-size: 150%;
      margin: 0 auto 3rem;
      max-width: 80%; }
      @media print, screen and (min-width: 40em) {
        #hero .text h2 {
          font-size: 200%; } }
    #hero .text .site-button svg path {
      fill: #fff; }

#page-header {
  text-align: center;
  height: 280px;
  padding-top: 54.75px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    #page-header {
      padding-top: 73px; } }
  #page-header h1,
  #page-header span.header {
    color: #fff;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 100; }
  #page-header.has-overlay::before {
    content: ' ';
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0.3;
    background: linear-gradient(-180deg, #1486c8 0%, #759a7d 42%, #fdb515 100%); }
  #page-header.has-overlay::after {
    content: ' ';
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: rgba(0, 0, 0, 0.1); }
  #page-header.sliver {
    height: 73px; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
  width: 100%; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: '';
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  padding: 1em;
  display: none; }
  [dir='rtl'] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-arrow {
  width: 55px;
  height: 55px;
  margin: 0 -1px 0 0;
  border-width: 1px;
  padding: 0 !important; }
  .slick-arrow svg {
    width: 25px;
    height: 25px;
    position: relative;
    top: 1px;
    left: -5px; }
    .slick-arrow svg path {
      fill: #1486c8; }
  .slick-arrow.slick-prev svg {
    -webkit-transform: scaleX(-1);
        -ms-transform: scaleX(-1);
            transform: scaleX(-1); }

@media print, screen and (min-width: 64em) {
  [data-aos][data-aos][data-aos-duration='50'],
  body[data-aos-duration='50'] [data-aos] {
    transition-duration: 50ms; }
  [data-aos][data-aos][data-aos-delay='50'],
  body[data-aos-delay='50'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='50'].aos-animate,
  body[data-aos-delay='50'] [data-aos].aos-animate {
    transition-delay: 50ms; }
  [data-aos][data-aos][data-aos-duration='100'],
  body[data-aos-duration='100'] [data-aos] {
    transition-duration: 0.1s; }
  [data-aos][data-aos][data-aos-delay='100'],
  body[data-aos-delay='100'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='100'].aos-animate,
  body[data-aos-delay='100'] [data-aos].aos-animate {
    transition-delay: 0.1s; }
  [data-aos][data-aos][data-aos-duration='150'],
  body[data-aos-duration='150'] [data-aos] {
    transition-duration: 0.15s; }
  [data-aos][data-aos][data-aos-delay='150'],
  body[data-aos-delay='150'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='150'].aos-animate,
  body[data-aos-delay='150'] [data-aos].aos-animate {
    transition-delay: 0.15s; }
  [data-aos][data-aos][data-aos-duration='200'],
  body[data-aos-duration='200'] [data-aos] {
    transition-duration: 0.2s; }
  [data-aos][data-aos][data-aos-delay='200'],
  body[data-aos-delay='200'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='200'].aos-animate,
  body[data-aos-delay='200'] [data-aos].aos-animate {
    transition-delay: 0.2s; }
  [data-aos][data-aos][data-aos-duration='250'],
  body[data-aos-duration='250'] [data-aos] {
    transition-duration: 0.25s; }
  [data-aos][data-aos][data-aos-delay='250'],
  body[data-aos-delay='250'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='250'].aos-animate,
  body[data-aos-delay='250'] [data-aos].aos-animate {
    transition-delay: 0.25s; }
  [data-aos][data-aos][data-aos-duration='300'],
  body[data-aos-duration='300'] [data-aos] {
    transition-duration: 0.3s; }
  [data-aos][data-aos][data-aos-delay='300'],
  body[data-aos-delay='300'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='300'].aos-animate,
  body[data-aos-delay='300'] [data-aos].aos-animate {
    transition-delay: 0.3s; }
  [data-aos][data-aos][data-aos-duration='350'],
  body[data-aos-duration='350'] [data-aos] {
    transition-duration: 0.35s; }
  [data-aos][data-aos][data-aos-delay='350'],
  body[data-aos-delay='350'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='350'].aos-animate,
  body[data-aos-delay='350'] [data-aos].aos-animate {
    transition-delay: 0.35s; }
  [data-aos][data-aos][data-aos-duration='400'],
  body[data-aos-duration='400'] [data-aos] {
    transition-duration: 0.4s; }
  [data-aos][data-aos][data-aos-delay='400'],
  body[data-aos-delay='400'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='400'].aos-animate,
  body[data-aos-delay='400'] [data-aos].aos-animate {
    transition-delay: 0.4s; }
  [data-aos][data-aos][data-aos-duration='450'],
  body[data-aos-duration='450'] [data-aos] {
    transition-duration: 0.45s; }
  [data-aos][data-aos][data-aos-delay='450'],
  body[data-aos-delay='450'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='450'].aos-animate,
  body[data-aos-delay='450'] [data-aos].aos-animate {
    transition-delay: 0.45s; }
  [data-aos][data-aos][data-aos-duration='500'],
  body[data-aos-duration='500'] [data-aos] {
    transition-duration: 0.5s; }
  [data-aos][data-aos][data-aos-delay='500'],
  body[data-aos-delay='500'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='500'].aos-animate,
  body[data-aos-delay='500'] [data-aos].aos-animate {
    transition-delay: 0.5s; }
  [data-aos][data-aos][data-aos-duration='550'],
  body[data-aos-duration='550'] [data-aos] {
    transition-duration: 0.55s; }
  [data-aos][data-aos][data-aos-delay='550'],
  body[data-aos-delay='550'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='550'].aos-animate,
  body[data-aos-delay='550'] [data-aos].aos-animate {
    transition-delay: 0.55s; }
  [data-aos][data-aos][data-aos-duration='600'],
  body[data-aos-duration='600'] [data-aos] {
    transition-duration: 0.6s; }
  [data-aos][data-aos][data-aos-delay='600'],
  body[data-aos-delay='600'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='600'].aos-animate,
  body[data-aos-delay='600'] [data-aos].aos-animate {
    transition-delay: 0.6s; }
  [data-aos][data-aos][data-aos-duration='650'],
  body[data-aos-duration='650'] [data-aos] {
    transition-duration: 0.65s; }
  [data-aos][data-aos][data-aos-delay='650'],
  body[data-aos-delay='650'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='650'].aos-animate,
  body[data-aos-delay='650'] [data-aos].aos-animate {
    transition-delay: 0.65s; }
  [data-aos][data-aos][data-aos-duration='700'],
  body[data-aos-duration='700'] [data-aos] {
    transition-duration: 0.7s; }
  [data-aos][data-aos][data-aos-delay='700'],
  body[data-aos-delay='700'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='700'].aos-animate,
  body[data-aos-delay='700'] [data-aos].aos-animate {
    transition-delay: 0.7s; }
  [data-aos][data-aos][data-aos-duration='750'],
  body[data-aos-duration='750'] [data-aos] {
    transition-duration: 0.75s; }
  [data-aos][data-aos][data-aos-delay='750'],
  body[data-aos-delay='750'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='750'].aos-animate,
  body[data-aos-delay='750'] [data-aos].aos-animate {
    transition-delay: 0.75s; }
  [data-aos][data-aos][data-aos-duration='800'],
  body[data-aos-duration='800'] [data-aos] {
    transition-duration: 0.8s; }
  [data-aos][data-aos][data-aos-delay='800'],
  body[data-aos-delay='800'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='800'].aos-animate,
  body[data-aos-delay='800'] [data-aos].aos-animate {
    transition-delay: 0.8s; }
  [data-aos][data-aos][data-aos-duration='850'],
  body[data-aos-duration='850'] [data-aos] {
    transition-duration: 0.85s; }
  [data-aos][data-aos][data-aos-delay='850'],
  body[data-aos-delay='850'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='850'].aos-animate,
  body[data-aos-delay='850'] [data-aos].aos-animate {
    transition-delay: 0.85s; }
  [data-aos][data-aos][data-aos-duration='900'],
  body[data-aos-duration='900'] [data-aos] {
    transition-duration: 0.9s; }
  [data-aos][data-aos][data-aos-delay='900'],
  body[data-aos-delay='900'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='900'].aos-animate,
  body[data-aos-delay='900'] [data-aos].aos-animate {
    transition-delay: 0.9s; }
  [data-aos][data-aos][data-aos-duration='950'],
  body[data-aos-duration='950'] [data-aos] {
    transition-duration: 0.95s; }
  [data-aos][data-aos][data-aos-delay='950'],
  body[data-aos-delay='950'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='950'].aos-animate,
  body[data-aos-delay='950'] [data-aos].aos-animate {
    transition-delay: 0.95s; }
  [data-aos][data-aos][data-aos-duration='1000'],
  body[data-aos-duration='1000'] [data-aos] {
    transition-duration: 1s; }
  [data-aos][data-aos][data-aos-delay='1000'],
  body[data-aos-delay='1000'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1000'].aos-animate,
  body[data-aos-delay='1000'] [data-aos].aos-animate {
    transition-delay: 1s; }
  [data-aos][data-aos][data-aos-duration='1050'],
  body[data-aos-duration='1050'] [data-aos] {
    transition-duration: 1.05s; }
  [data-aos][data-aos][data-aos-delay='1050'],
  body[data-aos-delay='1050'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1050'].aos-animate,
  body[data-aos-delay='1050'] [data-aos].aos-animate {
    transition-delay: 1.05s; }
  [data-aos][data-aos][data-aos-duration='1100'],
  body[data-aos-duration='1100'] [data-aos] {
    transition-duration: 1.1s; }
  [data-aos][data-aos][data-aos-delay='1100'],
  body[data-aos-delay='1100'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1100'].aos-animate,
  body[data-aos-delay='1100'] [data-aos].aos-animate {
    transition-delay: 1.1s; }
  [data-aos][data-aos][data-aos-duration='1150'],
  body[data-aos-duration='1150'] [data-aos] {
    transition-duration: 1.15s; }
  [data-aos][data-aos][data-aos-delay='1150'],
  body[data-aos-delay='1150'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1150'].aos-animate,
  body[data-aos-delay='1150'] [data-aos].aos-animate {
    transition-delay: 1.15s; }
  [data-aos][data-aos][data-aos-duration='1200'],
  body[data-aos-duration='1200'] [data-aos] {
    transition-duration: 1.2s; }
  [data-aos][data-aos][data-aos-delay='1200'],
  body[data-aos-delay='1200'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1200'].aos-animate,
  body[data-aos-delay='1200'] [data-aos].aos-animate {
    transition-delay: 1.2s; }
  [data-aos][data-aos][data-aos-duration='1250'],
  body[data-aos-duration='1250'] [data-aos] {
    transition-duration: 1.25s; }
  [data-aos][data-aos][data-aos-delay='1250'],
  body[data-aos-delay='1250'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1250'].aos-animate,
  body[data-aos-delay='1250'] [data-aos].aos-animate {
    transition-delay: 1.25s; }
  [data-aos][data-aos][data-aos-duration='1300'],
  body[data-aos-duration='1300'] [data-aos] {
    transition-duration: 1.3s; }
  [data-aos][data-aos][data-aos-delay='1300'],
  body[data-aos-delay='1300'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1300'].aos-animate,
  body[data-aos-delay='1300'] [data-aos].aos-animate {
    transition-delay: 1.3s; }
  [data-aos][data-aos][data-aos-duration='1350'],
  body[data-aos-duration='1350'] [data-aos] {
    transition-duration: 1.35s; }
  [data-aos][data-aos][data-aos-delay='1350'],
  body[data-aos-delay='1350'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1350'].aos-animate,
  body[data-aos-delay='1350'] [data-aos].aos-animate {
    transition-delay: 1.35s; }
  [data-aos][data-aos][data-aos-duration='1400'],
  body[data-aos-duration='1400'] [data-aos] {
    transition-duration: 1.4s; }
  [data-aos][data-aos][data-aos-delay='1400'],
  body[data-aos-delay='1400'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1400'].aos-animate,
  body[data-aos-delay='1400'] [data-aos].aos-animate {
    transition-delay: 1.4s; }
  [data-aos][data-aos][data-aos-duration='1450'],
  body[data-aos-duration='1450'] [data-aos] {
    transition-duration: 1.45s; }
  [data-aos][data-aos][data-aos-delay='1450'],
  body[data-aos-delay='1450'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1450'].aos-animate,
  body[data-aos-delay='1450'] [data-aos].aos-animate {
    transition-delay: 1.45s; }
  [data-aos][data-aos][data-aos-duration='1500'],
  body[data-aos-duration='1500'] [data-aos] {
    transition-duration: 1.5s; }
  [data-aos][data-aos][data-aos-delay='1500'],
  body[data-aos-delay='1500'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1500'].aos-animate,
  body[data-aos-delay='1500'] [data-aos].aos-animate {
    transition-delay: 1.5s; }
  [data-aos][data-aos][data-aos-duration='1550'],
  body[data-aos-duration='1550'] [data-aos] {
    transition-duration: 1.55s; }
  [data-aos][data-aos][data-aos-delay='1550'],
  body[data-aos-delay='1550'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1550'].aos-animate,
  body[data-aos-delay='1550'] [data-aos].aos-animate {
    transition-delay: 1.55s; }
  [data-aos][data-aos][data-aos-duration='1600'],
  body[data-aos-duration='1600'] [data-aos] {
    transition-duration: 1.6s; }
  [data-aos][data-aos][data-aos-delay='1600'],
  body[data-aos-delay='1600'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1600'].aos-animate,
  body[data-aos-delay='1600'] [data-aos].aos-animate {
    transition-delay: 1.6s; }
  [data-aos][data-aos][data-aos-duration='1650'],
  body[data-aos-duration='1650'] [data-aos] {
    transition-duration: 1.65s; }
  [data-aos][data-aos][data-aos-delay='1650'],
  body[data-aos-delay='1650'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1650'].aos-animate,
  body[data-aos-delay='1650'] [data-aos].aos-animate {
    transition-delay: 1.65s; }
  [data-aos][data-aos][data-aos-duration='1700'],
  body[data-aos-duration='1700'] [data-aos] {
    transition-duration: 1.7s; }
  [data-aos][data-aos][data-aos-delay='1700'],
  body[data-aos-delay='1700'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1700'].aos-animate,
  body[data-aos-delay='1700'] [data-aos].aos-animate {
    transition-delay: 1.7s; }
  [data-aos][data-aos][data-aos-duration='1750'],
  body[data-aos-duration='1750'] [data-aos] {
    transition-duration: 1.75s; }
  [data-aos][data-aos][data-aos-delay='1750'],
  body[data-aos-delay='1750'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1750'].aos-animate,
  body[data-aos-delay='1750'] [data-aos].aos-animate {
    transition-delay: 1.75s; }
  [data-aos][data-aos][data-aos-duration='1800'],
  body[data-aos-duration='1800'] [data-aos] {
    transition-duration: 1.8s; }
  [data-aos][data-aos][data-aos-delay='1800'],
  body[data-aos-delay='1800'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1800'].aos-animate,
  body[data-aos-delay='1800'] [data-aos].aos-animate {
    transition-delay: 1.8s; }
  [data-aos][data-aos][data-aos-duration='1850'],
  body[data-aos-duration='1850'] [data-aos] {
    transition-duration: 1.85s; }
  [data-aos][data-aos][data-aos-delay='1850'],
  body[data-aos-delay='1850'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1850'].aos-animate,
  body[data-aos-delay='1850'] [data-aos].aos-animate {
    transition-delay: 1.85s; }
  [data-aos][data-aos][data-aos-duration='1900'],
  body[data-aos-duration='1900'] [data-aos] {
    transition-duration: 1.9s; }
  [data-aos][data-aos][data-aos-delay='1900'],
  body[data-aos-delay='1900'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1900'].aos-animate,
  body[data-aos-delay='1900'] [data-aos].aos-animate {
    transition-delay: 1.9s; }
  [data-aos][data-aos][data-aos-duration='1950'],
  body[data-aos-duration='1950'] [data-aos] {
    transition-duration: 1.95s; }
  [data-aos][data-aos][data-aos-delay='1950'],
  body[data-aos-delay='1950'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='1950'].aos-animate,
  body[data-aos-delay='1950'] [data-aos].aos-animate {
    transition-delay: 1.95s; }
  [data-aos][data-aos][data-aos-duration='2000'],
  body[data-aos-duration='2000'] [data-aos] {
    transition-duration: 2s; }
  [data-aos][data-aos][data-aos-delay='2000'],
  body[data-aos-delay='2000'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2000'].aos-animate,
  body[data-aos-delay='2000'] [data-aos].aos-animate {
    transition-delay: 2s; }
  [data-aos][data-aos][data-aos-duration='2050'],
  body[data-aos-duration='2050'] [data-aos] {
    transition-duration: 2.05s; }
  [data-aos][data-aos][data-aos-delay='2050'],
  body[data-aos-delay='2050'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2050'].aos-animate,
  body[data-aos-delay='2050'] [data-aos].aos-animate {
    transition-delay: 2.05s; }
  [data-aos][data-aos][data-aos-duration='2100'],
  body[data-aos-duration='2100'] [data-aos] {
    transition-duration: 2.1s; }
  [data-aos][data-aos][data-aos-delay='2100'],
  body[data-aos-delay='2100'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2100'].aos-animate,
  body[data-aos-delay='2100'] [data-aos].aos-animate {
    transition-delay: 2.1s; }
  [data-aos][data-aos][data-aos-duration='2150'],
  body[data-aos-duration='2150'] [data-aos] {
    transition-duration: 2.15s; }
  [data-aos][data-aos][data-aos-delay='2150'],
  body[data-aos-delay='2150'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2150'].aos-animate,
  body[data-aos-delay='2150'] [data-aos].aos-animate {
    transition-delay: 2.15s; }
  [data-aos][data-aos][data-aos-duration='2200'],
  body[data-aos-duration='2200'] [data-aos] {
    transition-duration: 2.2s; }
  [data-aos][data-aos][data-aos-delay='2200'],
  body[data-aos-delay='2200'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2200'].aos-animate,
  body[data-aos-delay='2200'] [data-aos].aos-animate {
    transition-delay: 2.2s; }
  [data-aos][data-aos][data-aos-duration='2250'],
  body[data-aos-duration='2250'] [data-aos] {
    transition-duration: 2.25s; }
  [data-aos][data-aos][data-aos-delay='2250'],
  body[data-aos-delay='2250'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2250'].aos-animate,
  body[data-aos-delay='2250'] [data-aos].aos-animate {
    transition-delay: 2.25s; }
  [data-aos][data-aos][data-aos-duration='2300'],
  body[data-aos-duration='2300'] [data-aos] {
    transition-duration: 2.3s; }
  [data-aos][data-aos][data-aos-delay='2300'],
  body[data-aos-delay='2300'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2300'].aos-animate,
  body[data-aos-delay='2300'] [data-aos].aos-animate {
    transition-delay: 2.3s; }
  [data-aos][data-aos][data-aos-duration='2350'],
  body[data-aos-duration='2350'] [data-aos] {
    transition-duration: 2.35s; }
  [data-aos][data-aos][data-aos-delay='2350'],
  body[data-aos-delay='2350'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2350'].aos-animate,
  body[data-aos-delay='2350'] [data-aos].aos-animate {
    transition-delay: 2.35s; }
  [data-aos][data-aos][data-aos-duration='2400'],
  body[data-aos-duration='2400'] [data-aos] {
    transition-duration: 2.4s; }
  [data-aos][data-aos][data-aos-delay='2400'],
  body[data-aos-delay='2400'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2400'].aos-animate,
  body[data-aos-delay='2400'] [data-aos].aos-animate {
    transition-delay: 2.4s; }
  [data-aos][data-aos][data-aos-duration='2450'],
  body[data-aos-duration='2450'] [data-aos] {
    transition-duration: 2.45s; }
  [data-aos][data-aos][data-aos-delay='2450'],
  body[data-aos-delay='2450'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2450'].aos-animate,
  body[data-aos-delay='2450'] [data-aos].aos-animate {
    transition-delay: 2.45s; }
  [data-aos][data-aos][data-aos-duration='2500'],
  body[data-aos-duration='2500'] [data-aos] {
    transition-duration: 2.5s; }
  [data-aos][data-aos][data-aos-delay='2500'],
  body[data-aos-delay='2500'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2500'].aos-animate,
  body[data-aos-delay='2500'] [data-aos].aos-animate {
    transition-delay: 2.5s; }
  [data-aos][data-aos][data-aos-duration='2550'],
  body[data-aos-duration='2550'] [data-aos] {
    transition-duration: 2.55s; }
  [data-aos][data-aos][data-aos-delay='2550'],
  body[data-aos-delay='2550'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2550'].aos-animate,
  body[data-aos-delay='2550'] [data-aos].aos-animate {
    transition-delay: 2.55s; }
  [data-aos][data-aos][data-aos-duration='2600'],
  body[data-aos-duration='2600'] [data-aos] {
    transition-duration: 2.6s; }
  [data-aos][data-aos][data-aos-delay='2600'],
  body[data-aos-delay='2600'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2600'].aos-animate,
  body[data-aos-delay='2600'] [data-aos].aos-animate {
    transition-delay: 2.6s; }
  [data-aos][data-aos][data-aos-duration='2650'],
  body[data-aos-duration='2650'] [data-aos] {
    transition-duration: 2.65s; }
  [data-aos][data-aos][data-aos-delay='2650'],
  body[data-aos-delay='2650'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2650'].aos-animate,
  body[data-aos-delay='2650'] [data-aos].aos-animate {
    transition-delay: 2.65s; }
  [data-aos][data-aos][data-aos-duration='2700'],
  body[data-aos-duration='2700'] [data-aos] {
    transition-duration: 2.7s; }
  [data-aos][data-aos][data-aos-delay='2700'],
  body[data-aos-delay='2700'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2700'].aos-animate,
  body[data-aos-delay='2700'] [data-aos].aos-animate {
    transition-delay: 2.7s; }
  [data-aos][data-aos][data-aos-duration='2750'],
  body[data-aos-duration='2750'] [data-aos] {
    transition-duration: 2.75s; }
  [data-aos][data-aos][data-aos-delay='2750'],
  body[data-aos-delay='2750'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2750'].aos-animate,
  body[data-aos-delay='2750'] [data-aos].aos-animate {
    transition-delay: 2.75s; }
  [data-aos][data-aos][data-aos-duration='2800'],
  body[data-aos-duration='2800'] [data-aos] {
    transition-duration: 2.8s; }
  [data-aos][data-aos][data-aos-delay='2800'],
  body[data-aos-delay='2800'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2800'].aos-animate,
  body[data-aos-delay='2800'] [data-aos].aos-animate {
    transition-delay: 2.8s; }
  [data-aos][data-aos][data-aos-duration='2850'],
  body[data-aos-duration='2850'] [data-aos] {
    transition-duration: 2.85s; }
  [data-aos][data-aos][data-aos-delay='2850'],
  body[data-aos-delay='2850'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2850'].aos-animate,
  body[data-aos-delay='2850'] [data-aos].aos-animate {
    transition-delay: 2.85s; }
  [data-aos][data-aos][data-aos-duration='2900'],
  body[data-aos-duration='2900'] [data-aos] {
    transition-duration: 2.9s; }
  [data-aos][data-aos][data-aos-delay='2900'],
  body[data-aos-delay='2900'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2900'].aos-animate,
  body[data-aos-delay='2900'] [data-aos].aos-animate {
    transition-delay: 2.9s; }
  [data-aos][data-aos][data-aos-duration='2950'],
  body[data-aos-duration='2950'] [data-aos] {
    transition-duration: 2.95s; }
  [data-aos][data-aos][data-aos-delay='2950'],
  body[data-aos-delay='2950'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='2950'].aos-animate,
  body[data-aos-delay='2950'] [data-aos].aos-animate {
    transition-delay: 2.95s; }
  [data-aos][data-aos][data-aos-duration='3000'],
  body[data-aos-duration='3000'] [data-aos] {
    transition-duration: 3s; }
  [data-aos][data-aos][data-aos-delay='3000'],
  body[data-aos-delay='3000'] [data-aos] {
    transition-delay: 0s; }
  [data-aos][data-aos][data-aos-delay='3000'].aos-animate,
  body[data-aos-delay='3000'] [data-aos].aos-animate {
    transition-delay: 3s; }
  [data-aos] {
    pointer-events: none; }
  [data-aos].aos-animate {
    pointer-events: auto; }
  [data-aos][data-aos][data-aos-easing='linear'],
  body[data-aos-easing='linear'] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75); }
  [data-aos][data-aos][data-aos-easing='ease'],
  body[data-aos-easing='ease'] [data-aos] {
    transition-timing-function: ease; }
  [data-aos][data-aos][data-aos-easing='ease-in'],
  body[data-aos-easing='ease-in'] [data-aos] {
    transition-timing-function: ease-in; }
  [data-aos][data-aos][data-aos-easing='ease-out'],
  body[data-aos-easing='ease-out'] [data-aos] {
    transition-timing-function: ease-out; }
  [data-aos][data-aos][data-aos-easing='ease-in-out'],
  body[data-aos-easing='ease-in-out'] [data-aos] {
    transition-timing-function: ease-in-out; }
  [data-aos][data-aos][data-aos-easing='ease-in-back'],
  body[data-aos-easing='ease-in-back'] [data-aos] {
    transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045); }
  [data-aos][data-aos][data-aos-easing='ease-out-back'],
  body[data-aos-easing='ease-out-back'] [data-aos] {
    transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275); }
  [data-aos][data-aos][data-aos-easing='ease-in-out-back'],
  body[data-aos-easing='ease-in-out-back'] [data-aos] {
    transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  [data-aos][data-aos][data-aos-easing='ease-in-sine'],
  body[data-aos-easing='ease-in-sine'] [data-aos] {
    transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); }
  [data-aos][data-aos][data-aos-easing='ease-out-sine'],
  body[data-aos-easing='ease-out-sine'] [data-aos] {
    transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); }
  [data-aos][data-aos][data-aos-easing='ease-in-out-sine'],
  body[data-aos-easing='ease-in-out-sine'] [data-aos] {
    transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95); }
  [data-aos][data-aos][data-aos-easing='ease-in-quad'],
  body[data-aos-easing='ease-in-quad'] [data-aos] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }
  [data-aos][data-aos][data-aos-easing='ease-out-quad'],
  body[data-aos-easing='ease-out-quad'] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  [data-aos][data-aos][data-aos-easing='ease-in-out-quad'],
  body[data-aos-easing='ease-in-out-quad'] [data-aos] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  [data-aos][data-aos][data-aos-easing='ease-in-cubic'],
  body[data-aos-easing='ease-in-cubic'] [data-aos] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }
  [data-aos][data-aos][data-aos-easing='ease-out-cubic'],
  body[data-aos-easing='ease-out-cubic'] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  [data-aos][data-aos][data-aos-easing='ease-in-out-cubic'],
  body[data-aos-easing='ease-in-out-cubic'] [data-aos] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  [data-aos][data-aos][data-aos-easing='ease-in-quart'],
  body[data-aos-easing='ease-in-quart'] [data-aos] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }
  [data-aos][data-aos][data-aos-easing='ease-out-quart'],
  body[data-aos-easing='ease-out-quart'] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  [data-aos][data-aos][data-aos-easing='ease-in-out-quart'],
  body[data-aos-easing='ease-in-out-quart'] [data-aos] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); } }

@media screen and (min-width: 64em) {
  html:not(.no-js) [data-aos^='fade'][data-aos^='fade'] {
    opacity: 0;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform; }
  html:not(.no-js) [data-aos^='fade'][data-aos^='fade'].aos-animate {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
        transform: none; }
  html:not(.no-js) [data-aos='fade-up'] {
    -webkit-transform: translate3d(0, 100px, 0);
    transform: translate3d(0, 100px, 0); }
  html:not(.no-js) [data-aos='fade-down'] {
    -webkit-transform: translate3d(0, -100px, 0);
    transform: translate3d(0, -100px, 0); }
  html:not(.no-js) [data-aos='fade-right'] {
    -webkit-transform: translate3d(-100px, 0, 0);
    transform: translate3d(-100px, 0, 0); }
  html:not(.no-js) [data-aos='fade-left'] {
    -webkit-transform: translate3d(100px, 0, 0);
    transform: translate3d(100px, 0, 0); }
  html:not(.no-js) [data-aos='fade-up-right'] {
    -webkit-transform: translate3d(-100px, 100px, 0);
    transform: translate3d(-100px, 100px, 0); }
  html:not(.no-js) [data-aos='fade-up-left'] {
    -webkit-transform: translate3d(100px, 100px, 0);
    transform: translate3d(100px, 100px, 0); }
  html:not(.no-js) [data-aos='fade-down-right'] {
    -webkit-transform: translate3d(-100px, -100px, 0);
    transform: translate3d(-100px, -100px, 0); }
  html:not(.no-js) [data-aos='fade-down-left'] {
    -webkit-transform: translate3d(100px, -100px, 0);
    transform: translate3d(100px, -100px, 0); }
  html:not(.no-js) [data-aos^='zoom'][data-aos^='zoom'] {
    opacity: 0;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform; }
  html:not(.no-js) [data-aos^='zoom'][data-aos^='zoom'].aos-animate {
    opacity: 1;
    -webkit-transform: translateZ(0) scale(1);
    transform: translateZ(0) scale(1); }
  html:not(.no-js) [data-aos='zoom-in'] {
    -webkit-transform: scale(0.6);
    -ms-transform: scale(0.6);
        transform: scale(0.6); }
  html:not(.no-js) [data-aos='zoom-in-up'] {
    -webkit-transform: translate3d(0, 100px, 0) scale(0.6);
    transform: translate3d(0, 100px, 0) scale(0.6); }
  html:not(.no-js) [data-aos='zoom-in-down'] {
    -webkit-transform: translate3d(0, -100px, 0) scale(0.6);
    transform: translate3d(0, -100px, 0) scale(0.6); }
  html:not(.no-js) [data-aos='zoom-in-right'] {
    -webkit-transform: translate3d(-100px, 0, 0) scale(0.6);
    transform: translate3d(-100px, 0, 0) scale(0.6); }
  html:not(.no-js) [data-aos='zoom-in-left'] {
    -webkit-transform: translate3d(100px, 0, 0) scale(0.6);
    transform: translate3d(100px, 0, 0) scale(0.6); }
  html:not(.no-js) [data-aos='zoom-out'] {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
        transform: scale(1.2); }
  html:not(.no-js) [data-aos='zoom-out-up'] {
    -webkit-transform: translate3d(0, 100px, 0) scale(1.2);
    transform: translate3d(0, 100px, 0) scale(1.2); }
  html:not(.no-js) [data-aos='zoom-out-down'] {
    -webkit-transform: translate3d(0, -100px, 0) scale(1.2);
    transform: translate3d(0, -100px, 0) scale(1.2); }
  html:not(.no-js) [data-aos='zoom-out-right'] {
    -webkit-transform: translate3d(-100px, 0, 0) scale(1.2);
    transform: translate3d(-100px, 0, 0) scale(1.2); }
  html:not(.no-js) [data-aos='zoom-out-left'] {
    -webkit-transform: translate3d(100px, 0, 0) scale(1.2);
    transform: translate3d(100px, 0, 0) scale(1.2); }
  html:not(.no-js) [data-aos^='slide'][data-aos^='slide'] {
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    visibility: hidden; }
  html:not(.no-js) [data-aos^='slide'][data-aos^='slide'].aos-animate {
    visibility: visible;
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  html:not(.no-js) [data-aos='slide-up'] {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  html:not(.no-js) [data-aos='slide-down'] {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  html:not(.no-js) [data-aos='slide-right'] {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  html:not(.no-js) [data-aos='slide-left'] {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  html:not(.no-js) [data-aos^='flip'][data-aos^='flip'] {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform; }
  html:not(.no-js) [data-aos='flip-left'] {
    -webkit-transform: perspective(2500px) rotateY(-100deg);
    transform: perspective(2500px) rotateY(-100deg); }
  html:not(.no-js) [data-aos='flip-left'].aos-animate {
    -webkit-transform: perspective(2500px) rotateY(0);
    transform: perspective(2500px) rotateY(0); }
  html:not(.no-js) [data-aos='flip-right'] {
    -webkit-transform: perspective(2500px) rotateY(100deg);
    transform: perspective(2500px) rotateY(100deg); }
  html:not(.no-js) [data-aos='flip-right'].aos-animate {
    -webkit-transform: perspective(2500px) rotateY(0);
    transform: perspective(2500px) rotateY(0); }
  html:not(.no-js) [data-aos='flip-up'] {
    -webkit-transform: perspective(2500px) rotateX(-100deg);
    transform: perspective(2500px) rotateX(-100deg); }
  html:not(.no-js) [data-aos='flip-up'].aos-animate {
    -webkit-transform: perspective(2500px) rotateX(0);
    transform: perspective(2500px) rotateX(0); }
  html:not(.no-js) [data-aos='flip-down'] {
    -webkit-transform: perspective(2500px) rotateX(100deg);
    transform: perspective(2500px) rotateX(100deg); }
  html:not(.no-js) [data-aos='flip-down'].aos-animate {
    -webkit-transform: perspective(2500px) rotateX(0);
    transform: perspective(2500px) rotateX(0); } }

/*
 * Container style
 */
.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-overflow-style: none;
  touch-action: auto;
  -ms-touch-action: auto; }

/*
 * Scrollbar rail styles
 */
.ps__rail-x {
  display: none;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
  -webkit-transition: background-color 0.2s linear, opacity 0.2s linear;
  height: 15px;
  /* there must be 'bottom' or 'top' for ps__rail-x */
  bottom: 0px;
  /* please don't change 'position' */
  position: absolute; }

.ps__rail-y {
  display: none;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
  -webkit-transition: background-color 0.2s linear, opacity 0.2s linear;
  width: 15px;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  /* please don't change 'position' */
  position: absolute; }

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent; }

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6; }

.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
  background-color: #eee;
  opacity: 0.9; }

/*
 * Scrollbar thumb styles
 */
.ps__thumb-x {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color 0.2s linear, height 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s linear, height 0.2s ease-in-out;
  height: 6px;
  /* there must be 'bottom' for ps__thumb-x */
  bottom: 2px;
  /* please don't change 'position' */
  position: absolute; }

.ps__thumb-y {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color 0.2s linear, width 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s linear, width 0.2s ease-in-out;
  width: 6px;
  /* there must be 'right' for ps__thumb-y */
  right: 2px;
  /* please don't change 'position' */
  position: absolute; }

.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x,
.ps__rail-x.ps--clicking .ps__thumb-x {
  background-color: #999;
  height: 11px; }

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #999;
  width: 11px; }

/* MS supports */
@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important; } }

button {
  cursor: pointer; }

.has-button {
  margin: 3rem 0 1rem; }

.site-button {
  padding: 2px 25px 0;
  height: 50px;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: 1.18px;
  font-size: 65%;
  background: #1486c8;
  overflow: hidden;
  position: relative;
  transition: all 0.2s linear; }
  @media print, screen and (min-width: 64em) {
    .site-button {
      font-size: 75%; } }
  .site-button:hover {
    background: #1276b1; }
    .site-button:hover::before {
      -webkit-transform: translate(100%, 0);
          -ms-transform: translate(100%, 0);
              transform: translate(100%, 0); }
  .site-button::before {
    content: ' ';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background: rgba(255, 255, 255, 0.15);
    transition: all 0.3s cubic-bezier(0.51, 0.31, 0.26, 1);
    -webkit-transform: skewX(-30deg) translate(-130%, 0);
        -ms-transform: skewX(-30deg) translate(-130%, 0);
            transform: skewX(-30deg) translate(-130%, 0); }
  .site-button svg {
    width: 20px;
    height: 20px;
    margin: 0 0 0 10px; }
    .site-button svg path {
      transition: all 0.2s linear; }
  .site-button span {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    z-index: 10; }
  .site-button.orange {
    background: #fc6605; }
    .site-button.orange:hover {
      background: #e55c03; }
  .site-button.has-plus svg {
    position: relative;
    top: -1px;
    margin: 0 10px 0 0; }
  .site-button.has-arrow svg {
    position: relative;
    top: -1px;
    margin: 0 0 0 10px;
    pointer-events: none; }
    .site-button.has-arrow svg path {
      fill: #fff; }
  @media print, screen and (min-width: 64em) {
    .site-button.readmore {
      padding-left: 15px;
      padding-right: 15px; }
      .site-button.readmore svg {
        margin: 0 !important; }
      .site-button.readmore b {
        display: inline-block;
        overflow: hidden;
        max-width: 0;
        transition: all 0.3s cubic-bezier(0.51, 0.31, 0.26, 1);
        overflow: hidden;
        white-space: nowrap; }
      .site-button.readmore:hover b {
        max-width: 150px;
        padding-right: 10px; } }
  .site-button.naked {
    background: transparent;
    color: #fdb515;
    padding: 0; }
    .site-button.naked svg path {
      fill: #fdb515; }
    .site-button.naked:hover {
      color: #fff; }
      .site-button.naked:hover svg path {
        fill: #fff; }
  .site-button.bordered {
    border: 2px solid #003262;
    color: #003262;
    background: transparent; }
  .site-button.bordered-orange {
    border: 2px solid #fc6605;
    color: #fc6605;
    background: transparent; }
    .site-button.bordered-orange.icon-only {
      padding-left: 15px;
      padding-right: 15px; }
      .site-button.bordered-orange.icon-only svg {
        margin: 0; }
        .site-button.bordered-orange.icon-only svg path {
          fill: #fc6605; }
  .site-button.bordered-yellow {
    border: 2px solid #fdb515;
    color: #fdb515;
    background: transparent; }
    .site-button.bordered-yellow.icon-only {
      padding-left: 15px;
      padding-right: 15px; }
      .site-button.bordered-yellow.icon-only svg {
        margin: 0; }
        .site-button.bordered-yellow.icon-only svg path {
          fill: #fdb515; }
  .site-button.bordered-grey {
    border: 2px solid #9d9892;
    color: #9d9892;
    background: transparent; }
    .site-button.bordered-grey.icon-only {
      padding-left: 15px;
      padding-right: 15px; }
      .site-button.bordered-grey.icon-only svg {
        margin: 0; }
        .site-button.bordered-grey.icon-only svg path {
          fill: #9d9892; }
  .site-button.bordered-blue {
    border: 2px solid #1486c8;
    color: #1486c8;
    background: transparent; }
    .site-button.bordered-blue.icon-only {
      padding-left: 15px;
      padding-right: 15px; }
      .site-button.bordered-blue.icon-only svg {
        margin: 0; }
        .site-button.bordered-blue.icon-only svg path {
          fill: #1486c8; }

.vertarrow {
  width: 19px;
  height: 27px;
  display: block;
  margin: 2rem auto;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 18.9 47"><path d="M9.7,0l0,45.8h-1L8.7,0L9.7,0z" fill="#1486c8"/><path d="M18.2,37.3l-9,9 M9.2,46.3l-8.5-8.5" fill="none" stroke="#1486c8" stroke-linecap="square"/></svg>');
  background-repeat: no-repeat;
  background-position: center; }
  @media print, screen and (min-width: 64em) {
    .vertarrow {
      height: 47px; } }
  .vertarrow.absolute {
    position: absolute;
    top: 0;
    left: 50%;
    margin: 0;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0); }

/*----------  Card Holder  ----------*/
.has-cards {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding-left: 3%;
  padding-right: 3%; }

/*----------  Card Globals  ----------*/
.card {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-flex: 0 1 100%;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .card {
      -webkit-flex: 0 1 48%;
          -ms-flex: 0 1 48%;
              flex: 0 1 48%; }
      .card:nth-of-type(odd) {
        margin-right: 1%;
        margin-left: auto; }
      .card:nth-of-type(even) {
        margin-left: 1%;
        margin-right: auto; } }
  @media print, screen and (min-width: 64em) {
    .card {
      -webkit-flex: 0 1 32%;
          -ms-flex: 0 1 32%;
              flex: 0 1 32%; }
      .card:nth-of-type(3n-1):not(.card-in-news) {
        margin-left: 2%;
        margin-right: 2%; } }
  .card:hover .image::before {
    opacity: 0.5; }
  .card:hover .image::after {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }
  @media print, screen and (min-width: 64em) {
    .card:hover .readmore b {
      max-width: 150px;
      padding-right: 10px; } }
  .card .catline {
    border-bottom: 1px solid #c2c2c2;
    margin-bottom: 1.5rem;
    font-family: 'ArnoPro'; }
  .card .label {
    text-transform: uppercase;
    margin: 1rem 0; }
  .card .date {
    font-weight: 700;
    letter-spacing: 1px;
    color: #a7a7a7;
    text-transform: uppercase;
    font-size: 50%;
    margin-bottom: 1rem; }
  .card h3, .card #page-intro h2, #page-intro .card h2,
  .card #page-intro h3, #page-intro .card h3,
  .card #page-intro h4, #page-intro .card h4, .card .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .card h2 {
    margin-bottom: 1rem; }
    .card h3 a, .card #page-intro h2 a, #page-intro .card h2 a, .card #page-intro h3 a, #page-intro .card h3 a, .card #page-intro h4 a, #page-intro .card h4 a, .card .build-content_and_background_image#build-1 h2 a, .build-content_and_background_image#build-1 .card h2 a {
      color: #003262; }
  @media screen and (max-width: 63.9375em) {
    .card .readmore {
      padding: 8px 10px 5px;
      height: auto; } }
  @media print, screen and (min-width: 64em) {
    .card .readmore {
      float: right;
      margin-right: 2rem; } }
  .card .image + .readmore {
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%); }
  .card hr {
    margin: 1rem auto 1rem 0;
    width: 30px; }
  .card .card-meta {
    font-size: 70%;
    text-transform: uppercase;
    color: #b9c1c3;
    font-weight: 400;
    margin-top: auto;
    position: relative;
    padding-top: .85em; }
    .card .card-meta span:first-of-type {
      color: #1486c8; }
    .card .card-meta::before {
      content: "";
      height: 1px;
      width: 30px;
      position: absolute;
      top: 0;
      left: 0;
      background-color: #b9c1c3; }
  .card .image {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 200px;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    position: relative;
    overflow: hidden; }
    @media print, screen and (min-width: 40em) {
      .card .image {
        height: 300px; } }
    .card .image a,
    .card .image .no-image {
      width: 100%;
      height: 100%; }
    .card .image img {
      width: 100%;
      object-fit: cover;
      height: 100%; }
    .card .image::before {
      content: ' ';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #fff;
      transition: opacity 0.2s ease;
      pointer-events: none;
      opacity: 0; }
    .card .image::after {
      content: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill-rule="" clip-rule="evenodd"><path fill="white" d="M21.883 12l-7.527 6.235.644.765 9-7.521-9-7.479-.645.764 7.529 6.236h-21.884v1h21.883z"></path></svg>');
      padding: .5em;
      position: absolute;
      bottom: 0;
      right: 0;
      width: 50px;
      height: 50px;
      background-color: #003262;
      background-size: 20px 20px;
      background-position: center center;
      background-repeat: no-repeat;
      transition: -webkit-transform 0.2s ease;
      transition: transform 0.2s ease;
      transition: transform 0.2s ease, -webkit-transform 0.2s ease;
      -webkit-transform: translate(100%, 0);
          -ms-transform: translate(100%, 0);
              transform: translate(100%, 0);
      pointer-events: none; }
  .card .card-blue-labels {
    line-height: 1;
    margin: 1rem 0; }
    .card .card-blue-labels .label {
      padding: 9px 10px 6px;
      line-height: 1;
      margin: 0 5px 5px 0; }
  .card.card-news-home {
    margin-bottom: 2rem; }
    .card.card-news-home .image {
      margin-bottom: 1rem; }
      .card.card-news-home .image img {
        height: 200px;
        object-fit: cover; }
    .card.card-news-home .site-button {
      margin-right: 0; }
  .card.card-tweet {
    margin-bottom: 1rem; }
  .card.card-misc {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%;
    margin-bottom: 2rem !important; }
    @media print, screen and (min-width: 40em) {
      .card.card-misc {
        -webkit-flex: 0 1 30%;
            -ms-flex: 0 1 30%;
                flex: 0 1 30%;
        width: 30%; } }
  .card.contains-no-image h3, .card.contains-no-image #page-intro h2, #page-intro .card.contains-no-image h2,
  .card.contains-no-image #page-intro h3, #page-intro .card.contains-no-image h3,
  .card.contains-no-image #page-intro h4, #page-intro .card.contains-no-image h4, .card.contains-no-image .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .card.contains-no-image h2 {
    font-size: 168%; }
    @media print, screen and (min-width: 40em) {
      .card.contains-no-image h3, .card.contains-no-image #page-intro h2, #page-intro .card.contains-no-image h2,
      .card.contains-no-image #page-intro h3, #page-intro .card.contains-no-image h3,
      .card.contains-no-image #page-intro h4, #page-intro .card.contains-no-image h4, .card.contains-no-image .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .card.contains-no-image h2 {
        font-size: 182%; } }
    @media print, screen and (min-width: 64em) {
      .card.contains-no-image h3, .card.contains-no-image #page-intro h2, #page-intro .card.contains-no-image h2,
      .card.contains-no-image #page-intro h3, #page-intro .card.contains-no-image h3,
      .card.contains-no-image #page-intro h4, #page-intro .card.contains-no-image h4, .card.contains-no-image .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .card.contains-no-image h2 {
        font-size: 224%; } }
  .card.taxonomy-card {
    text-align: center;
    background: #1486c8 !important; }
    .card.taxonomy-card .inside {
      min-height: 250px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .card.taxonomy-card .inside h3, .card.taxonomy-card .inside #page-intro h2, #page-intro .card.taxonomy-card .inside h2,
      .card.taxonomy-card .inside #page-intro h3, #page-intro .card.taxonomy-card .inside h3,
      .card.taxonomy-card .inside #page-intro h4, #page-intro .card.taxonomy-card .inside h4, .card.taxonomy-card .inside .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .card.taxonomy-card .inside h2 {
        color: #fff; }
      .card.taxonomy-card .inside h4 {
        margin: 0;
        color: rgba(255, 255, 255, 0.7);
        text-transform: uppercase;
        font-size: 70%; }
      @media print, screen and (min-width: 40em) {
        .card.taxonomy-card .inside {
          min-height: 300px; } }
      @media print, screen and (min-width: 64em) {
        .card.taxonomy-card .inside {
          min-height: 350px; } }
  .card.event-card {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 1rem; }
    @media print, screen and (min-width: 40em) {
      .card.event-card {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin-bottom: 2rem; } }
    @media print, screen and (min-width: 64em) {
      .card.event-card {
        margin-bottom: 4rem; } }
    .card.event-card .image {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%;
      height: 150px;
      margin-bottom: 1rem;
      overflow: hidden; }
      .card.event-card .image img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
      @media print, screen and (min-width: 40em) {
        .card.event-card .image {
          -webkit-flex: 0 1 32%;
              -ms-flex: 0 1 32%;
                  flex: 0 1 32%;
          height: 250px;
          margin-bottom: 2rem; } }
    .card.event-card .event-info {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%; }
      @media print, screen and (min-width: 40em) {
        .card.event-card .event-info {
          -webkit-flex: 0 1 32%;
              -ms-flex: 0 1 32%;
                  flex: 0 1 32%;
          width: 32%; } }
      @media print, screen and (min-width: 40em) {
        .card.event-card .event-info .label {
          margin-top: 0; } }
      .card.event-card .event-info .small-label-wrapper {
        margin-bottom: 1rem; }
    .card.event-card .event-writeup {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%;
      font-size: 80%; }
      @media print, screen and (min-width: 40em) {
        .card.event-card .event-writeup {
          -webkit-flex: 0 1 32%;
              -ms-flex: 0 1 32%;
                  flex: 0 1 32%;
          width: 32%;
          font-size: 75%; } }
  .card.career-card {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 1rem !important;
    padding-bottom: 1rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    @media print, screen and (min-width: 40em) {
      .card.career-card {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin-bottom: 2rem !important;
        padding-bottom: 2rem; } }
    @media print, screen and (min-width: 64em) {
      .card.career-card {
        margin-bottom: 3rem !important; } }
    .card.career-card .event-info {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%; }
      @media print, screen and (min-width: 40em) {
        .card.career-card .event-info {
          -webkit-flex: 0 1 37%;
              -ms-flex: 0 1 37%;
                  flex: 0 1 37%;
          width: 37%; } }
      @media print, screen and (min-width: 40em) {
        .card.career-card .event-info .label {
          margin-top: 0; } }
      .card.career-card .event-info .small-label-wrapper {
        margin-bottom: 1rem; }
    .card.career-card .event-writeup {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%;
      font-size: 80%; }
      @media print, screen and (min-width: 40em) {
        .card.career-card .event-writeup {
          -webkit-flex: 0 1 60%;
              -ms-flex: 0 1 60%;
                  flex: 0 1 60%;
          width: 60%;
          font-size: 75%; } }
      .card.career-card .event-writeup p {
        margin-top: 0; }
  .card.initiative-card {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media print, screen and (min-width: 40em) {
      .card.initiative-card {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; } }
    .card.initiative-card .image {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%;
      margin-bottom: 1rem; }
      @media print, screen and (min-width: 40em) {
        .card.initiative-card .image {
          margin-bottom: 0;
          -webkit-flex: 0 1 40%;
              -ms-flex: 0 1 40%;
                  flex: 0 1 40%;
          width: 40%; } }
    .card.initiative-card .initiative-info {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%; }
      @media print, screen and (min-width: 40em) {
        .card.initiative-card .initiative-info {
          -webkit-flex: 0 1 60%;
              -ms-flex: 0 1 60%;
                  flex: 0 1 60%;
          width: 60%;
          padding-left: 5%; } }
    .card.initiative-card h3 a, .card.initiative-card #page-intro h2 a, #page-intro .card.initiative-card h2 a, .card.initiative-card #page-intro h3 a, #page-intro .card.initiative-card h3 a, .card.initiative-card #page-intro h4 a, #page-intro .card.initiative-card h4 a, .card.initiative-card .build-content_and_background_image#build-1 h2 a, .build-content_and_background_image#build-1 .card.initiative-card h2 a {
      color: #fc6605; }
    .card.initiative-card p {
      font-size: 80%; }
  .card.card-in-tax {
    background: #fff;
    padding: 1rem; }
    @media print, screen and (min-width: 40em) {
      .card.card-in-tax {
        padding: 2rem;
        -webkit-flex: 0 1 47%;
            -ms-flex: 0 1 47%;
                flex: 0 1 47%;
        width: 47%; } }
    @media print, screen and (min-width: 64em) {
      .card.card-in-tax {
        padding: 2rem;
        -webkit-flex: 0 1 30%;
            -ms-flex: 0 1 30%;
                flex: 0 1 30%;
        width: 30%; } }
    .card.card-in-tax .label {
      margin: 0 0 1rem;
      white-space: normal; }
      @media print, screen and (min-width: 40em) {
        .card.card-in-tax .label {
          margin: 0 0 2rem; } }
    .card.card-in-tax h3, .card.card-in-tax #page-intro h2, #page-intro .card.card-in-tax h2,
    .card.card-in-tax #page-intro h3, #page-intro .card.card-in-tax h3,
    .card.card-in-tax #page-intro h4, #page-intro .card.card-in-tax h4, .card.card-in-tax .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .card.card-in-tax h2 {
      font-size: 160%; }
  .card.card-in-news {
    background: #fff;
    margin-bottom: 1rem; }
    @media print, screen and (min-width: 40em) {
      .card.card-in-news {
        margin-bottom: 3rem; } }
    @media print, screen and (min-width: 64em) {
      .card.card-in-news {
        margin-bottom: 4rem; } }
    .card.card-in-news .inside {
      padding: 1rem; }
      @media print, screen and (min-width: 40em) {
        .card.card-in-news .inside {
          padding: 2rem; } }
    .card.card-in-news .label {
      margin: 0 0 1rem; }
      @media print, screen and (min-width: 40em) {
        .card.card-in-news .label {
          margin: 0 0 2rem; } }
    .card.card-in-news h3, .card.card-in-news #page-intro h2, #page-intro .card.card-in-news h2,
    .card.card-in-news #page-intro h3, #page-intro .card.card-in-news h3,
    .card.card-in-news #page-intro h4, #page-intro .card.card-in-news h4, .card.card-in-news .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .card.card-in-news h2 {
      font-size: 160%; }
    .card.card-in-news .post-date {
      font-weight: 500;
      font-size: 70%;
      color: #b9c1c3;
      text-transform: uppercase; }

#medium #medium-loading {
  font-size: 80%;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.4); }

/*----------  Small Cards  ----------*/
.small-cards .card {
  display: block;
  width: 100%;
  -webkit-flex: 0 1 100%;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
  float: left;
  margin-bottom: 20px;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding-bottom: 20px; }
  .small-cards .card .image {
    width: 70px;
    height: 70px;
    float: left;
    margin-bottom: 20px; }
    @media print, screen and (min-width: 40em) {
      .small-cards .card .image {
        width: 150px;
        height: 150px;
        margin-bottom: 0; } }
  .small-cards .card .card-blue-labels {
    margin-top: 0;
    padding-left: 90px;
    margin-bottom: 5px; }
    @media print, screen and (min-width: 40em) {
      .small-cards .card .card-blue-labels {
        padding-left: 170px;
        margin-bottom: 1rem; } }
  .small-cards .card hr {
    display: none; }
  .small-cards .card h3, .small-cards .card #page-intro h2, #page-intro .small-cards .card h2,
  .small-cards .card #page-intro h3, #page-intro .small-cards .card h3,
  .small-cards .card #page-intro h4, #page-intro .small-cards .card h4, .small-cards .card .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .small-cards .card h2 {
    font-size: 100%;
    padding-left: 90px; }
    @media print, screen and (min-width: 40em) {
      .small-cards .card h3, .small-cards .card #page-intro h2, #page-intro .small-cards .card h2,
      .small-cards .card #page-intro h3, #page-intro .small-cards .card h3,
      .small-cards .card #page-intro h4, #page-intro .small-cards .card h4, .small-cards .card .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .small-cards .card h2 {
        font-size: 120%;
        padding-left: 170px; } }
  .small-cards .card .card-meta {
    margin-top: 0;
    padding-left: 90px; }
    @media print, screen and (min-width: 40em) {
      .small-cards .card .card-meta {
        padding-left: 170px; } }

.flip-card {
  color: #fff;
  -webkit-flex: 0 1 48%;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
  -webkit-perspective: 1000px;
          perspective: 1000px;
  margin-bottom: 1rem;
  margin-left: 1%;
  margin-right: 1%; }
  @media print, screen and (min-width: 64em) {
    .flip-card {
      -webkit-flex: 0 1 30%;
          -ms-flex: 0 1 30%;
              flex: 0 1 30%;
      margin-bottom: 2rem;
      margin-left: 1.5%;
      margin-right: 1.5%; } }
  .flip-card:hover .inside,
  .flip-card:focus .inside {
    -webkit-transform: rotateY(180deg);
            transform: rotateY(180deg); }
  .flip-card .inside {
    transition: 0.6s;
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d;
    position: relative;
    height: 250px; }
    @media print, screen and (min-width: 64em) {
      .flip-card .inside {
        height: 385px; } }
  .flip-card .front {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: #1486c8;
    padding: 2rem 1rem 1rem;
    height: 250px;
    width: 100%;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
    color: #fff; }
    .flip-card .front::before {
      content: ' ';
      position: absolute;
      border: 1px solid white;
      width: calc(100% - 20px);
      height: calc(100% - 20px);
      top: 10px;
      left: 10px;
      transition: -webkit-transform 0.2s linear;
      transition: transform 0.2s linear;
      transition: transform 0.2s linear, -webkit-transform 0.2s linear; }
    @media print, screen and (min-width: 64em) {
      .flip-card .front {
        padding: 3rem 2rem 2rem;
        height: 385px; }
        .flip-card .front::before {
          width: calc(100% - 40px);
          height: calc(100% - 40px);
          top: 20px;
          left: 20px; } }
  .flip-card .back {
    height: 250px;
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: rotateY(180deg);
            transform: rotateY(180deg);
    padding: 2rem 1rem 1rem;
    color: #fff; }
    .flip-card .back::before {
      content: ' ';
      position: absolute;
      background: rgba(0, 0, 0, 0.4);
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 0; }
    @media print, screen and (min-width: 64em) {
      .flip-card .back {
        padding: 3rem 2rem 2rem;
        height: 385px; } }
  .flip-card .icon {
    width: 50%;
    display: block;
    margin: 0 auto 1rem; }
  .flip-card h4 {
    margin: 0;
    position: relative;
    z-index: 10;
    font-size: 100%; }
    @media print, screen and (min-width: 40em) {
      .flip-card h4 {
        margin: 0 0 1rem;
        font-size: 160%; } }
  .flip-card p {
    position: relative;
    z-index: 10;
    line-height: 1.3; }
    @media screen and (max-width: 74.9375em) {
      .flip-card p {
        font-size: 70%; } }

/*----------  Navy Blue  ----------*/
.blue-card {
  background: #003262;
  color: #fff;
  -webkit-flex: 0 1 48%;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
  margin-bottom: 1rem;
  padding: 2rem 1rem 1rem;
  position: relative;
  transition: background 0.2s linear;
  height: 330px; }
  .blue-card::before {
    content: ' ';
    position: absolute;
    border: 1px solid white;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    top: 10px;
    left: 10px;
    transition: -webkit-transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear; }
  @media print, screen and (min-width: 64em) {
    .blue-card {
      -webkit-flex: 0 1 30%;
          -ms-flex: 0 1 30%;
              flex: 0 1 30%;
      padding: 3rem 2rem 2rem;
      height: 385px;
      margin-left: 1.5%;
      margin-right: 1.5%; }
      .blue-card::before {
        width: calc(100% - 40px);
        height: calc(100% - 40px);
        top: 20px;
        left: 20px; } }
  .blue-card:hover, .blue-card:active, .blue-card:focus {
    background: #002549; }
    .blue-card:hover::before, .blue-card:active::before, .blue-card:focus::before {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05); }
  .blue-card .inside {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%; }
  .blue-card .icon {
    width: 50%;
    display: block;
    margin: 0 auto 1rem; }
  .blue-card h4 {
    margin: 0 0 1rem;
    font-size: 225%; }
    @media print, screen and (min-width: 64em) {
      .blue-card h4 {
        margin-left: 15%;
        margin-right: 15%; } }
  .blue-card a {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: auto; }

.card-tweet #tweet {
  font-size: 15px;
  margin: 1rem 0;
  font-family: Helvetica, Roboto, "Segoe UI", Calibri, sans-serif;
  padding: 5px; }

.card-tweet strong {
  font-weight: 700; }

.card-tweet #tweet:hover {
  background-color: rgba(160, 200, 220, 0.12);
  cursor: pointer; }

.card-tweet #tweetContainer {
  padding-left: 40px; }

.card-tweet .Icon {
  background-image: url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2072%2072%22%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M0%200h72v72H0z%22%2F%3E%3Cpath%20class%3D%22icon%22%20fill%3D%22%23e1e8ed%22%20d%3D%22M68.812%2015.14c-2.348%201.04-4.87%201.744-7.52%202.06%202.704-1.62%204.78-4.186%205.757-7.243-2.53%201.5-5.33%202.592-8.314%203.176C56.35%2010.59%2052.948%209%2049.182%209c-7.23%200-13.092%205.86-13.092%2013.093%200%201.026.118%202.02.338%202.98C25.543%2024.527%2015.9%2019.318%209.44%2011.396c-1.125%201.936-1.77%204.184-1.77%206.58%200%204.543%202.312%208.552%205.824%2010.9-2.146-.07-4.165-.658-5.93-1.64-.002.056-.002.11-.002.163%200%206.345%204.513%2011.638%2010.504%2012.84-1.1.298-2.256.457-3.45.457-.845%200-1.666-.078-2.464-.23%201.667%205.2%206.5%208.985%2012.23%209.09-4.482%203.51-10.13%205.605-16.26%205.605-1.055%200-2.096-.06-3.122-.184%205.794%203.717%2012.676%205.882%2020.067%205.882%2024.083%200%2037.25-19.95%2037.25-37.25%200-.565-.013-1.133-.038-1.693%202.558-1.847%204.778-4.15%206.532-6.774z%22%2F%3E%3C%2Fsvg%3E);
  width: 1.1em;
  display: inline-block;
  height: 1.1em;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: text-bottom; }

.card-tweet .tweetLogo {
  float: left;
  width: 40px;
  padding: 5px; }

.card-tweet .tweet-footer {
  padding-top: 10px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 75%;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .card-tweet .tweet-footer a {
    font-weight: 300; }
  .card-tweet .tweet-footer .tweet-meta {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .card-tweet .tweet-footer .tweet-meta a:hover {
      opacity: .5; }
    .card-tweet .tweet-footer .tweet-meta > div {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      color: #fc6605;
      font-weight: 600;
      margin-right: 10px; }
      .card-tweet .tweet-footer .tweet-meta > div svg {
        width: 20px;
        height: 15px;
        margin-right: 2px; }
        .card-tweet .tweet-footer .tweet-meta > div svg path {
          fill: #fc6605; }

.label {
  font-weight: 600;
  font-size: 70%;
  padding: 0.58824rem 0.5rem 0.5rem; }
  @media print, screen and (min-width: 40em) {
    .label {
      padding: 1rem 1.5rem 0.75rem; } }
  .label.smaller-label {
    padding: 9px 10px 6px;
    line-height: 1;
    margin: 0 5px 5px 0; }

.no-image {
  background: rgba(0, 0, 0, 0.05);
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 20px; }
  .no-image svg {
    max-width: 200px;
    max-height: 200px;
    width: 60%;
    height: 60%; }

footer#footer {
  padding: 50px 5% 0;
  color: #fff;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #00182f; }
  @media print, screen and (min-width: 64em) {
    footer#footer {
      padding: 100px 10% 50px;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; } }
  footer#footer h5 {
    margin-bottom: 1rem; }
    @media print, screen and (min-width: 40em) {
      footer#footer h5 {
        margin-bottom: 2rem; } }
    @media print, screen and (min-width: 64em) {
      footer#footer h5 {
        margin-bottom: 4rem; } }
  footer#footer .block {
    -webkit-flex: 0 1 30%;
        -ms-flex: 0 1 30%;
            flex: 0 1 30%;
    text-align: center;
    padding-bottom: 50px; }
  footer#footer .block-newsletter form {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  footer#footer .block-newsletter input {
    border: none;
    background: #fff;
    padding: 0 15px;
    width: 100%;
    font-size: 80%;
    font-weight: 300; }
  footer#footer .block-newsletter button {
    -webkit-flex: 0 1 60px;
        -ms-flex: 0 1 60px;
            flex: 0 1 60px;
    height: 50px;
    border: 1px solid #fff; }
    footer#footer .block-newsletter button svg {
      position: relative;
      top: 1px;
      margin: 0; }
      footer#footer .block-newsletter button svg path {
        fill: #fff; }
  footer#footer .block-news a.site-button {
    border-color: #fff;
    color: #fff; }

#corporate {
  padding: 50px 5%;
  color: #fff;
  background-color: #003262; }
  @media print, screen and (min-width: 40em) {
    #corporate {
      padding: 100px 10% 50px; } }
  #corporate .corp-row {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    #corporate .corp-row:first-of-type {
      border-bottom: 1px solid rgba(255, 255, 255, 0.2);
      padding-bottom: 2rem; }
    @media print, screen and (min-width: 40em) {
      #corporate .corp-row {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; } }
    #corporate .corp-row .logos {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-around;
          -ms-flex-pack: distribute;
              justify-content: space-around;
      margin-bottom: 2rem; }
      @media print, screen and (min-width: 40em) {
        #corporate .corp-row .logos {
          margin-bottom: 1rem; } }
      @media print, screen and (min-width: 64em) {
        #corporate .corp-row .logos {
          margin-bottom: 0; } }
      #corporate .corp-row .logos img {
        margin: 0 10px; }
      #corporate .corp-row .logos #cega-logo {
        width: 165px; }
        @media print, screen and (min-width: 40em) {
          #corporate .corp-row .logos #cega-logo {
            margin-right: 20px;
            margin-left: 0; } }
      #corporate .corp-row .logos #berkeley-logo {
        width: 97px; }
    #corporate .corp-row ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin: 0;
      padding: 0;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      @media print, screen and (min-width: 40em) {
        #corporate .corp-row ul {
          -webkit-flex-direction: row;
              -ms-flex-direction: row;
                  flex-direction: row;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-justify-content: flex-end;
              -ms-flex-pack: end;
                  justify-content: flex-end; } }
      #corporate .corp-row ul li {
        list-style: none;
        line-height: 3;
        font-size: 90%;
        text-transform: uppercase;
        letter-spacing: 2.05px;
        font-weight: 400; }
        @media print, screen and (min-width: 40em) {
          #corporate .corp-row ul li {
            margin-left: 40px;
            line-height: 1; } }
        #corporate .corp-row ul li a {
          color: #fdb515; }
    #corporate .corp-row.smallcaps, #corporate #whoweare #map h6.corp-row, #whoweare #map #corporate h6.corp-row {
      font-family: "Gotham", "Helvetica Neue", sans-serif;
      font-size: 90%;
      font-weight: 400;
      text-transform: none;
      letter-spacing: 0.4px;
      color: #fff;
      font-size: 80%;
      padding-top: 2rem; }
      #corporate .corp-row.smallcaps a, #corporate #whoweare #map h6.corp-row a, #whoweare #map #corporate h6.corp-row a {
        color: #fff; }

ul.socials {
  margin: 0;
  padding: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  ul.socials li {
    list-style: none;
    margin-left: 20px;
    margin-right: 20px; }
    ul.socials li svg {
      width: 40px; }
      ul.socials li svg path {
        fill: #fdb515;
        transition: fill 0.15s ease; }

#menu {
  position: fixed;
  z-index: 100;
  width: 100%;
  height: 100%;
  z-index: 200;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease-in-out; }
  .menu-in #menu {
    opacity: 1;
    pointer-events: all; }
  #menu::before {
    content: ' ';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    transition: opacity 0.5s ease-in-out;
    opacity: 0; }
    .menu-in #menu::before {
      opacity: 1; }
  #menu .inside {
    width: 100%;
    max-width: 470px;
    height: calc(100vh - 54.75px);
    background: #fdb515;
    position: absolute;
    top: 54.75px;
    right: 0;
    z-index: 100;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 2rem;
    padding-top: calc(2rem + 73px * 0.75);
    transition: -webkit-transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
    -webkit-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
            transform: translate(100%, 0); }
    @media print, screen and (min-width: 64em) {
      #menu .inside {
        padding: 4rem;
        padding-top: calc(2rem + 73px);
        height: calc(100vh - 73px);
        top: 73px; } }
    .menu-in #menu .inside {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0);
      transition-delay: 0.3s; }
  #menu #nav {
    margin: 0 0 2rem;
    padding: 2rem 0;
    max-width: 250px;
    border-top: 1px solid #003262;
    border-bottom: 1px solid #003262; }
    #menu #nav li {
      list-style: none;
      font-size: 90%;
      text-transform: uppercase;
      letter-spacing: 2.05px;
      font-weight: 400; }
      #menu #nav li a {
        color: #003262;
        display: block;
        padding: 10px 0; }
  #menu .bottomlinks #secondarynav {
    margin: 0;
    padding: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    #menu .bottomlinks #secondarynav li {
      list-style: none;
      margin-right: 20px;
      text-transform: uppercase;
      letter-spacing: 2.05px;
      font-weight: 400;
      font-size: 70%; }
      #menu .bottomlinks #secondarynav li a {
        color: #003262; }
  #menu .bottomlinks .socials {
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-top: 2rem; }
    #menu .bottomlinks .socials li {
      margin: 0 20px 0 0;
      width: auto; }
    #menu .bottomlinks .socials svg {
      width: auto; }
    #menu .bottomlinks .socials svg path {
      fill: #003262; }

#page-intro .inside {
  max-width: 750px;
  text-align: center; }

#page-intro.impact-intro .inside {
  max-width: 1100px; }

#page-intro h2,
#page-intro h2,
#page-intro h3,
#page-intro h4,
#page-intro .build-content_and_background_image#build-1 h2,
.build-content_and_background_image#build-1 #page-intro h2,
#page-intro h4 {
  margin-bottom: 2rem; }

#page-intro p,
#page-intro li {
  font-size: 80%; }
  @media print, screen and (min-width: 64em) {
    #page-intro p,
    #page-intro li {
      padding-left: 10%;
      padding-right: 10%; } }

#page-intro ul,
#page-intro ol {
  margin: 2rem 0;
  padding: 0; }

#page-intro ul li {
  list-style: none;
  position: relative;
  padding-bottom: 1rem;
  margin-bottom: 1rem; }
  #page-intro ul li::after {
    content: ' ';
    width: 30px;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -15px;
    background: #ccc; }
  #page-intro ul li::before {
    content: ' ';
    width: 5px;
    height: 5px;
    border-radius: 5px;
    position: absolute;
    bottom: -2px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    background: #ccc; }
  #page-intro ul li:last-of-type {
    padding-bottom: 0;
    margin-bottom: 0; }
    #page-intro ul li:last-of-type::after, #page-intro ul li:last-of-type::before {
      display: none; }

#page-intro [data-svg] {
  width: 108px;
  height: 106px;
  display: block;
  margin: 0 auto 1rem;
  border-radius: 108px;
  background: #d3e8e9; }
  #page-intro [data-svg] ellipse {
    display: none; }
  @media print, screen and (min-width: 40em) {
    #page-intro [data-svg] {
      margin: 0 auto 2rem; } }
  @media print, screen and (min-width: 64em) {
    #page-intro [data-svg] {
      margin: 0 auto 3rem; } }

@media print, screen and (min-width: 40em) {
  #page-anchor-nav + div,
  #category-nav + div {
    margin-top: 70px; } }

#page-anchor-nav,
#category-nav {
  will-change: transform;
  position: relative;
  background: #fff;
  border-bottom: 1px solid #003262;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1rem 3%; }
  @media print, screen and (min-width: 40em) {
    #page-anchor-nav,
    #category-nav {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      padding: 0;
      position: absolute;
      z-index: 100;
      width: 100%;
      top: 280px; }
      #page-anchor-nav.stuck,
      #category-nav.stuck {
        position: fixed;
        top: 73px; } }
  #page-anchor-nav button,
  #page-anchor-nav a,
  #category-nav button,
  #category-nav a {
    display: block;
    padding: 1rem;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    font-size: 70%;
    color: #003262;
    position: relative;
    font-weight: 500; }
    #page-anchor-nav button.active,
    #page-anchor-nav a.active,
    #category-nav button.active,
    #category-nav a.active {
      color: #fdb515; }
    @media print, screen and (min-width: 40em) {
      #page-anchor-nav button,
      #page-anchor-nav a,
      #category-nav button,
      #category-nav a {
        padding: 1.5rem 0;
        margin-left: 1rem;
        margin-right: 1rem;
        border-top: 8px solid transparent; }
        #page-anchor-nav button::after,
        #page-anchor-nav a::after,
        #category-nav button::after,
        #category-nav a::after {
          content: ' ';
          position: absolute;
          bottom: 0;
          left: 50%;
          width: 1px;
          height: 8px;
          background: transparent; }
        #page-anchor-nav button.active,
        #page-anchor-nav a.active,
        #category-nav button.active,
        #category-nav a.active {
          border-color: #fdb515;
          color: #003262; }
          #page-anchor-nav button.active::after,
          #page-anchor-nav a.active::after,
          #category-nav button.active::after,
          #category-nav a.active::after {
            background: #003262; } }

.build-content_and_background_image {
  background-size: 100% auto !important;
  background-position: center bottom !important; }
  @media print, screen and (min-width: 40em) {
    .build-content_and_background_image {
      background-position: center top !important; } }
  @media print, screen and (min-width: 64em) {
    .build-content_and_background_image {
      background-position: center 25% !important; } }
  .build-content_and_background_image .inside {
    max-width: 650px;
    text-align: center;
    padding-bottom: 4rem; }
    .build-content_and_background_image .inside img {
      margin-top: 2rem; }
      @media print, screen and (min-width: 64em) {
        .build-content_and_background_image .inside img {
          margin-top: 3rem; } }
  .build-content_and_background_image p {
    font-size: 90%; }
  .page-id-31 .build-content_and_background_image#build-5 {
    background-size: cover !important; }
    @media print, screen and (min-width: 64em) {
      .page-id-31 .build-content_and_background_image#build-5 {
        background-position: center bottom !important;
        position: relative; }
        .page-id-31 .build-content_and_background_image#build-5::before {
          content: ' ';
          position: absolute;
          width: 100%;
          height: calc(100% + 50px);
          border: 1px solid #fdb515;
          top: -20%;
          left: 50%;
          max-width: 1150px;
          -webkit-transform: translate(-50%, 0);
              -ms-transform: translate(-50%, 0);
                  transform: translate(-50%, 0); } }
  .page-id-31 .build-content_and_background_image#build-6 {
    background-size: cover !important; }
    @media print, screen and (min-width: 64em) {
      .page-id-31 .build-content_and_background_image#build-6 {
        background-position: center bottom !important; } }
  .build-content_and_background_image.col-2 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    text-align: center; }
    @media print, screen and (min-width: 64em) {
      .build-content_and_background_image.col-2 {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        text-align: left;
        padding-left: 10%;
        padding-right: 10%;
        padding-top: 150px;
        padding-bottom: 150px; } }
    .build-content_and_background_image.col-2 .column-1,
    .build-content_and_background_image.col-2 .column-2 {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%; }
      @media print, screen and (min-width: 64em) {
        .build-content_and_background_image.col-2 .column-1,
        .build-content_and_background_image.col-2 .column-2 {
          -webkit-flex: 0 1 45%;
              -ms-flex: 0 1 45%;
                  flex: 0 1 45%;
          width: 45%; } }
    @media screen and (max-width: 63.9375em) {
      .build-content_and_background_image.col-2 .column-2 {
        margin-top: 2rem; } }

blockquote {
  margin: 0;
  padding: 0;
  border: none;
  color: #003262; }
  blockquote p,
  blockquote h4 {
    max-width: 500px;
    color: #003262;
    font-family: 'Arno Pro'; }
  blockquote h4 {
    font-size: 200%; }
  blockquote::before {
    content: ' ';
    display: block;
    margin: 0 auto 2rem;
    width: 37.5px;
    height: 25px;
    background: url('data:image/svg+xml;utf8,<svg viewBox="0 0 75 50" xmlns="http://www.w3.org/2000/svg"><path d="M240.806363,3407.54709 C240.806363,3411.28402 239.407232,3414.46038 236.608929,3417.07623 C233.810625,3419.69209 230.445148,3421 226.512397,3421 C220.764531,3421 216.075552,3419.01945 212.44532,3415.0583 C208.815089,3411.09714 207,3406.05235 207,3399.92377 C207,3388.86243 211.386464,3380.94023 220.159524,3376.15695 C226.512429,3372.71897 231.579552,3371 235.361043,3371 C237.024899,3371 237.856815,3371.5979 237.856815,3372.79372 C237.856815,3373.84007 236.94927,3374.58744 235.134154,3375.03587 C222.730863,3378.32438 216.52931,3384.60235 216.52931,3393.86996 C216.52931,3397.75637 217.588112,3401.11957 219.705747,3403.95964 C220.008266,3398.8774 223.184671,3396.33632 229.235058,3396.33632 C232.56277,3396.33632 235.323217,3397.42002 237.516482,3399.58744 C239.709747,3401.75487 240.806363,3404.40806 240.806363,3407.54709 Z M282,3392.07623 C282,3402.9881 277.613536,3410.91029 268.840476,3415.84305 C262.79009,3419.28103 257.722968,3421 253.638957,3421 C251.975101,3421 251.143185,3420.4021 251.143185,3419.20628 C251.143185,3418.15993 252.05073,3417.41256 253.865846,3416.96413 C260.82379,3415.02092 265.664026,3412.70405 268.386699,3410.01345 C271.109373,3407.32286 272.47069,3403.4365 272.47069,3398.35426 C272.47069,3394.31837 271.487517,3390.88043 269.521141,3388.04036 C269.521141,3393.1226 266.269107,3395.66368 259.764942,3395.66368 C256.43723,3395.66368 253.676783,3394.57998 251.483518,3392.41256 C249.290253,3390.24513 248.193637,3387.59194 248.193637,3384.45291 C248.193637,3380.71598 249.592768,3377.53962 252.391071,3374.92377 C255.189375,3372.30791 258.63048,3371 262.714491,3371 C268.311098,3371 272.924448,3372.98055 276.55468,3376.9417 C280.184911,3380.90286 282,3385.94765 282,3392.07623 Z" transform="translate(-207.000000, -3371.000000)" fill="#003262" fill-rule="evenodd"/></svg>') 0 0 no-repeat; }
    @media print, screen and (min-width: 64em) {
      blockquote::before {
        margin: 0 0 4rem;
        width: 75px;
        height: 50px; } }

.build-logo_showcase {
  text-align: center; }
  .build-logo_showcase.blue {
    background: #1486c8; }
  .build-logo_showcase.navy {
    background: #003262; }
  .build-logo_showcase.yellow {
    background: #fdb515; }
    .build-logo_showcase.yellow h2 {
      color: #003262; }
  .build-logo_showcase.orange {
    background: #fc6605; }
    .build-logo_showcase.orange h2 {
      color: #003262; }
  @media print, screen and (min-width: 64em) {
    .build-logo_showcase {
      padding-top: 200px;
      padding-bottom: 200px; } }
  .build-logo_showcase h2 {
    color: #fff;
    max-width: 550px;
    margin-left: auto;
    margin-right: auto; }
  .build-logo_showcase .partner-logos {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 2rem; }
    @media print, screen and (min-width: 40em) {
      .build-logo_showcase .partner-logos {
        -webkit-justify-content: space-around;
            -ms-flex-pack: distribute;
                justify-content: space-around;
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; } }
    .build-logo_showcase .partner-logos img {
      max-width: 150px;
      max-height: 82px;
      margin-bottom: 2rem; }
      @media print, screen and (min-width: 64em) {
        .build-logo_showcase .partner-logos img {
          margin-bottom: 0; } }
  .build-logo_showcase .partner-logos {
    margin-bottom: 1rem; }
    @media print, screen and (min-width: 40em) {
      .build-logo_showcase .partner-logos {
        margin-bottom: 3rem; } }
    @media print, screen and (min-width: 64em) {
      .build-logo_showcase .partner-logos {
        margin-bottom: 4rem; } }

.build-fixed_width_slider {
  overflow: visible;
  position: relative; }
  .build-fixed_width_slider::before {
    content: ' ';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 80%;
    background: #d4eef5 url("../images/approach-repeat.jpg") repeat;
    background-size: 150px 150px;
    pointer-events: none;
    z-index: 0; }
  .page-id-140 .build-fixed_width_slider {
    background: #fff url("../images/engage-field.png") repeat;
    background-size: cover;
    background-position: center top; }
  .build-fixed_width_slider + .build-banner_section {
    padding-top: 50px; }
    @media print, screen and (min-width: 40em) {
      .build-fixed_width_slider + .build-banner_section {
        padding-top: 100px; } }
  .build-fixed_width_slider.no-controls .slide-wrapper {
    padding-top: 2rem !important; }
    @media print, screen and (min-width: 40em) {
      .build-fixed_width_slider.no-controls .slide-wrapper {
        padding-top: 3rem !important; } }
    @media print, screen and (min-width: 64em) {
      .build-fixed_width_slider.no-controls .slide-wrapper {
        padding-top: 4rem !important; } }
  .build-fixed_width_slider h2 {
    max-width: 950px;
    margin: 0 auto 2rem 0;
    text-align: center;
    position: relative;
    z-index: 10; }
    @media print, screen and (min-width: 40em) {
      .build-fixed_width_slider h2 {
        margin: 0 auto 4rem 0;
        text-align: left; } }
  .build-fixed_width_slider.center_heading h2 {
    text-align: center;
    margin-left: auto;
    margin-right: auto; }
  .build-fixed_width_slider .inside {
    max-width: 755px;
    position: relative;
    z-index: 10; }
    .build-fixed_width_slider .inside img {
      width: 100%; }
    .build-fixed_width_slider .inside .slide-wrapper {
      background: #f9f7f7;
      padding: 0 2rem 2rem; }
      @media print, screen and (min-width: 40em) {
        .build-fixed_width_slider .inside .slide-wrapper {
          padding: 0 3rem 3rem; } }
      @media print, screen and (min-width: 64em) {
        .build-fixed_width_slider .inside .slide-wrapper {
          padding: 0 4rem 4rem; } }
  .build-fixed_width_slider #fixed-slider-controls {
    margin: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 0 2rem; }
    @media print, screen and (min-width: 40em) {
      .build-fixed_width_slider #fixed-slider-controls {
        padding: 0 0 2rem;
        margin: 0 -1rem; } }
    .build-fixed_width_slider #fixed-slider-controls li {
      list-style: none;
      width: 25%;
      -webkit-flex: 0 1 25%;
          -ms-flex: 0 1 25%;
              flex: 0 1 25%;
      font-size: 90%;
      letter-spacing: 0.25px;
      border-top: 5px solid transparent;
      padding-top: 2rem; }
      @media print, screen and (min-width: 40em) {
        .build-fixed_width_slider #fixed-slider-controls li {
          padding-top: 3rem;
          padding-left: 1rem;
          padding-right: 1rem; } }
      @media print, screen and (min-width: 64em) {
        .build-fixed_width_slider #fixed-slider-controls li {
          padding-top: 4rem; } }
      .build-fixed_width_slider #fixed-slider-controls li.active {
        border-color: #fdb515; }
        .build-fixed_width_slider #fixed-slider-controls li.active [data-svg] {
          opacity: 1; }
          .build-fixed_width_slider #fixed-slider-controls li.active [data-svg] path {
            stroke: #fdb515;
            fill: #fdb515; }
        .build-fixed_width_slider #fixed-slider-controls li.active span {
          color: #1486c8; }
      .build-fixed_width_slider #fixed-slider-controls li button {
        display: block;
        width: 100%; }
        .build-fixed_width_slider #fixed-slider-controls li button.has-small-heading .slide-control-heading {
          display: block;
          margin-top: 1rem;
          font-weight: 400;
          font-size: 70%;
          text-transform: uppercase; }
          @media screen and (max-width: 63.9375em) {
            .build-fixed_width_slider #fixed-slider-controls li button.has-small-heading .slide-control-heading {
              display: none; } }
        .build-fixed_width_slider #fixed-slider-controls li button img {
          height: 60px;
          object-fit: cover; }
          @media print, screen and (min-width: 40em) {
            .build-fixed_width_slider #fixed-slider-controls li button img {
              height: 120px; } }
      .build-fixed_width_slider #fixed-slider-controls li span {
        text-align: left;
        display: block;
        font-weight: 600;
        color: #b9c1c3;
        margin: 0 0 0.33333rem; }
        @media print, screen and (min-width: 40em) {
          .build-fixed_width_slider #fixed-slider-controls li span {
            margin: 0 0 1rem; } }
      .build-fixed_width_slider #fixed-slider-controls li [data-svg] {
        opacity: 0.2; }
        .build-fixed_width_slider #fixed-slider-controls li [data-svg] svg {
          display: block;
          margin: 0;
          max-width: 45px;
          max-height: 45px;
          width: 80%;
          height: 100%; }
          @media print, screen and (min-width: 40em) {
            .build-fixed_width_slider #fixed-slider-controls li [data-svg] svg {
              max-width: 65px;
              max-height: 65px; } }
  .build-fixed_width_slider #fixed-slider-arrows {
    padding-top: 1rem;
    /*
    button {
      width: 55px;
      height: 55px;
      margin: 0 -1px 0 0;
      border-width: 1px;
      padding: 0;

      svg {
        width: 25px;
        height: 25px;
        position: relative;
        top: 1px;
        left: -5px;

        path {
          fill: map-get($foundation-palette, blue);
        }
      }

      &.slick-prev {
        svg {
          transform: scaleX(-1);
        }
      }
    } */ }
    .build-fixed_width_slider #fixed-slider-arrows button {
      border-width: 1px; }
  .build-fixed_width_slider .approach-slide h3, .build-fixed_width_slider .approach-slide #page-intro h2, #page-intro .build-fixed_width_slider .approach-slide h2,
  .build-fixed_width_slider .approach-slide #page-intro h3, #page-intro .build-fixed_width_slider .approach-slide h3,
  .build-fixed_width_slider .approach-slide #page-intro h4, #page-intro .build-fixed_width_slider .approach-slide h4, .build-fixed_width_slider .approach-slide .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .build-fixed_width_slider .approach-slide h2 {
    margin: 0; }
  .build-fixed_width_slider .approach-slide p {
    font-size: 90%; }

.build-banner_section {
  padding: 0; }
  .build-banner_section .background {
    padding: 50px 8%;
    position: relative;
    overflow: hidden;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .build-banner_section .background {
        padding: 100px 5%;
        text-align: left; } }
    @media print, screen and (min-width: 64em) {
      .build-banner_section .background {
        padding: 150px 10%; } }
  .build-banner_section.align-left .inside {
    max-width: 700px;
    margin: 0 auto 0 0; }
  .build-banner_section.align-right .inside {
    max-width: 700px;
    margin: 0 0 0 auto; }
  .build-banner_section.align-right .watermark {
    right: auto;
    left: 0; }
  .build-banner_section.inset-borders .background::before {
    content: ' ';
    position: absolute;
    border: 1px solid #fc6605;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    top: 10px;
    left: 10px;
    transition: -webkit-transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear; }
  @media print, screen and (min-width: 64em) {
    .build-banner_section.inset-borders .background::before {
      width: calc(100% - 40px);
      height: calc(100% - 40px);
      top: 20px;
      left: 20px; } }
  .build-banner_section .watermark {
    position: absolute;
    width: 35%;
    height: 80%;
    bottom: -15%;
    right: 0;
    pointer-events: none;
    display: none; }
    @media print, screen and (min-width: 64em) {
      .build-banner_section .watermark {
        display: block; } }
  .build-banner_section h4 {
    color: #fdb515;
    margin: 0 0 1rem;
    font-size: 200%;
    line-height: 1.2; }
    @media print, screen and (min-width: 40em) {
      .build-banner_section h4 {
        font-size: 250%;
        margin: 0 0 2rem; } }
    @media print, screen and (min-width: 64em) {
      .build-banner_section h4 {
        font-size: 330%;
        margin: 0 0 3rem; } }
  .build-banner_section p {
    color: #fff;
    margin: 0;
    font-weight: 600; }

.build-image_and_content.flush-image {
  padding-left: 0;
  padding-right: 0; }
  .build-image_and_content.flush-image h2 {
    padding-left: 3%;
    padding-right: 3%; }
  @media print, screen and (min-width: 64em) {
    .build-image_and_content.flush-image.align-right .content {
      padding-left: 10% !important; } }
  @media print, screen and (min-width: 64em) {
    .build-image_and_content.flush-image.align-left .content {
      padding-right: 10% !important; } }

.build-image_and_content h2 {
  text-align: center;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto; }

@media print, screen and (min-width: 64em) {
  .build-image_and_content.align-right .content {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .build-image_and_content.align-right .image {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; } }

.build-image_and_content.align-right .content {
  padding: 0 5%; }
  @media print, screen and (min-width: 64em) {
    .build-image_and_content.align-right .content {
      padding: 0 0 0 5%; } }

@media print, screen and (min-width: 64em) {
  .build-image_and_content.align-left .content {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .build-image_and_content.align-left .image {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; } }

.build-image_and_content.align-left .content {
  padding: 0 5%; }
  @media print, screen and (min-width: 64em) {
    .build-image_and_content.align-left .content {
      padding: 0 5% 0 0; } }

.build-image_and_content .blocks {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media print, screen and (min-width: 64em) {
    .build-image_and_content .blocks {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; } }
  .build-image_and_content .blocks .image,
  .build-image_and_content .blocks .content {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%;
    text-align: center; }
    @media print, screen and (min-width: 64em) {
      .build-image_and_content .blocks .image,
      .build-image_and_content .blocks .content {
        -webkit-flex: 0 1 45%;
            -ms-flex: 0 1 45%;
                flex: 0 1 45%;
        width: 45%;
        text-align: left; } }
    .build-image_and_content .blocks .image h2,
    .build-image_and_content .blocks .content h2 {
      text-align: center;
      padding: 0; }
      @media print, screen and (min-width: 64em) {
        .build-image_and_content .blocks .image h2,
        .build-image_and_content .blocks .content h2 {
          text-align: left; } }
  .build-image_and_content .blocks p {
    font-size: 90%; }

.build-4_column_slider {
  padding: 0; }
  .build-4_column_slider h2 {
    text-align: center; }
  @media print, screen and (min-width: 40em) {
    .build-4_column_slider {
      padding-left: 3%;
      padding-right: 3%; } }
  @media print, screen and (min-width: 64em) {
    .build-4_column_slider {
      padding-left: 5%;
      padding-right: 5%; } }
  .build-4_column_slider .inside {
    max-width: none;
    background: #d4eef5;
    position: relative;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media print, screen and (min-width: 64em) {
      .build-4_column_slider .inside {
        max-width: 1050px; } }
  .build-4_column_slider .four-column-slider-controls,
  .build-4_column_slider .event-four-column-slider-controls {
    padding-bottom: 2rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .build-4_column_slider .four-column-slider-controls .slick-arrow,
    .build-4_column_slider .event-four-column-slider-controls .slick-arrow {
      margin-left: -1px;
      margin-right: -1px;
      background: #fff; }
    @media print, screen and (min-width: 40em) {
      .build-4_column_slider .four-column-slider-controls,
      .build-4_column_slider .event-four-column-slider-controls {
        position: absolute;
        width: 100%;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        top: 50%; }
        .build-4_column_slider .four-column-slider-controls .slick-next,
        .build-4_column_slider .event-four-column-slider-controls .slick-next {
          margin-right: -25px; }
        .build-4_column_slider .four-column-slider-controls .slick-prev,
        .build-4_column_slider .event-four-column-slider-controls .slick-prev {
          margin-left: -25px; } }
  .build-4_column_slider .four-column-slider {
    width: 90%;
    margin-left: 5%; }
    .build-4_column_slider .four-column-slider .four-col-slide {
      line-height: 1.2; }
      .build-4_column_slider .four-column-slider .four-col-slide img {
        display: block;
        width: 100%;
        margin: 0 0 1rem; }
      .build-4_column_slider .four-column-slider .four-col-slide .image {
        position: relative;
        height: 0;
        margin-bottom: 1rem;
        padding-bottom: 100%;
        overflow: hidden; }
        .build-4_column_slider .four-column-slider .four-col-slide .image iframe,
        .build-4_column_slider .four-column-slider .four-col-slide .image object,
        .build-4_column_slider .four-column-slider .four-col-slide .image embed,
        .build-4_column_slider .four-column-slider .four-col-slide .image video {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%; }
      .build-4_column_slider .four-column-slider .four-col-slide h5 {
        font-size: 65%;
        text-transform: uppercase;
        letter-spacing: 1.18px;
        margin: 0 0 5px;
        padding: 0; }
      .build-4_column_slider .four-column-slider .four-col-slide a {
        font-size: 65%;
        padding-top: 0 !important;
        padding-bottom: 0 !important; }
      .build-4_column_slider .four-column-slider .four-col-slide span {
        font-size: 70%; }
      @media print, screen and (min-width: 40em) {
        .build-4_column_slider .four-column-slider .four-col-slide {
          padding-left: 5%;
          padding-right: 5%; } }

.build-plain_content {
  font-size: 80%;
  padding-top: 50px; }
  @media print, screen and (min-width: 40em) {
    .build-plain_content {
      padding-top: 0px; } }
  @media print, screen and (min-width: 64em) {
    .build-plain_content {
      padding-top: 0px; } }
  .build-plain_content .inside {
    max-width: 950px;
    padding-left: 3%;
    padding-right: 3%; }
    .build-plain_content .inside h2,
    .build-plain_content .inside h3,
    .build-plain_content .inside #page-intro h2,
    #page-intro .build-plain_content .inside h2,
    .build-plain_content .inside #page-intro h3,
    #page-intro .build-plain_content .inside h3,
    .build-plain_content .inside #page-intro h4,
    #page-intro .build-plain_content .inside h4,
    .build-plain_content .inside .build-content_and_background_image#build-1 h2,
    .build-content_and_background_image#build-1 .build-plain_content .inside h2,
    .build-plain_content .inside h4 {
      margin-bottom: 2rem; }
    .build-plain_content .inside h1 {
      font-size: 350%; }
    .build-plain_content .inside h2 {
      font-size: 300%; }
    
    .build-plain_content .inside h3,
    .build-plain_content .inside #page-intro h2,
    #page-intro .build-plain_content .inside h2,
    .build-plain_content .inside #page-intro h3,
    #page-intro .build-plain_content .inside h3,
    .build-plain_content .inside #page-intro h4,
    #page-intro .build-plain_content .inside h4,
    .build-plain_content .inside .build-content_and_background_image#build-1 h2,
    .build-content_and_background_image#build-1 .build-plain_content .inside h2 {
      font-size: 250%; }
    .build-plain_content .inside h4 {
      font-size: 200%; }
    .build-plain_content .inside h5 {
      font-size: 150%; }
    .build-plain_content .inside h6 {
      font-size: 100%; }
    .build-plain_content .inside p + h2,
    .build-plain_content .inside p + h3,
    .build-plain_content .inside #page-intro p + h2,
    #page-intro .build-plain_content .inside p + h2,
    .build-plain_content .inside #page-intro p + h3,
    #page-intro .build-plain_content .inside p + h3,
    .build-plain_content .inside #page-intro p + h4,
    #page-intro .build-plain_content .inside p + h4,
    .build-plain_content .inside .build-content_and_background_image#build-1 p + h2,
    .build-content_and_background_image#build-1 .build-plain_content .inside p + h2,
    .build-plain_content .inside p + h4,
    .build-plain_content .inside p + h5,
    .build-plain_content .inside p + h6 {
      margin-top: 2rem; }
    .build-plain_content .inside ul,
    .build-plain_content .inside ol {
      margin: 2rem 0 2rem 2rem;
      padding: 0; }

#sharing-wrapper {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 50px 3% 30px; }
  @media print, screen and (min-width: 64em) {
    #sharing-wrapper {
      padding-bottom: 80px; } }
  #sharing-wrapper span {
    color: #fdb515;
    margin-right: 10px;
    font-weight: 600;
    letter-spacing: 0.32px;
    text-transform: uppercase;
    font-size: 70%; }
  #sharing-wrapper a {
    margin: 0 10px; }
  #sharing-wrapper + #event-partners,
  #sharing-wrapper + #event-speakers {
    margin-top: 0; }

.meta-item {
  margin-bottom: 2rem; }
  .meta-item h5 {
    font-size: 90%;
    text-transform: uppercase;
    letter-spacing: 2.05px;
    font-weight: 400;
    margin: 0 0 1rem;
    letter-spacing: 0.38px;
    font-weight: 600;
    color: #003262;
    padding-bottom: 1rem;
    border-bottom: 3px solid #003262; }
  .meta-item p,
  .meta-item li {
    font-size: 85%;
    list-style: none;
    margin-bottom: 1rem; }
  .meta-item a {
    color: #1486c8; }
    .meta-item a:hover {
      text-decoration: underline; }
  .meta-item ul {
    margin: 1rem 0 0;
    padding: 0; }
  .meta-item.free_text p,
  .meta-item.free_text li {
    margin-bottom: 0; }

#pagination {
  position: relative;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.5em;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  #pagination a,
  #pagination span {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 80%;
    padding-top: 1px;
    height: 3em;
    min-width: 3em;
    line-height: 1;
    background-color: #fff;
    color: #1486c8;
    padding: 0 .7em;
    white-space: nowrap; }
    #pagination a:hover,
    #pagination span:hover {
      color: #fff;
      background-color: #1172aa; }
    #pagination a.current,
    #pagination span.current {
      background-color: #1486c8;
      color: #fff; }
    #pagination a.dots,
    #pagination span.dots {
      pointer-events: none; }
  #pagination ul {
    margin: 0;
    padding: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    #pagination ul li {
      list-style: none;
      margin: 0 5px; }

#launchpad {
  background: #d3e8e9;
  padding: 50px 3%; }
  #launchpad .resources-launchpad {
    margin-top: 4rem; }
    @media print, screen and (min-width: 40em) {
      #launchpad .resources-launchpad {
        margin-top: 8rem; } }
  @media print, screen and (min-width: 64em) {
    #launchpad {
      padding: 120px 5%; }
      #launchpad .blue-card {
        margin-bottom: 0; } }
  #launchpad .blue-card {
    background: #1486c8;
    padding: 0; }
    #launchpad .blue-card h4 {
      font-size: 180%; }
    #launchpad .blue-card::before, #launchpad .blue-card::after {
      display: none; }
    #launchpad .blue-card.center {
      text-align: center; }
      #launchpad .blue-card.center p {
        text-transform: uppercase;
        letter-spacing: 0.38px;
        color: #fff;
        font-size: 70%;
        font-weight: 600;
        max-width: 220px;
        margin: 0 auto; }
      #launchpad .blue-card.center a {
        color: #fff; }

#whoweare {
  background: url("../images/bluenoise.jpg") repeat;
  padding-bottom: 0; }
  #whoweare .vertarrow {
    top: 2rem; }
  @media print, screen and (min-width: 64em) {
    #whoweare {
      position: relative; }
      #whoweare::before {
        content: ' ';
        position: absolute;
        width: 100%;
        height: calc(100% - 130px);
        border: 1px solid #fdb515;
        top: 50px;
        left: 50%;
        max-width: 1150px;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0); } }
  #whoweare #map {
    background-size: auto 100% !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    text-align: center;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media print, screen and (min-width: 40em) {
      #whoweare #map {
        padding-left: 5%;
        padding-right: 5%;
        padding-bottom: 100px; } }
    @media print, screen and (min-width: 64em) {
      #whoweare #map {
        padding-left: 15%;
        padding-right: 15%; } }
    #whoweare #map p {
      margin: 0 0 2rem; }
      @media print, screen and (min-width: 40em) {
        #whoweare #map p {
          padding-left: 5%;
          padding-right: 5%;
          margin: 0 0 3rem; } }
      @media print, screen and (min-width: 64em) {
        #whoweare #map p {
          padding-left: 10%;
          padding-right: 10%;
          margin: 0 0 4rem; } }
    #whoweare #map h6 {
      margin-bottom: 1rem; }

#updates {
  background: url("../images/bluenoise.jpg") repeat;
  padding-bottom: 50px; }
  @media print, screen and (min-width: 64em) {
    #updates {
      background: url("../images/paddy.jpg") no-repeat;
      background-size: cover;
      background-position: center 0;
      padding-bottom: 100px; } }
  #updates .inside {
    background: #fff;
    padding: 1rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    @media print, screen and (min-width: 40em) {
      #updates .inside {
        padding: 2rem 2rem 1rem; } }
    @media print, screen and (min-width: 64em) {
      #updates .inside {
        padding: 3rem 3rem 1rem; } }
  #updates .card .image {
    height: 250px; }
    #updates .card .image img {
      height: 250px; }
  #updates .spotlight .image {
    margin: 0 auto 47px;
    background: transparent url(../images/map.png) no-repeat center top;
    background-size: cover;
    border: 1px solid #c2c2c2; }
  #updates .spotlight .spotlightContent {
    margin: 0px auto 15px;
    height: 138px; }
  #updates .spotlight .spotlightBioLink {
    width: 240px;
    margin: auto; }

#our-sectors {
  text-align: center; }
  #our-sectors .intro {
    max-width: 800px;
    margin-bottom: 2rem; }
    @media print, screen and (min-width: 64em) {
      #our-sectors .intro {
        margin-bottom: 4rem; } }

.the-sectors {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 2rem; }
  @media print, screen and (min-width: 64em) {
    .the-sectors {
      padding-bottom: 4rem; } }

#people-filter {
  padding: 0 !important; }

#people-page {
  background: #f1efef;
  padding: 1rem 3%; }
  @media print, screen and (min-width: 40em) {
    #people-page {
      padding: 80px 5%; } }
  @media print, screen and (min-width: 64em) {
    #people-page {
      padding: 120px 10%; } }

#people-page.nofilters {
  background: #f1efef;
  padding: 1rem 3%; }
  @media print, screen and (min-width: 40em) {
    #people-page.nofilters {
      padding: 0px 5%; } }
  @media print, screen and (min-width: 64em) {
    #people-page.nofilters {
      padding: 0px 10%; } }

/*----------  Form  ----------*/
.search-filter-form .search-texts {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .search-filter-form .search-texts .search-text {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%; }

.search-filter-form .search-text {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 40em) {
    .search-filter-form .search-text {
      margin-bottom: 2rem; } }
  .search-filter-form .search-text input {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%; }
  .search-filter-form .search-text button {
    -webkit-flex: 0 1 80px;
        -ms-flex: 0 1 80px;
            flex: 0 1 80px;
    width: 80px;
    height: 60px;
    background: #003262; }
    .search-filter-form .search-text button svg {
      margin: 0;
      width: 25px;
      height: 25px; }
      .search-filter-form .search-text button svg path {
        stroke: #fff; }

.search-filter-form .search-filters {
  display: -ms-grid;
  display: grid;
  grid: auto / 1fr;
  gap: 1em; }
  @media print, screen and (min-width: 40em) {
    .search-filter-form .search-filters {
      grid: auto / 1fr 1fr;
      gap: 2em; } }
  @media print, screen and (min-width: 64em) {
    .search-filter-form .search-filters {
      grid: auto / 1fr 1fr 1fr 1fr;
      gap: 2em; } }
  .search-filter-form .search-filters > .search-text {
    grid-area: 1 / 1 / 1 / -1; }
  .search-filter-form .search-filters select,
  .search-filter-form .search-filters div {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%; }
  .search-filter-form .search-filters .has-selection select, .search-filter-form .search-filters .has-selection input {
    background-color: #1486c8;
    color: #fff; }

.search-filter-form .search-filters select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 60px;
  text-overflow: ellipsis; }

.search-filters > * {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  margin-bottom: 0 !important; }

.search-filters .search-filters select {
  width: 100%; }

.search-filters .has-selection .reset-filter-button {
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important; }

.search-filters.has-selection > .reset-filter-button {
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important; }

.search-filters > .reset-filter-button {
  grid-area: -3 / 1 / 1 / -1;
  margin-left: auto;
  font-size: 0.8em;
  width: auto !important;
  white-space: nowrap;
  height: auto !important;
  padding: 0 1em; }

.reset-filter-button {
  display: none !important;
  font-size: 2em;
  padding: 1em;
  width: 60px !important;
  height: 60px !important;
  margin-bottom: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  background-color: #1486c8;
  color: #fff;
  -webkit-flex: 0 1 1em !important;
      -ms-flex: 0 1 1em !important;
          flex: 0 1 1em !important; }
  .reset-filter-button:hover {
    color: #fff;
    background-color: #1172aa; }

.search-filter-form {
  background: #f1efef;
  padding: 50px 3%; }
  @media print, screen and (min-width: 64em) {
    .search-filter-form {
      padding: 80px 3% 0; } }
  .search-filter-form .search-filters {
    display: -ms-grid;
    display: grid;
    grid: auto / 1fr;
    gap: 2em; }
  .search-filter-form .search-filters > * {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    margin-bottom: 0 !important; }
  .search-filter-form .search-filters .search-filters select {
    width: 100%; }
  .search-filter-form .search-filters .has-selection .reset-filter-button {
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  @media print, screen and (min-width: 40em) {
    .search-filter-form .search-filters {
      grid: auto / 1fr 1fr; }
      .search-filter-form .search-filters > .search-text {
        grid-area: 1/auto/1/auto; } }
  @media print, screen and (min-width: 64em) {
    .search-filter-form .search-filters {
      grid: auto / 1fr 1fr 1fr 1fr; } }
  .search-filter-form .search-filters > .search-text {
    grid-area: 1/1/1/-1; }
  @media print, screen and (min-width: 40em) {
    .search-filter-form.search-3-span .search-filters > .search-text {
      grid-area: 1/auto/1/auto; } }
  @media print, screen and (min-width: 64em) {
    .search-filter-form.search-3-span .search-filters {
      grid: auto / 1fr 1fr 1fr;
      gap: 2em; }
      .search-filter-form.search-3-span .search-filters > .search-text {
        grid-area: 1/1/1/-1; } }
  @media print, screen and (min-width: 64em) {
    .search-filter-form#fellows-filter .search-filters {
      grid: auto / 1fr 1fr 1fr; } }

/*----------  People List  ----------*/
#people-list {
  display: -ms-grid;
  display: grid;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 2rem 0;
  gap: 3rem 1rem;
  -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr; }
  @media print, screen and (min-width: 40em) {
    #people-list {
      padding: 4rem 0;
      -ms-grid-columns: 1fr 1fr 1fr;
          grid-template-columns: 1fr 1fr 1fr;
      gap: 3rem 2rem; } }
  @media print, screen and (min-width: 64em) {
    #people-list {
      padding: 5rem 0;
      -ms-grid-columns: 1fr 1fr 1fr 1fr;
          grid-template-columns: 1fr 1fr 1fr 1fr;
      gap: 3rem 2rem; } }
  @media screen and (min-width: 90em) {
    #people-list {
      -ms-grid-columns: 1fr 1fr 1fr 1fr 1fr;
          grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
      gap: 3rem 2rem; } }
  #people-list.table-style {
    padding-top: 0; }

h4.year-title {
  background: white;
  margin: 0 0;
  padding: 1rem 1rem 0.8rem;
  -webkit-flex: 0 1 100%;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
  width: 100%;
  font-size: 120%;
  line-height: 1; }

.a-person {
  position: relative; }
  .a-person .a-person-photo {
    height: calc((94vw - 1rem * 1) / 2);
    overflow: hidden;
    position: relative;
    margin-bottom: 1rem; }
    @media print, screen and (min-width: 40em) {
      .a-person .a-person-photo {
        margin-bottom: 2rem;
        height: calc((90vw - 1rem * 2) / 3); } }
    @media print, screen and (min-width: 64em) {
      .a-person .a-person-photo {
        height: calc((80vw - 1rem * 6) / 4); } }
    @media screen and (min-width: 90em) {
      .a-person .a-person-photo {
        height: calc((80vw - 1rem * 8) / 5); } }
    .a-person .a-person-photo img {
      object-fit: cover;
      width: 100%;
      height: 100%;
      object-position: center center; }
    .a-person .a-person-photo .no-image {
      height: 100%; }
    .a-person .a-person-photo::before {
      content: ' ';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #fff;
      transition: opacity 0.2s ease;
      pointer-events: none;
      opacity: 0; }
    .a-person .a-person-photo::after {
      content: ' ';
      position: absolute;
      bottom: 0;
      right: 0;
      width: 50px;
      height: 50px;
      background: #003262 url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd"><path fill="#fff" d="M21.883 12l-7.527 6.235.644.765 9-7.521-9-7.479-.645.764 7.529 6.236h-21.884v1h21.883z"/></svg>');
      background-size: 20px 20px;
      background-position: center center;
      background-repeat: no-repeat;
      transition: -webkit-transform 0.2s ease;
      transition: transform 0.2s ease;
      transition: transform 0.2s ease, -webkit-transform 0.2s ease;
      -webkit-transform: translate(100%, 0);
          -ms-transform: translate(100%, 0);
              transform: translate(100%, 0); }
  .a-person:hover .a-person-photo::before {
    opacity: 0.5; }
  .a-person:hover .a-person-photo::after {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }
  .a-person h5 {
    letter-spacing: 1.18px;
    font-size: 80%;
    text-transform: uppercase;
    color: #1486c8;
    margin: 0 0 1rem; }
  .a-person h6 {
    font-size: 80%;
    margin: 0;
    color: #3f3f3f;
    letter-spacing: 0.38px;
    font-weight: 300; }
  .table-style .a-person {
    width: 100%;
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    margin: 0;
    background: rgba(255, 255, 255, 0.5);
    padding: 1rem; }
    .table-style .a-person h5,
    .table-style .a-person h6 {
      margin: 0;
      line-height: 1.4; }
      @media print, screen and (min-width: 64em) {
        .table-style .a-person h5,
        .table-style .a-person h6 {
          margin: 0 1rem 0 0; } }
    @media screen and (max-width: 74.9375em) {
      .table-style .a-person h5 {
        margin-bottom: 1rem; } }
    .table-style .a-person:nth-of-type(odd) {
      background: rgba(255, 255, 255, 0.3); }

[data-reveal] {
  width: 90%;
  max-width: 600px;
  padding: 0;
  position: relative;
  margin-top: 2rem;
  margin-left: 5%;
  margin-bottom: 5%;
  border: none; }
  @media print, screen and (min-width: 40em) {
    [data-reveal] {
      margin-top: 0;
      margin-left: auto; } }
  [data-reveal] [data-close] {
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
    background: #003262; }
    [data-reveal] [data-close] svg {
      width: 20px;
      height: 100%; }
      [data-reveal] [data-close] svg path {
        fill: #fff; }
  [data-reveal] .modal-header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 5%;
    padding-bottom: 1rem; }
    @media print, screen and (min-width: 40em) {
      [data-reveal] .modal-header {
        padding: 8%;
        padding-bottom: 1rem; } }
    [data-reveal] .modal-header .modal-photo {
      width: 100px;
      height: 100px;
      overflow: hidden; }
      [data-reveal] .modal-header .modal-photo img {
        display: block;
        width: 100%; }
      @media print, screen and (min-width: 40em) {
        [data-reveal] .modal-header .modal-photo {
          width: 200px;
          height: 100%; } }
    [data-reveal] .modal-header .modal-details {
      padding-left: 1rem; }
    [data-reveal] .modal-header h5 {
      color: #fc6605;
      font-size: 120%;
      margin: 0; }
      @media print, screen and (min-width: 40em) {
        [data-reveal] .modal-header h5 {
          font-size: 150%; } }
    [data-reveal] .modal-header h6 {
      margin: 0;
      line-height: 1;
      font-size: 90%;
      font-weight: 100;
      letter-spacing: 0.38px; }
    [data-reveal] .modal-header p.email {
      margin: 1rem 0 0;
      font-size: 80%;
      color: rgba(0, 0, 0, 0.8); }
    [data-reveal] .modal-header a.website {
      margin: 1rem 0 0;
      font-size: 80%; }
    [data-reveal] .modal-header a.website:hover {
      opacity: 0.8; }
  [data-reveal] .modal-body {
    padding-left: 5%;
    padding-right: 5%;
    font-size: 90%;
    padding-bottom: 2rem; }
    @media print, screen and (min-width: 40em) {
      [data-reveal] .modal-body {
        padding-left: 8%;
        padding-right: 8%; } }
    [data-reveal] .modal-body .extra {
      padding-top: 1rem;
      margin-bottom: 1rem; }
      [data-reveal] .modal-body .extra h6 {
        font-size: 90%;
        text-transform: uppercase;
        color: #fc6605;
        margin: 0 0 0.5rem;
        letter-spacing: 0.28px; }
      [data-reveal] .modal-body .extra h6 + p {
        margin-top: 0; }
    [data-reveal] .modal-body .research-projects ul {
      margin: 0;
      padding: 0; }
      [data-reveal] .modal-body .research-projects ul li {
        font-size: 80%;
        margin: 0 0 5px;
        padding: 0 0 5px;
        list-style: none;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
        [data-reveal] .modal-body .research-projects ul li:last-of-type {
          margin-bottom: 0;
          padding-bottom: 0;
          border-bottom: none; }

#contact-page-form {
  background: #d4eef5 url("../images/contact-repeat.jpg") repeat;
  background-size: 150px 150px;
  padding: 3%; }
  @media print, screen and (min-width: 64em) {
    #contact-page-form {
      padding: 120px 5% 0; } }
  #contact-page-form .inside {
    background: #d3e8e9;
    max-width: 750px;
    padding: 3%; }
    @media print, screen and (min-width: 64em) {
      #contact-page-form .inside {
        padding: 5%; } }

[data-map] {
  height: 300px; }
  @media print, screen and (min-width: 40em) {
    [data-map] {
      height: 400px; } }
  @media print, screen and (min-width: 64em) {
    [data-map] {
      height: 450px; } }

.contact-information {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 2rem;
  padding-bottom: 2rem;
  text-align: center; }
  .contact-information p {
    margin: 0; }
  @media print, screen and (min-width: 40em) {
    .contact-information {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      padding-top: 4rem;
      padding-bottom: 0;
      text-align: left; } }
  .contact-information .numbers,
  .contact-information .address {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .contact-information .numbers,
      .contact-information .address {
        -webkit-flex: 0 1 45%;
            -ms-flex: 0 1 45%;
                flex: 0 1 45%;
        width: 45%; } }
  .contact-information .numbers > div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 110%;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-weight: 300;
    color: #003262;
    line-height: 2.1; }
    @media print, screen and (min-width: 40em) {
      .contact-information .numbers > div {
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start; } }
    .contact-information .numbers > div strong {
      font-weight: 500;
      display: inline-block;
      width: 25px; }
    .contact-information .numbers > div a {
      color: #003262; }
    .contact-information .numbers > div .icon {
      width: 35px; }
    .contact-information .numbers > div svg {
      position: relative;
      top: 4px;
      width: 25px;
      height: 20px; }
  .contact-information .address {
    font-size: 80%;
    font-weight: 400;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-top: 4rem;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .contact-information .address > div {
      padding-bottom: 1rem; }
    @media print, screen and (min-width: 40em) {
      .contact-information .address {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        padding-top: 0; }
        .contact-information .address > div {
          padding-right: 2rem; } }
    .contact-information .address img {
      width: 78px;
      mix-blend-mode: multiply; }

#events-search .search-filters {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  #events-search .search-filters select,
  #events-search .search-filters div {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%; }

#events-loop {
  background: #f1efef; }
  .single-event #events-loop {
    padding-bottom: 50px; }
  #events-loop h2 {
    text-align: center;
    font-size: 220%; }
  #events-loop .inside {
    padding: 50px 3%; }
    @media print, screen and (min-width: 40em) {
      #events-loop .inside {
        padding: 80px 3%; } }
    #events-loop .inside .card {
      margin: 0; }

.reset-filter-button > i:first-child {
  display: block; }

.reset-filter-button > i:last-child {
  display: none; }

.please-wait .reset-filter-button > i:first-child {
  display: none; }

.please-wait .reset-filter-button > i:last-child {
  display: block; }

@media print, screen and (min-width: 40em) {
  #research-search .search-filters,
  #people-filter .search-filters {
    grid: auto / 1fr 1fr;
    gap: 2em; }
    #research-search .search-filters > .search-text,
    #people-filter .search-filters > .search-text {
      grid-area: 1/auto/1/auto; } }

@media print, screen and (min-width: 64em) {
  #research-search .search-filters,
  #people-filter .search-filters {
    grid: auto / 1fr 1fr 1fr 1fr;
    gap: 2em; }
    #research-search .search-filters > .search-text,
    #people-filter .search-filters > .search-text {
      grid-area: 1 / 1 / 1 / -2; } }

#research-loop {
  background: #f1efef;
  padding-bottom: 50px; }
  @media print, screen and (min-width: 64em) {
    #research-loop {
      padding-bottom: 120px; } }
  #research-loop h2 {
    text-align: center;
    font-size: 220%; }
  #research-loop .inside {
    padding: 50px 3%; }
    @media print, screen and (min-width: 40em) {
      #research-loop .inside {
        padding: 0 5% 50px; } }
    @media print, screen and (min-width: 64em) {
      #research-loop .inside {
        padding: 80px 0 50px; } }
  #research-loop .card {
    margin-bottom: 2rem; }
    @media print, screen and (min-width: 40em) {
      #research-loop .card {
        margin-bottom: 3rem; } }
    @media print, screen and (min-width: 64em) {
      #research-loop .card {
        margin-bottom: 4rem; } }

#single-content {
  max-width: 1150px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 3%;
  padding-right: 3%; }
  #single-content.full-width .single-content {
    width: 100% !important;
    -webkit-flex: 0 1 100% !important;
        -ms-flex: 0 1 100% !important;
            flex: 0 1 100% !important;
    padding-right: 0 !important; }
  #single-content h1 {
    margin: 2rem 0; }
    @media print, screen and (min-width: 40em) {
      #single-content h1 {
        margin: 4rem 0 3rem; } }
  #single-content .single-post-meta {
    padding: 0 0 1rem;
    text-transform: uppercase;
    font-weight: 500;
    color: #a7a7a7; }
    @media print, screen and (min-width: 40em) {
      #single-content .single-post-meta {
        padding: 0 0 2rem; } }
    #single-content .single-post-meta span {
      display: inline-block; }
      #single-content .single-post-meta span.label {
        margin-right: 1rem; }
        @media print, screen and (min-width: 40em) {
          #single-content .single-post-meta span.label {
            margin-right: 2rem; } }
      #single-content .single-post-meta span.event-type {
        color: #1486c8;
        font-size: 80%; }
      #single-content .single-post-meta span.event-date {
        font-size: 80%; }
  #single-content .single-main {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 80%;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media print, screen and (min-width: 40em) {
      #single-content .single-main {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; } }
    #single-content .single-main .single-content {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%; }
      @media print, screen and (min-width: 40em) {
        #single-content .single-main .single-content {
          -webkit-flex: 0 1 75%;
              -ms-flex: 0 1 75%;
                  flex: 0 1 75%;
          width: 75%;
          padding-right: 5%; } }
      #single-content .single-main .single-content img {
        display: block;
        margin: 0 0 1rem; }
        @media print, screen and (min-width: 40em) {
          #single-content .single-main .single-content img {
            margin-bottom: 2rem; } }
        @media print, screen and (min-width: 64em) {
          #single-content .single-main .single-content img {
            margin-bottom: 2rem; } }
      #single-content .single-main .single-content h1,
      #single-content .single-main .single-content h2,
      #single-content .single-main .single-content h3,
      #single-content .single-main .single-content #page-intro h2,
      #page-intro #single-content .single-main .single-content h2,
      #single-content .single-main .single-content #page-intro h4,
      #page-intro #single-content .single-main .single-content h4,
      #single-content .single-main .single-content .build-content_and_background_image#build-1 h2,
      .build-content_and_background_image#build-1 #single-content .single-main .single-content h2,
      #single-content .single-main .single-content h4,
      #single-content .single-main .single-content h5,
      #single-content .single-main .single-content h6 {
        margin-bottom: 1rem;
        letter-spacing: 0;
        color: #003262; }
        @media print, screen and (min-width: 40em) {
          #single-content .single-main .single-content h1,
          #single-content .single-main .single-content h2,
          #single-content .single-main .single-content h3,
          #single-content .single-main .single-content #page-intro h2,
          #page-intro #single-content .single-main .single-content h2,
          #single-content .single-main .single-content #page-intro h4,
          #page-intro #single-content .single-main .single-content h4,
          #single-content .single-main .single-content .build-content_and_background_image#build-1 h2,
          .build-content_and_background_image#build-1 #single-content .single-main .single-content h2,
          #single-content .single-main .single-content h4,
          #single-content .single-main .single-content h5,
          #single-content .single-main .single-content h6 {
            margin-bottom: 2rem; } }
        #single-content .single-main .single-content h1 + p,
        #single-content .single-main .single-content h1 + ul,
        #single-content .single-main .single-content h2 + p,
        #single-content .single-main .single-content h2 + ul,
        #single-content .single-main .single-content h3 + p,
        #single-content .single-main .single-content #page-intro h2 + p,
        #page-intro #single-content .single-main .single-content h2 + p,
        #single-content .single-main .single-content #page-intro h3 + p,
        #single-content .single-main .single-content #page-intro h4 + p,
        #page-intro #single-content .single-main .single-content h4 + p,
        #single-content .single-main .single-content .build-content_and_background_image#build-1 h2 + p,
        .build-content_and_background_image#build-1 #single-content .single-main .single-content h2 + p,
        #single-content .single-main .single-content h3 + ul,
        #single-content .single-main .single-content #page-intro h2 + ul,
        #page-intro #single-content .single-main .single-content h2 + ul,
        #single-content .single-main .single-content #page-intro h3 + ul,
        #single-content .single-main .single-content #page-intro h4 + ul,
        #page-intro #single-content .single-main .single-content h4 + ul,
        #single-content .single-main .single-content .build-content_and_background_image#build-1 h2 + ul,
        .build-content_and_background_image#build-1 #single-content .single-main .single-content h2 + ul,
        #single-content .single-main .single-content h4 + p,
        #single-content .single-main .single-content h4 + ul,
        #single-content .single-main .single-content h5 + p,
        #single-content .single-main .single-content h5 + ul,
        #single-content .single-main .single-content h6 + p,
        #single-content .single-main .single-content h6 + ul {
          margin-top: 1rem;
          margin-bottom: 1rem; }
          @media print, screen and (min-width: 40em) {
            #single-content .single-main .single-content h1 + p,
            #single-content .single-main .single-content h1 + ul,
            #single-content .single-main .single-content h2 + p,
            #single-content .single-main .single-content h2 + ul,
            #single-content .single-main .single-content h3 + p,
            #single-content .single-main .single-content #page-intro h2 + p,
            #page-intro #single-content .single-main .single-content h2 + p,
            #single-content .single-main .single-content #page-intro h3 + p,
            #single-content .single-main .single-content #page-intro h4 + p,
            #page-intro #single-content .single-main .single-content h4 + p,
            #single-content .single-main .single-content .build-content_and_background_image#build-1 h2 + p,
            .build-content_and_background_image#build-1 #single-content .single-main .single-content h2 + p,
            #single-content .single-main .single-content h3 + ul,
            #single-content .single-main .single-content #page-intro h2 + ul,
            #page-intro #single-content .single-main .single-content h2 + ul,
            #single-content .single-main .single-content #page-intro h3 + ul,
            #single-content .single-main .single-content #page-intro h4 + ul,
            #page-intro #single-content .single-main .single-content h4 + ul,
            #single-content .single-main .single-content .build-content_and_background_image#build-1 h2 + ul,
            .build-content_and_background_image#build-1 #single-content .single-main .single-content h2 + ul,
            #single-content .single-main .single-content h4 + p,
            #single-content .single-main .single-content h4 + ul,
            #single-content .single-main .single-content h5 + p,
            #single-content .single-main .single-content h5 + ul,
            #single-content .single-main .single-content h6 + p,
            #single-content .single-main .single-content h6 + ul {
              margin-top: 1rem;
              margin-bottom: 1rem; } }
      #single-content .single-main .single-content h1 {
        font-size: 350%; }
      #single-content .single-main .single-content h2 {
        font-size: 300%; }
      
      #single-content .single-main .single-content h3,
      #single-content .single-main .single-content #page-intro h2,
      #page-intro #single-content .single-main .single-content h2,
      #single-content .single-main .single-content #page-intro h4,
      #page-intro #single-content .single-main .single-content h4,
      #single-content .single-main .single-content .build-content_and_background_image#build-1 h2,
      .build-content_and_background_image#build-1 #single-content .single-main .single-content h2 {
        font-size: 250%; }
      #single-content .single-main .single-content h4 {
        font-size: 200%; }
      #single-content .single-main .single-content h5 {
        font-size: 150%; }
      #single-content .single-main .single-content h6 {
        font-size: 100%;
        margin-bottom: 1.8rem; }
      #single-content .single-main .single-content > h1:first-of-type,
      #single-content .single-main .single-content > h2:first-of-type,
      #single-content .single-main .single-content > h3:first-of-type,
      #single-content .single-main #page-intro .single-content > h2:first-of-type,
      #page-intro #single-content .single-main .single-content > h2:first-of-type,
      #single-content .single-main #page-intro .single-content > h3:first-of-type,
      #single-content .single-main #page-intro .single-content > h4:first-of-type,
      #page-intro #single-content .single-main .single-content > h4:first-of-type,
      #single-content .single-main .build-content_and_background_image#build-1 .single-content > h2:first-of-type,
      .build-content_and_background_image#build-1 #single-content .single-main .single-content > h2:first-of-type,
      #single-content .single-main .single-content > h4:first-of-type,
      #single-content .single-main .single-content > h5:first-of-type,
      #single-content .single-main .single-content > h6:first-of-type {
        margin-top: 0; }
      #single-content .single-main .single-content figure {
        margin: 0 0 1rem;
        max-width: 100%; }
        @media print, screen and (min-width: 40em) {
          #single-content .single-main .single-content figure {
            margin-bottom: 2rem; }
            #single-content .single-main .single-content figure img {
              margin-bottom: 1rem; } }
        @media print, screen and (min-width: 64em) {
          #single-content .single-main .single-content figure {
            margin-bottom: 4rem;
            max-width: 350px;
            float: left;
            margin-bottom: 1rem;
            margin-right: 2rem; }
            #single-content .single-main .single-content figure img {
              margin-bottom: 0; } }
        #single-content .single-main .single-content figure figcaption {
          font-size: 80%;
          text-align: right;
          color: #8a8a8a; }
        #single-content .single-main .single-content figure + p {
          margin-top: 0; }
    #single-content .single-main .single-sidebar {
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      width: 100%;
      padding-top: 2rem; }
      @media print, screen and (min-width: 40em) {
        #single-content .single-main .single-sidebar {
          -webkit-flex: 0 1 25%;
              -ms-flex: 0 1 25%;
                  flex: 0 1 25%;
          width: 25%;
          padding-top: 0; } }
      #single-content .single-main .single-sidebar .injected-image {
        margin: 0 0 1rem; }
        @media print, screen and (min-width: 40em) {
          #single-content .single-main .single-sidebar .injected-image {
            margin: 0 0 2rem; } }
        @media print, screen and (min-width: 64em) {
          #single-content .single-main .single-sidebar .injected-image {
            margin: 0 0 3rem; } }
      #single-content .single-main .single-sidebar .meta-item {
        margin-bottom: 2rem; }
      #single-content .single-main .single-sidebar h5 {
        font-size: 90%;
        text-transform: uppercase;
        font-weight: 400;
        margin: 0;
        letter-spacing: 0.38px;
        font-weight: 600;
        color: #003262;
        padding-bottom: 1rem;
        border-bottom: 3px solid #003262; }
      #single-content .single-main .single-sidebar p,
      #single-content .single-main .single-sidebar li {
        font-size: 85%; }
      #single-content .single-main .single-sidebar .event-buttons {
        margin-top: 2rem; }
        #single-content .single-main .single-sidebar .event-buttons .site-button {
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          margin: 0 0 1rem;
          width: 100%; }

p.breadcrumbs {
  font-size: 80%;
  color: #a7a7a7;
  font-weight: 400;
  margin: 1rem 0 0; }
  @media print, screen and (min-width: 40em) {
    p.breadcrumbs {
      margin: 2rem 0 0; } }
  p.breadcrumbs .sep {
    display: inline-block;
    padding-left: 10px;
    padding-right: 10px; }
  p.breadcrumbs a {
    text-transform: uppercase;
    color: #a7a7a7; }

/*----------  Speakers  ----------*/
#event-speakers {
  margin-top: 1rem;
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 40em) {
    #event-speakers {
      margin-top: 4rem;
      margin-bottom: 4rem; } }
  #event-speakers .inside {
    background: #f1efef;
    max-width: 1150px; }
    @media print, screen and (min-width: 40em) {
      #event-speakers .inside {
        padding-top: 80px;
        padding-bottom: 80px; } }
  #event-speakers h2 {
    color: #1486c8; }
  #event-speakers h5 {
    color: #1486c8; }
  #event-speakers .image img,
  #event-speakers .no-image img {
    object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

/*----------  Partners  ----------*/
#event-partners {
  margin-top: 1rem;
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 40em) {
    #event-partners {
      margin-top: 4rem;
      margin-bottom: 4rem; } }
  #event-partners .inside {
    background: #d3e8e9;
    max-width: 1150px;
    margin-left: auto;
    margin-right: auto;
    padding: 50px 3%; }
    @media print, screen and (min-width: 40em) {
      #event-partners .inside {
        padding-top: 80px;
        padding-bottom: 80px; } }
  #event-partners h2 {
    color: #fc6605;
    text-align: center; }
  #event-partners .partner-logos {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 2em; }
    #event-partners .partner-logos .image {
      background-color: white;
      height: auto;
      min-height: 160px;
      padding: 2%;
      -webkit-flex: 0 0 280px;
          -ms-flex: 0 0 280px;
              flex: 0 0 280px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      gap: 2rem; }
    #event-partners .partner-logos p {
      text-align: center;
      font-size: 70%;
      line-height: 1.4;
      margin: 1rem 0 0; }
    #event-partners .partner-logos img {
      max-width: 250px;
      max-height: 150px;
      margin: 0 auto 0;
      display: block; }
      @media print, screen and (min-width: 64em) {
        #event-partners .partner-logos img {
          margin-bottom: 0; } }
  #event-partners .four-column-slider {
    max-width: 1150px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 2rem; }
    @media print, screen and (min-width: 40em) {
      #event-partners .four-column-slider {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: stretch;
            -ms-flex-align: stretch;
                align-items: stretch;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; } }

/*----------  Event Resources  ----------*/
#event-resources {
  padding: 50px 3%; }
  @media print, screen and (min-width: 40em) {
    #event-resources {
      padding: 50px 5% 100px; } }
  #event-resources .inside {
    max-width: 1150px;
    margin-left: auto;
    margin-right: auto; }
    #event-resources .inside.has-cards {
      display: -ms-grid;
      display: grid;
      gap: 2em;
      -ms-grid-columns: 1fr;
          grid-template-columns: 1fr; }
      @media print, screen and (min-width: 64em) {
        #event-resources .inside.has-cards {
          -ms-grid-columns: 1fr 1fr;
              grid-template-columns: 1fr 1fr; } }
      #event-resources .inside.has-cards .card {
        margin: 0 !important; }
  #event-resources h2 {
    text-align: center;
    font-size: 220%; }
  #event-resources .has-cards {
    margin-bottom: 2rem; }
    @media print, screen and (min-width: 40em) {
      #event-resources .has-cards {
        margin-bottom: 4rem; } }

/*----------  Register Modal  ----------*/
#register-modal {
  height: auto;
  min-height: 0; }
  #register-modal .modal-body {
    padding-top: 50px; }
  #register-modal .gform_wrapper input,
  #register-modal .gform_wrapper textarea {
    background: #f0f0f0; }

/*----------  Impact Pages  ----------*/
@media print, screen and (min-width: 64em) {
  .single-impact #single-content .single-main .single-content figure {
    margin-bottom: 4rem;
    max-width: 100%;
    float: none;
    margin-bottom: 1rem;
    margin-right: 2rem; } }

#sector-info {
  padding-left: 3%;
  padding-right: 3%;
  padding-bottom: 50px; }
  @media print, screen and (min-width: 40em) {
    #sector-info {
      padding-bottom: 80px; } }
  #sector-info img.lead-image {
    height: 200px;
    object-fit: cover;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      #sector-info img.lead-image {
        height: 300px; } }
    @media print, screen and (min-width: 64em) {
      #sector-info img.lead-image {
        height: 400px; } }

/*----------  Sector Info  ----------*/
.sector-information {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 80%;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media print, screen and (min-width: 40em) {
    .sector-information {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; } }
  .sector-information .sector-writeup {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .sector-information .sector-writeup {
        -webkit-flex: 0 1 75%;
            -ms-flex: 0 1 75%;
                flex: 0 1 75%;
        width: 75%;
        padding-right: 5%; } }
    .sector-information .sector-writeup img {
      display: block;
      margin: 0 0 1rem; }
      @media print, screen and (min-width: 40em) {
        .sector-information .sector-writeup img {
          margin-bottom: 2rem; } }
      @media print, screen and (min-width: 64em) {
        .sector-information .sector-writeup img {
          margin-bottom: 4rem; } }
  .sector-information .sector-meta {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%;
    padding-top: 2rem; }
    @media print, screen and (min-width: 40em) {
      .sector-information .sector-meta {
        -webkit-flex: 0 1 25%;
            -ms-flex: 0 1 25%;
                flex: 0 1 25%;
        width: 25%;
        padding-top: 0; } }
    .sector-information .sector-meta .sector-buttons {
      margin-top: 2rem; }
      .sector-information .sector-meta .sector-buttons .site-button {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin: 0 0 1rem;
        width: 100%; }

/*----------  Sections  ----------*/
.taxonomy-section {
  padding: 50px 3%;
  position: relative; }
  .taxonomy-section .inside {
    position: relative; }
  .taxonomy-section .inside > h3, .taxonomy-section #page-intro .inside > h2, #page-intro .taxonomy-section .inside > h2,
  .taxonomy-section #page-intro .inside > h3, #page-intro .taxonomy-section .inside > h3,
  .taxonomy-section #page-intro .inside > h4, #page-intro .taxonomy-section .inside > h4, .taxonomy-section .build-content_and_background_image#build-1 .inside > h2, .build-content_and_background_image#build-1 .taxonomy-section .inside > h2 {
    font-size: 180%;
    margin-top: 0; }
    @media print, screen and (min-width: 40em) {
      .taxonomy-section .inside > h3, .taxonomy-section #page-intro .inside > h2, #page-intro .taxonomy-section .inside > h2,
      .taxonomy-section #page-intro .inside > h3, #page-intro .taxonomy-section .inside > h3,
      .taxonomy-section #page-intro .inside > h4, #page-intro .taxonomy-section .inside > h4, .taxonomy-section .build-content_and_background_image#build-1 .inside > h2, .build-content_and_background_image#build-1 .taxonomy-section .inside > h2 {
        text-align: center;
        font-size: 220%; } }
  @media print, screen and (min-width: 40em) {
    .taxonomy-section {
      padding: 80px 3%; } }
  .single-post .taxonomy-section center {
    padding-top: 50px; }
  .taxonomy-section.taxonomy-section-grey {
    background: #f1efef; }
  @media screen and (max-width: 63.9375em) {
    .taxonomy-section .card h3, .taxonomy-section .card #page-intro h2, #page-intro .taxonomy-section .card h2,
    .taxonomy-section .card #page-intro h3, #page-intro .taxonomy-section .card h3,
    .taxonomy-section .card #page-intro h4, #page-intro .taxonomy-section .card h4, .taxonomy-section .card .build-content_and_background_image#build-1 h2, .build-content_and_background_image#build-1 .taxonomy-section .card h2 {
      font-size: 120%; } }
  .taxonomy-section .sector-slider {
    margin-bottom: 2rem; }
    @media print, screen and (min-width: 64em) {
      .taxonomy-section .sector-slider {
        margin-bottom: 4rem; }
        .taxonomy-section .sector-slider .slick-slide {
          padding-left: 20px;
          padding-right: 20px; } }
  .taxonomy-section .sector-slider-controls {
    padding-bottom: 2rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .taxonomy-section .sector-slider-controls .slick-arrow {
      margin-left: -1px;
      margin-right: -1px;
      background: #fff; }
    @media print, screen and (min-width: 40em) {
      .taxonomy-section .sector-slider-controls {
        position: absolute;
        width: 100%;
        left: 0;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        top: 50%;
        z-index: 100; } }
    @media screen and (min-width: 81.25em) {
      .taxonomy-section .sector-slider-controls {
        left: 50%;
        max-width: 1200px;
        -webkit-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
                transform: translate(-50%, 0); }
        .taxonomy-section .sector-slider-controls button {
          margin: 0; } }
    @media screen and (min-width: 87.5em) {
      .taxonomy-section .sector-slider-controls {
        max-width: 1300px; } }

/*----------  Initiative  ----------*/
.taxonomy-section-initiatives {
  padding-top: 0; }
  .taxonomy-section-initiatives .inside > h3, .taxonomy-section-initiatives #page-intro .inside > h2, #page-intro .taxonomy-section-initiatives .inside > h2,
  .taxonomy-section-initiatives #page-intro .inside > h3, #page-intro .taxonomy-section-initiatives .inside > h3,
  .taxonomy-section-initiatives #page-intro .inside > h4, #page-intro .taxonomy-section-initiatives .inside > h4, .taxonomy-section-initiatives .build-content_and_background_image#build-1 .inside > h2, .build-content_and_background_image#build-1 .taxonomy-section-initiatives .inside > h2 {
    text-align: left; }
  .taxonomy-section-initiatives .initiative-listings {
    -webkit-flex: 0 1 100%;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .taxonomy-section-initiatives .initiative-listings {
        -webkit-flex: 0 1 75%;
            -ms-flex: 0 1 75%;
                flex: 0 1 75%;
        width: 75%; } }
    .taxonomy-section-initiatives .initiative-listings .card:not(:last-of-type) {
      margin-bottom: 1rem; }
      @media print, screen and (min-width: 64em) {
        .taxonomy-section-initiatives .initiative-listings .card:not(:last-of-type) {
          margin-bottom: 2rem; } }

.tax-initiative #page-intro [data-svg] {
  margin-bottom: 0; }

.tax-themes .taxonomy-section-initiatives .card {
  margin-left: 0;
  margin-right: 0; }

.initiative-intro img {
  margin-bottom: 2rem; }
  @media print, screen and (min-width: 40em) {
    .initiative-intro img {
      margin-bottom: 3rem; } }
  @media print, screen and (min-width: 64em) {
    .initiative-intro img {
      margin-bottom: 4rem; } }

.initiative-intro h2 {
  margin-bottom: 1rem; }

.taxonomy-section-news .has-cards {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .taxonomy-section-news .has-cards .card {
    margin: 1.5%; }

#grey-section {
  background: #f1efef;
  padding: 50px 3%; }
  @media print, screen and (min-width: 64em) {
    #grey-section {
      padding: 80px 3%; } }

#content-loop {
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

@media print, screen and (min-width: 40em) {
  .page-id-608 #page-intro {
    padding-bottom: 150px;
    background-position: center 50px !important; } }

@media print, screen and (min-width: 64em) {
  .page-id-608 #page-intro {
    padding-bottom: 250px; } }

.page-id-608 #our-sectors {
  background: #efeae7; }
  @media print, screen and (min-width: 64em) {
    .page-id-608 #our-sectors {
      padding-top: 120px; } }

.page-id-608 #our-themes {
  text-align: center; }
  @media screen and (max-width: 63.9375em) {
    .page-id-608 #our-themes {
      background: #003262; } }
  @media print, screen and (min-width: 40em) {
    .page-id-608 #our-themes {
      background-position: center 80% !important; } }
  @media print, screen and (min-width: 64em) {
    .page-id-608 #our-themes {
      padding-top: 120px; } }
  .page-id-608 #our-themes h2 {
    color: #fff; }
  .page-id-608 #our-themes .flip-card .front {
    background: #fff; }
    .page-id-608 #our-themes .flip-card .front::before {
      border-color: #fc6605; }
    .page-id-608 #our-themes .flip-card .front h4,
    .page-id-608 #our-themes .flip-card .front a,
    .page-id-608 #our-themes .flip-card .front .site-button {
      color: #fc6605; }

#work-banner {
  background: #d3e8e9; }
  #work-banner .background {
    text-align: center; }
    @media print, screen and (min-width: 64em) {
      #work-banner .background {
        padding-top: 80px;
        padding-bottom: 80px; } }
  #work-banner p {
    color: #3f3f3f;
    font-weight: 200;
    font-size: 80%;
    max-width: 700px;
    margin: 2rem auto; }
  #work-banner .watermark {
    height: 100%;
    width: 60%;
    top: 0;
    z-index: 0; }
  #work-banner .op-lab-logo {
    width: 80%;
    max-width: 360px;
    position: relative;
    z-index: 10; }
  #work-banner h2,
  #work-banner p,
  #work-banner a {
    position: relative;
    z-index: 10; }
  #work-banner .site-button {
    color: #003262; }
    #work-banner .site-button svg path {
      fill: #003262; }

.page-id-140 #build-1 {
  background-position: center top !important;
  background-size: 100% auto !important;
  padding-bottom: 15%; }

.page-id-140 #build-2 {
  background-position: center bottom !important;
  background-size: 100% auto !important;
  padding-bottom: 50%;
  position: relative; }

.page-id-140 #build-5 {
  background-position: left center !important;
  background-size: auto 100% !important;
  padding-top: 50px;
  padding-bottom: 50px; }
  @media print, screen and (min-width: 40em) {
    .page-id-140 #build-5 {
      background-position: center center !important;
      background-size: cover !important;
      padding-top: 8%;
      padding-bottom: 15%; } }
  .page-id-140 #build-5 .inside {
    max-width: 600px;
    margin: 0 auto 0 0; }
    @media screen and (max-width: 63.9375em) {
      .page-id-140 #build-5 .inside {
        text-align: center; } }

.page-id-140 #build-3 {
  background-position: center bottom !important;
  background-size: 100% auto !important;
  padding-bottom: 35%; }

.page-id-140 #build-4 {
  background-position: right center !important;
  background-size: cover !important;
  padding-bottom: 100%; }
  @media print, screen and (min-width: 64em) {
    .page-id-140 #build-4 {
      background-position: center bottom !important;
      padding-bottom: 50%; } }

.page-id-140 .large_image_toc {
  display: none !important;
  background: #f9f7f8;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 50px;
  padding: 30px;
  width: 106%;
  margin-left: -3%;
  margin-right: -3%; }
  @media print, screen and (min-width: 40em) {
    .page-id-140 .large_image_toc {
      margin: 0;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      max-width: 1000px;
      width: 100%;
      padding: 0 50px; } }
  .page-id-140 .large_image_toc div {
    -webkit-flex: 0 1 50%;
        -ms-flex: 0 1 50%;
            flex: 0 1 50%;
    width: 50%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 10px;
    cursor: pointer; }
    @media print, screen and (min-width: 40em) {
      .page-id-140 .large_image_toc div {
        padding: 30px 0 10px;
        -webkit-flex: 0 1 22%;
            -ms-flex: 0 1 22%;
                flex: 0 1 22%;
        width: 22%;
        border-top: 5px solid transparent;
        transition: all 0.2s ease; } }
    .page-id-140 .large_image_toc div img {
      width: 100%;
      margin: 1rem 0; }
    .page-id-140 .large_image_toc div h5,
    .page-id-140 .large_image_toc div span {
      font-size: 75%;
      text-transform: uppercase;
      letter-spacing: 0.38px;
      color: #b9c1c3;
      font-weight: 600;
      display: block;
      transition: all 0.2s ease; }
    .page-id-140 .large_image_toc div:hover {
      border-color: #fdb515; }
      .page-id-140 .large_image_toc div:hover h5,
      .page-id-140 .large_image_toc div:hover span {
        color: #1486c8; }

#partners {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 50px 5%;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  #partners .partner-block {
    -webkit-flex: 0 1 50%;
        -ms-flex: 0 1 50%;
            flex: 0 1 50%;
    width: 50%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    padding: 3%;
    margin-bottom: 600;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    #partners .partner-block .image {
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      #partners .partner-block .image img {
        max-width: 100px;
        max-height: 50px;
        width: auto;
        height: auto; }
    #partners .partner-block h6 {
      font-weight: 500;
      letter-spacing: 0.29px;
      font-size: 75%;
      line-height: 1.2;
      margin: 1rem 0 0;
      display: none; }
      @media print, screen and (min-width: 40em) {
        #partners .partner-block h6 {
          display: block; } }
    @media print, screen and (min-width: 40em) {
      #partners .partner-block {
        -webkit-flex: 0 1 33%;
            -ms-flex: 0 1 33%;
                flex: 0 1 33%;
        width: 33%;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-justify-content: flex-end;
            -ms-flex-pack: end;
                justify-content: flex-end; }
        #partners .partner-block .image img {
          max-width: 100%;
          max-height: 100px; }
        #partners .partner-block .image svg {
          max-width: 200px;
          max-height: 100px;
          width: auto;
          display: block; } }
    @media print, screen and (min-width: 64em) {
      #partners .partner-block {
        -webkit-flex: 0 1 20%;
            -ms-flex: 0 1 20%;
                flex: 0 1 20%;
        width: 20%; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZlcnRpY2FsLXJoeXRobS5zY3NzIiwiYXBwLmNzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiX3NldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCJhcHAuc2NzcyIsImdsb2JhbC9fZ2xvYmFsLnNjc3MiLCJmb250cy5zY3NzIiwiZ2xvYmFsL3R5cGUuc2NzcyIsImdsb2JhbC9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiZ2xvYmFsL193cC1hZG1pbi5zY3NzIiwiZ2xvYmFsL193cC1vdmVycmlkZXMuc2NzcyIsImdsb2JhbC9zZWN0aW9uLnNjc3MiLCJtb2R1bGVzL2Zvcm1zLnNjc3MiLCJtb2R1bGVzL3NlYXJjaGZvcm0uc2NzcyIsIm1vZHVsZXMvc3RpY2t5LnNjc3MiLCJtb2R1bGVzL2hlcm8uc2NzcyIsIm1vZHVsZXMvcGFnZS1oZWFkZXIuc2NzcyIsIm1vZHVsZXMvc2xpZGVyLnNjc3MiLCJtb2R1bGVzL2Fvcy5zY3NzIiwibW9kdWxlcy9wZXJmZWN0LXNjcm9sbGJhci5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy92ZXJ0YXJyb3cuc2NzcyIsImNvbXBvbmVudHMvY2FyZC5zY3NzIiwiY29tcG9uZW50cy9ibHVlLWNhcmQuc2NzcyIsImNvbXBvbmVudHMvY2FyZC10d2VldC5zY3NzIiwiY29tcG9uZW50cy9sYWJlbC5zY3NzIiwiY29tcG9uZW50cy9uby1pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvY29ycG9yYXRlLnNjc3MiLCJjb21wb25lbnRzL3NvY2lhbHMuc2NzcyIsImNvbXBvbmVudHMvbWVudS5zY3NzIiwiY29tcG9uZW50cy9wYWdlLWludHJvLnNjc3MiLCJjb21wb25lbnRzL3BhZ2UtYW5jaG9yLW5hdi5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlLnNjc3MiLCJjb21wb25lbnRzL2xvZ29fc2hvd2Nhc2Uuc2NzcyIsImNvbXBvbmVudHMvZml4ZWRfd2lkdGhfc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL2Jhbm5lcl9zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL2ltYWdlX2FuZF9jb250ZW50LnNjc3MiLCJjb21wb25lbnRzLzRfY29sdW1uX3NsaWRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsImNvbXBvbmVudHMvcGxhaW5fY29udGVudC5zY3NzIiwiY29tcG9uZW50cy9zaGFyaW5nLnNjc3MiLCJjb21wb25lbnRzL2l0ZW0tbWV0YS1zaWRlYmFyLnNjc3MiLCJjb21wb25lbnRzL3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvbGF1bmNocGFkLnNjc3MiLCJ0ZW1wbGF0ZXMvd2hvd2VhcmUuc2NzcyIsInRlbXBsYXRlcy91cGRhdGVzLnNjc3MiLCJ0ZW1wbGF0ZXMvb3VyLXNlY3RvcnMuc2NzcyIsInRlbXBsYXRlcy9wZW9wbGUuc2NzcyIsInRlbXBsYXRlcy9jb250YWN0LnNjc3MiLCJ0ZW1wbGF0ZXMvZXZlbnRzLnNjc3MiLCJ0ZW1wbGF0ZXMvcmVzZWFyY2guc2NzcyIsInRlbXBsYXRlcy9zaW5nbGUuc2NzcyIsInRlbXBsYXRlcy90YXhvbm9teS5zY3NzIiwidGVtcGxhdGVzL2FyY2hpdmUuc2NzcyIsInRlbXBsYXRlcy93b3JrLnNjc3MiLCJ0ZW1wbGF0ZXMvZW5nYWdlLnNjc3MiLCJ0ZW1wbGF0ZXMvcGFydG5lcnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQzhKRztFQ3ZISjtJQUNFLFlBQVc7SUFDWCxXQUFVO0lBQ1YsZUFBYyxFQUNmLEVBQUE7O0FDSEQsaUVBQWlFO0FBRy9EO29GQUNnRjtBQUVoRjs7Ozs7T0FLRztBQUVIO0VBQ0Usd0JDMUN1QjtFRDBDUyxPQUFPO0VBUXJDLGtCQUFpQjtFQUFFLE9BQU87RUFFNUIsMkJBQTBCO0VBQUUsT0FBTztFQUNuQywrQkFBOEI7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b0IsRUFDckI7RXRCK2pERDs7SXNCNWpERSx1QkFBc0IsRUFDdkI7RXRCOGpERDs7SXNCM2pERSwyQkFBMEIsRUFDM0I7RXRCNmpERDs7SXNCMWpERSxxQkFBb0IsRUFDckI7RXRCNGpERDs7SXNCempERSx3QkFBdUIsRUFDeEI7RXRCMmpERDs7SXNCeGpERSwwQkFBeUIsRUFDMUI7RXRCMGpERDs7SXNCdmpERSxxQkFBb0IsRUFDckI7RXRCeWpERDs7SXNCdGpERSx1QkFBc0IsRUFDdkI7RXRCd2pERDs7SXNCcmpERSwyQkFBMEIsRUFDM0I7RXRCdWpERDs7SXNCcGpERSxxQkFBb0IsRUFDckI7RXRCc2pERDs7SXNCbmpERSx3QkFBdUIsRUFDeEI7RXRCcWpERDs7SXNCbGpERSwwQkFBeUIsRUFDMUI7RXRCb2pERDs7SXNCampERSxxQkFBb0IsRUFDckI7RXRCbWpERDs7SXNCaGpERSx1QkFBc0IsRUFDdkI7RXRCa2pERDs7SXNCL2lERSwyQkFBMEIsRUFDM0I7RXRCaWpERDs7SXNCOWlERSxxQkFBb0IsRUFDckI7RXRCZ2pERDs7SXNCN2lERSx3QkFBdUIsRUFDeEI7RXRCK2lERDs7SXNCNWlERSwwQkFBeUIsRUFDMUI7RXRCOGlERDs7SXNCM2lERSxxQkFBb0IsRUFDckI7RXRCNmlERDs7SXNCMWlERSx1QkFBc0IsRUFDdkI7RXRCNGlERDs7SXNCemlERSwyQkFBMEIsRUFDM0I7RXRCMmlERDs7SXNCeGlERSxxQkFBb0IsRUFDckI7RXRCMGlERDs7SXNCdmlERSx3QkFBdUIsRUFDeEI7RXRCeWlERDs7SXNCdGlERSwwQkFBeUIsRUFDMUI7RXRCd2lERDs7SXNCcmlERSxxQkFBb0IsRUFDckI7RXRCdWlERDs7SXNCcGlERSx1QkFBc0IsRUFDdkI7RXRCc2lERDs7SXNCbmlERSwyQkFBMEIsRUFDM0I7RXRCcWlERDs7SXNCbGlERSxxQkFBb0IsRUFDckI7RXRCb2lERDs7SXNCamlERSx3QkFBdUIsRUFDeEI7RXRCbWlERDs7SXNCaGlERSwwQkFBeUIsRUFDMUI7RXRCa2lERDs7SXNCL2hERSxxQkFBb0IsRUFDckI7RXRCaWlERDs7SXNCOWhERSx1QkFBc0IsRUFDdkI7RXRCZ2lERDs7SXNCN2hERSwyQkFBMEIsRUFDM0I7RXRCK2hERDs7SXNCNWhERSxxQkFBb0IsRUFDckI7RXRCOGhERDs7SXNCM2hERSx3QkFBdUIsRUFDeEI7RXRCNmhERDs7SXNCMWhERSwwQkFBeUIsRUFDMUI7RXRCNGhERDs7SXNCemhERSxxQkFBb0IsRUFDckI7RXRCMmhERDs7SXNCeGhERSx1QkFBc0IsRUFDdkI7RXRCMGhERDs7SXNCdmhERSwyQkFBMEIsRUFDM0I7RXRCeWhERDs7SXNCdGhERSxxQkFBb0IsRUFDckI7RXRCd2hERDs7SXNCcmhERSx3QkFBdUIsRUFDeEI7RXRCdWhERDs7SXNCcGhERSwwQkFBeUIsRUFDMUI7RXRCc2hERDs7SXNCbmhERSxxQkFBb0IsRUFDckI7RXRCcWhERDs7SXNCbGhERSx1QkFBc0IsRUFDdkI7RXRCb2hERDs7SXNCamhERSwyQkFBMEIsRUFDM0I7RXRCbWhERDs7SXNCaGhERSxxQkFBb0IsRUFDckI7RXRCa2hERDs7SXNCL2dERSx3QkFBdUIsRUFDeEI7RXRCaWhERDs7SXNCOWdERSx3QkFBdUIsRUFDeEI7RXRCZ2hERDs7SXNCN2dERSxxQkFBb0IsRUFDckI7RXRCK2dERDs7SXNCNWdERSxxQkFBb0IsRUFDckI7RXRCOGdERDs7SXNCM2dERSwyQkFBMEIsRUFDM0I7RXRCNmdERDs7SXNCMWdERSxxQkFBb0IsRUFDckI7RXRCNGdERDs7SXNCemdERSx3QkFBdUIsRUFDeEI7RXRCMmdERDs7SXNCeGdERSwwQkFBeUIsRUFDMUI7RXRCMGdERDs7SXNCdmdERSxxQkFBb0IsRUFDckI7RXRCeWdERDs7SXNCdGdERSx1QkFBc0IsRUFDdkI7RXRCd2dERDs7SXNCcmdERSwyQkFBMEIsRUFDM0I7RXRCdWdERDs7SXNCcGdERSxxQkFBb0IsRUFDckI7RXRCc2dERDs7SXNCbmdERSx3QkFBdUIsRUFDeEI7RXRCcWdERDs7SXNCbGdERSwwQkFBeUIsRUFDMUI7RXRCb2dERDs7SXNCamdERSxxQkFBb0IsRUFDckI7RXRCbWdERDs7SXNCaGdERSx1QkFBc0IsRUFDdkI7RXRCa2dERDs7SXNCLy9DRSwyQkFBMEIsRUFDM0I7RXRCaWdERDs7SXNCOS9DRSxxQkFBb0IsRUFDckI7RXRCZ2dERDs7SXNCNy9DRSx3QkFBdUIsRUFDeEI7RXRCKy9DRDs7SXNCNS9DRSwwQkFBeUIsRUFDMUI7RXRCOC9DRDs7SXNCMy9DRSxxQkFBb0IsRUFDckI7RXRCNi9DRDs7SXNCMS9DRSx1QkFBc0IsRUFDdkI7RXRCNC9DRDs7SXNCei9DRSwyQkFBMEIsRUFDM0I7RXRCMi9DRDs7SXNCeC9DRSxxQkFBb0IsRUFDckI7RXRCMC9DRDs7SXNCdi9DRSx3QkFBdUIsRUFDeEI7RXRCeS9DRDs7SXNCdC9DRSwwQkFBeUIsRUFDMUI7RXRCdy9DRDs7SXNCci9DRSxxQkFBb0IsRUFDckI7RXRCdS9DRDs7SXNCcC9DRSx1QkFBc0IsRUFDdkI7RXRCcy9DRDs7SXNCbi9DRSwyQkFBMEIsRUFDM0I7RXRCcS9DRDs7SXNCbC9DRSxxQkFBb0IsRUFDckI7RXRCby9DRDs7SXNCai9DRSx3QkFBdUIsRUFDeEI7RXRCbS9DRDs7SXNCaC9DRSwwQkFBeUIsRUFDMUI7RXRCay9DRDs7SXNCLytDRSxxQkFBb0IsRUFDckI7RXRCaS9DRDs7SXNCOStDRSx1QkFBc0IsRUFDdkI7RXRCZy9DRDs7SXNCNytDRSwyQkFBMEIsRUFDM0I7RXRCKytDRDs7SXNCNStDRSxxQkFBb0IsRUFDckI7RXRCOCtDRDs7SXNCMytDRSx3QkFBdUIsRUFDeEI7RXRCNitDRDs7SXNCMStDRSwwQkFBeUIsRUFDMUI7RXRCNCtDRDs7SXNCeitDRSxxQkFBb0IsRUFDckI7RXRCMitDRDs7SXNCeCtDRSx1QkFBc0IsRUFDdkI7RXRCMCtDRDs7SXNCditDRSwyQkFBMEIsRUFDM0I7RXRCeStDRDs7SXNCdCtDRSxxQkFBb0IsRUFDckI7RXRCdytDRDs7SXNCcitDRSx3QkFBdUIsRUFDeEI7RXRCdStDRDs7SXNCcCtDRSwwQkFBeUIsRUFDMUI7RXRCcytDRDs7SXNCbitDRSxxQkFBb0IsRUFDckI7RXRCcStDRDs7SXNCbCtDRSx1QkFBc0IsRUFDdkI7RXRCbytDRDs7SXNCaitDRSwyQkFBMEIsRUFDM0I7RXRCbStDRDs7SXNCaCtDRSxxQkFBb0IsRUFDckI7RXRCaytDRDs7SXNCLzlDRSx3QkFBdUIsRUFDeEI7RXRCaStDRDs7SXNCOTlDRSwwQkFBeUIsRUFDMUI7RXRCZytDRDs7SXNCNzlDRSxxQkFBb0IsRUFDckI7RXRCKzlDRDs7SXNCNTlDRSx1QkFBc0IsRUFDdkI7RXRCODlDRDs7SXNCMzlDRSwyQkFBMEIsRUFDM0I7RXRCNjlDRDs7SXNCMTlDRSxxQkFBb0IsRUFDckI7RXRCNDlDRDs7SXNCejlDRSx3QkFBdUIsRUFDeEI7RXRCMjlDRDs7SXNCeDlDRSwwQkFBeUIsRUFDMUI7RXRCMDlDRDs7SXNCdjlDRSxxQkFBb0IsRUFDckI7RXRCeTlDRDs7SXNCdDlDRSx1QkFBc0IsRUFDdkI7RXRCdzlDRDs7SXNCcjlDRSwyQkFBMEIsRUFDM0I7RXRCdTlDRDs7SXNCcDlDRSxxQkFBb0IsRUFDckI7RXRCczlDRDs7SXNCbjlDRSx3QkFBdUIsRUFDeEI7RXRCcTlDRDs7SXNCbDlDRSx3QkFBdUIsRUFDeEI7RXRCbzlDRDs7SXNCajlDRSxxQkFBb0IsRUFDckI7RXRCbTlDRDs7SXNCaDlDRSxxQkFBb0IsRUFDckI7RXRCazlDRDs7SXNCLzhDRSwyQkFBMEIsRUFDM0I7RXRCaTlDRDs7SXNCOThDRSxxQkFBb0IsRUFDckI7RXRCZzlDRDs7SXNCNzhDRSx3QkFBdUIsRUFDeEI7RXRCKzhDRDs7SXNCNThDRSwwQkFBeUIsRUFDMUI7RXRCODhDRDs7SXNCMzhDRSxxQkFBb0IsRUFDckI7RXRCNjhDRDs7SXNCMThDRSx1QkFBc0IsRUFDdkI7RXRCNDhDRDs7SXNCejhDRSwyQkFBMEIsRUFDM0I7RXRCMjhDRDs7SXNCeDhDRSxxQkFBb0IsRUFDckI7RXRCMDhDRDs7SXNCdjhDRSx3QkFBdUIsRUFDeEI7RXRCeThDRDs7SXNCdDhDRSwwQkFBeUIsRUFDMUI7RXRCdzhDRDs7SXNCcjhDRSxxQkFBb0IsRUFDckI7RXRCdThDRDs7SXNCcDhDRSx1QkFBc0IsRUFDdkI7RXRCczhDRDs7SXNCbjhDRSwyQkFBMEIsRUFDM0I7RXRCcThDRDs7SXNCbDhDRSxxQkFBb0IsRUFDckI7RXRCbzhDRDs7SXNCajhDRSx3QkFBdUIsRUFDeEI7RXRCbThDRDs7SXNCaDhDRSwwQkFBeUIsRUFDMUI7RXRCazhDRDs7SXNCLzdDRSxxQkFBb0IsRUFDckI7RXRCaThDRDs7SXNCOTdDRSx1QkFBc0IsRUFDdkI7RXRCZzhDRDs7SXNCNzdDRSwyQkFBMEIsRUFDM0I7RXRCKzdDRDs7SXNCNTdDRSxxQkFBb0IsRUFDckI7RXRCODdDRDs7SXNCMzdDRSx3QkFBdUIsRUFDeEI7RXRCNjdDRDs7SXNCMTdDRSwwQkFBeUIsRUFDMUI7RXRCNDdDRDs7SXNCejdDRSxxQkFBb0IsRUFDckI7RXRCMjdDRDs7SXNCeDdDRSx1QkFBc0IsRUFDdkI7RXRCMDdDRDs7SXNCdjdDRSwyQkFBMEIsRUFDM0I7RXRCeTdDRDs7SXNCdDdDRSxxQkFBb0IsRUFDckI7RXRCdzdDRDs7SXNCcjdDRSx3QkFBdUIsRUFDeEI7RXRCdTdDRDs7SXNCcDdDRSwwQkFBeUIsRUFDMUI7RXRCczdDRDs7SXNCbjdDRSxxQkFBb0IsRUFDckI7RXRCcTdDRDs7SXNCbDdDRSx1QkFBc0IsRUFDdkI7RXRCbzdDRDs7SXNCajdDRSwyQkFBMEIsRUFDM0I7RXRCbTdDRDs7SXNCaDdDRSxxQkFBb0IsRUFDckI7RXRCazdDRDs7SXNCLzZDRSx3QkFBdUIsRUFDeEI7RXRCaTdDRDs7SXNCOTZDRSwwQkFBeUIsRUFDMUI7RXRCZzdDRDs7SXNCNzZDRSxxQkFBb0IsRUFDckI7RXRCKzZDRDs7SXNCNTZDRSx1QkFBc0IsRUFDdkI7RXRCODZDRDs7SXNCMzZDRSwyQkFBMEIsRUFDM0I7RXRCNjZDRDs7SXNCMTZDRSxxQkFBb0IsRUFDckI7RXRCNDZDRDs7SXNCejZDRSx3QkFBdUIsRUFDeEI7RXRCMjZDRDs7SXNCeDZDRSwwQkFBeUIsRUFDMUI7RXRCMDZDRDs7SXNCdjZDRSxxQkFBb0IsRUFDckI7RXRCeTZDRDs7SXNCdDZDRSx1QkFBc0IsRUFDdkI7RXRCdzZDRDs7SXNCcjZDRSwyQkFBMEIsRUFDM0I7RXRCdTZDRDs7SXNCcDZDRSxxQkFBb0IsRUFDckI7RXRCczZDRDs7SXNCbjZDRSx3QkFBdUIsRUFDeEI7RXRCcTZDRDs7SXNCbDZDRSwwQkFBeUIsRUFDMUI7RXRCbzZDRDs7SXNCajZDRSxxQkFBb0IsRUFDckI7RXRCbTZDRDs7SXNCaDZDRSx1QkFBc0IsRUFDdkI7RXRCazZDRDs7SXNCLzVDRSwyQkFBMEIsRUFDM0I7RXRCaTZDRDs7SXNCOTVDRSxxQkFBb0IsRUFDckI7RXRCZzZDRDs7SXNCNzVDRSx3QkFBdUIsRUFDeEI7RXRCKzVDRDs7SXNCNTVDRSwwQkFBeUIsRUFDMUI7RXRCODVDRDs7SXNCMzVDRSxxQkFBb0IsRUFDckI7RXRCNjVDRDs7SXNCMTVDRSx1QkFBc0IsRUFDdkI7RXRCNDVDRDs7SXNCejVDRSwyQkFBMEIsRUFDM0I7RXRCMjVDRDs7SXNCeDVDRSxxQkFBb0IsRUFDckI7RXRCMDVDRDs7SXNCdjVDRSx3QkFBdUIsRUFDeEI7RXRCeTVDRDs7SXNCdDVDRSx3QkFBdUIsRUFDeEI7RXRCdzVDRDs7SXNCcjVDRSxxQkFBb0IsRUFDckI7RXRCdTVDRDs7SXNCcDVDRSxxQkFBb0IsRUFDckI7RXRCczVDRDtJc0JwNUNFLHFCQUFvQixFQUNyQjtFdEJxNUNEO0lzQm41Q0UscUJBQW9CLEVBQ3JCO0V0Qm81Q0Q7O0lzQmo1Q0UsaUVBQWdFLEVBQ2pFO0V0Qm01Q0Q7O0lzQmg1Q0UsaUNBQWdDLEVBQ2pDO0V0Qms1Q0Q7O0lzQi80Q0Usb0NBQW1DLEVBQ3BDO0V0Qmk1Q0Q7O0lzQjk0Q0UscUNBQW9DLEVBQ3JDO0V0Qmc1Q0Q7O0lzQjc0Q0Usd0NBQXVDLEVBQ3hDO0V0Qis0Q0Q7O0lzQjU0Q0UsbUVBQWtFLEVBQ25FO0V0Qjg0Q0Q7O0lzQjM0Q0Usb0VBQW1FLEVBQ3BFO0V0QjY0Q0Q7O0lzQjE0Q0UsbUVBQWtFLEVBQ25FO0V0QjQ0Q0Q7O0lzQno0Q0UsZ0VBQStE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O1FBQWYsb0JBQWU7WUFBZixnQkFBZTtJQUNmLCtCQUFzQjtRQUF0QiwyQkFBc0I7WUFBdEIsdUJBQXNCO0lBQ3RCLG1CQUFrQjtJQUNsQixZQUFXO0lBQ1gsbUI1RGdGc0I7STREL0V0Qix1Q0FBOEI7UUFBOUIsdUJBQThCO1lBQTlCLCtCQUE4QixFQW1EL0I7SUFuRUg7TUFtQk0sNEJBQW1CO1VBQW5CLHVCQUFtQjtjQUFuQixvQkFBbUIsRUFRcEI7TUEzQkw7UUFzQlEsaUJBQWdCO1FBQ2hCLGlCQUFnQjtRQUNoQixZQUFXO1FBQ1gsYUFBWSxFQUNiO0lBMUJQO01BOEJNLGlCQUFnQjtNQUNoQix1QkFBc0I7TUFDdEIsZUFBYztNQUNkLGlCQUFnQjtNQUNoQixpQkFBMEI7TUFDMUIsY0FBYSxFQUtkO01uRTJIQztRbUVuS047VUFzQ1EsZUFBYyxFQUVqQixFQUFBO0luRTJIQztNbUVuS047UUEyQ00sc0JBQWE7WUFBYixrQkFBYTtnQkFBYixjQUFhO1FBQ2IsV0FBVTtRQUNWLDRCQUFtQjtZQUFuQix1QkFBbUI7Z0JBQW5CLG9CQUFtQjtRQUNuQixrQ0FBeUI7WUFBekIsbUJBQXlCO2dCQUF6QiwwQkFBeUIsRUFxQjVCO1FBbkVIO1VBa0RVLGdCQUFlO1VBQ2Ysa0JBQWlCLEVBQ2xCO1FBcERUO1VBdURVLGlCQUFnQjtVQUNoQixrQkFBaUI7VUFDakIsWUFBVztVQUNYLGVBQWMsRUFDZixFQUFBO0luRXdHSDtNbUVuS047UUFnRU0sc0JBQWE7WUFBYixrQkFBYTtnQkFBYixjQUFhO1FBQ2IsV0FBVSxFQUViLEVBQUEiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjQuM1xuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICcuLi9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyBTZXR0aW5nc1xuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyBTYXNzIHV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gR2xvYmFsIHZhcmlhYmxlcyBhbmQgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cblxuICBAaWYgJHByb3RvdHlwZSB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlcztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnWW91ciBzbWFsbGVzdCBicmVha3BvaW50IChkZWZpbmVkIGluICRicmVha3BvaW50cykgbXVzdCBiZSBzZXQgdG8gXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAoMS8xNik7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRvbGQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICAvLyBSZXN0b3JlIHRoZSBvbGQgYnJlYWtwb2ludCBzaXplXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJC16Zi1zaXplOiBudWxsICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2luZyAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbmcuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgLy8gV29ya2Fyb3VuZCBhbmRyb2lkIGJyb3dzZXIgei1pbmRleCBidWdcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRyZXZlYWwtcGFkZGluZztcblxuICBib3JkZXI6ICRyZXZlYWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmV2ZWFsLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVhbC1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAvLyBTdHJpcCBtYXJnaW5zIGZyb20gdGhlIGxhc3QgaXRlbSBpbiB0aGUgbW9kYWxcbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRqdXN0cyB0aGUgd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIG1vZGFsLiBHZW5lcmFsbHkgYSBwZXJjZW50YWdlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4LXdpZHRoIFskcmV2ZWFsLW1heC13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGgoXG4gICR3aWR0aDogJHJldmVhbC13aWR0aCxcbiAgJG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGhcbikge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuICAvLyBbVE9ET10gSXMgdGhpcyBuZWNlc3Nhcnk/XG4gIGJvZHkuaXMtcmV2ZWFsLW9wZW4geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gaHRtbCBnZXRzIHRoaXMgY2xhc3Mgb25seSBpbiBpT1NcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbixcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1mb250LXNpemUgIT0gMTZweFxuICAgIG9yICRiYXNlLWxpbmUtaGVpZ2h0ICE9IDI0cHhcbiAgICBvciAkYmFzZS11bml0ICE9ICdlbSdcbiAgICBvciAkaDEtZm9udC1zaXplICE9IDIgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDItZm9udC1zaXplICE9IDEuNSAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDMtZm9udC1zaXplICE9IDEuMTcgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDQtZm9udC1zaXplICE9IDEgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDUtZm9udC1zaXplICE9IDAuODMgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDYtZm9udC1zaXplICE9IDAuNjcgKiAkYmFzZS1mb250LXNpemUge1xuICAgICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZG9jdW1lbnQpIHtcbiAgICAvKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNlY3Rpb25zKSB7XG4gICAgLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBib2R5IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGFydGljbGUsXG4gICAgYXNpZGUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBuYXYsXG4gICAgc2VjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiAqL1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMC42N2VtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgyLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgzLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg0LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg1LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg2IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg2LWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShncm91cGluZykge1xuICAgIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cblxuICAgICAgZGwsXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICovXG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBvbCxcbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGZpZ2NhcHRpb24sXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cblxuICAgIGZpZ3VyZSB7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDFlbSAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuXG4gICAgaHIge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIG1haW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBwLFxuICAgICAgcHJlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgcHJlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGxpbmtzKSB7XG4gICAgLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGE6YWN0aXZlLFxuICAgIGE6aG92ZXIge1xuICAgICAgb3V0bGluZS13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHRleHQpIHtcbiAgICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGFiYnJbdGl0bGVdIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgY29kZSxcbiAgICBrYmQsXG4gICAgc2FtcCB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuXG4gICAgZGZuIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1YixcbiAgICBzdXAge1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgYm90dG9tOiAtMC4yNWVtO1xuICAgIH1cblxuICAgIHN1cCB7XG4gICAgICB0b3A6IC0wLjVlbTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGVtYmVkZGVkKSB7XG4gICAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuXG4gICAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgc3ZnOm5vdCg6cm9vdCkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGZvcm1zKSB7XG4gICAgLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXQsXG4gICAgb3B0Z3JvdXAsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBmaWVsZHNldCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBsZWdlbmQge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMyAqL1xuICAgICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xuXG4gICAgcHJvZ3Jlc3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShpbnRlcmFjdGl2ZSkge1xuICAgIC8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1bW1hcnkge1xuICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKlxuICAgICAgICAgKiAxLiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICAgKiAyLiBTZXQgY29uc2lzdGVudCBzcGFjZSBmb3IgdGhlIGxpc3Qgc3R5bGUgaW1hZ2UuXG4gICAgICAgICAqL1xuXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTsgLyogMSAqL1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDsgLyogMiAqL1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAgICovXG5cbiAgICAgICAgbWVudSAmLFxuICAgICAgICBvbCAmLFxuICAgICAgICB1bCAmIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNjcmlwdGluZykge1xuICAgIC8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGNhbnZhcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZW1wbGF0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaGlkZGVuKSB7XG4gICAgLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFtoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVmFyaWFibGVzXG4vL1xuLy8gWW91IGNhbiBvdmVycmlkZSB0aGUgZGVmYXVsdCB2YWx1ZXMgYnkgc2V0dGluZyB0aGUgdmFyaWFibGVzIGluIHlvdXIgU2Fzc1xuLy8gYmVmb3JlIGltcG9ydGluZyB0aGUgbm9ybWFsaXplLXNjc3MgbGlicmFyeS5cblxuLy8gVGhlIGZvbnQgc2l6ZSBzZXQgb24gdGhlIHJvb3QgaHRtbCBlbGVtZW50LlxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgYmFzZSBsaW5lIGhlaWdodCBkZXRlcm1pbmVzIHRoZSBiYXNpYyB1bml0IG9mIHZlcnRpY2FsIHJoeXRobS5cbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgbGVuZ3RoIHVuaXQgaW4gd2hpY2ggdG8gb3V0cHV0IHZlcnRpY2FsIHJoeXRobSB2YWx1ZXMuXG4vLyBTdXBwb3J0ZWQgdmFsdWVzOiBweCwgZW0sIHJlbS5cbiRiYXNlLXVuaXQ6ICdlbScgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5LlxuJGJhc2UtZm9udC1mYW1pbHk6IHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb250IHNpemVzIGZvciBoMS1oNi5cbiRoMS1mb250LXNpemU6IDIgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAxLjUgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogMS4xNyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IDEgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAwLjgzICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogMC42NyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8gVGhlIGFtb3VudCBsaXN0cyBhbmQgYmxvY2txdW90ZXMgYXJlIGluZGVudGVkLlxuJGluZGVudC1hbW91bnQ6IDQwcHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb2xsb3dpbmcgdmFyaWFibGUgY29udHJvbHMgd2hldGhlciBub3JtYWxpemUtc2NzcyB3aWxsIG91dHB1dFxuLy8gZm9udC1zaXplcywgbGluZS1oZWlnaHRzIGFuZCBibG9jay1sZXZlbCB0b3AvYm90dG9tIG1hcmdpbnMgdGhhdCBmb3JtIGEgYmFzaWNcbi8vIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgcGFnZSwgd2hpY2ggZGlmZmVycyBmcm9tIHRoZSBvcmlnaW5hbCBOb3JtYWxpemUuY3NzLlxuLy8gSG93ZXZlciwgY2hhbmdpbmcgYW55IG9mIHRoZSB2YXJpYWJsZXMgYWJvdmUgd2lsbCBjYXVzZVxuLy8gJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0gdG8gYmUgYXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZS5cbiRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiBmYWxzZSAhZGVmYXVsdDtcbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNC4zXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbCwgLnJldmVhbC50aW55LCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLmxhcmdlIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cblxuLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cbi8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMiAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5maWdjYXB0aW9uLFxuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovIH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cbiAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi8gfVxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovIH1cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwieHNtYWxsPTBlbSZzbWFsbD0yNi41NjI1ZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIjsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiR290aGFtXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMzZjNmM2Y7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDFyZW0gMXJlbSAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzE0ODZjODtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmxhYmVsLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICMxNDg2Yzg7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmxhYmVsLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAubGFiZWwuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogIzNmM2YzZjsgfVxuICAubGFiZWwud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzNmM2YzZjsgfVxuICAubGFiZWwuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmxhYmVsLm5hdnkge1xuICAgIGJhY2tncm91bmQ6ICMwMDMyNjI7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmxhYmVsLmJsdWUge1xuICAgIGJhY2tncm91bmQ6ICMxNDg2Yzg7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmxhYmVsLmxpZ2h0Ymx1ZSB7XG4gICAgYmFja2dyb3VuZDogI2QzZThlOTtcbiAgICBjb2xvcjogIzNmM2YzZjsgfVxuICAubGFiZWwueWVsbG93IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmRiNTE1O1xuICAgIGNvbG9yOiAjM2YzZjNmOyB9XG4gIC5sYWJlbC5vcmFuZ2Uge1xuICAgIGJhY2tncm91bmQ6ICNmYzY2MDU7XG4gICAgY29sb3I6ICMzZjNmM2Y7IH1cblxuYm9keS5pcy1yZXZlYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuaHRtbC5pcy1yZXZlYWwtb3Blbixcbmh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjMsIDYzLCA2MywgMC40NSk7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYjljMWMzO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICAucmV2ZWFsIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICAucmV2ZWFsLmNvbGxhcHNlIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC50aW55IHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnNtYWxsIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLmxhcmdlIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgLnJldmVhbC5mdWxsIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjYuNWVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgICBjb2xvcjogIzNmM2YzZjsgfVxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgICBjb2xvcjogIzNmM2YzZjsgfVxuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRoZWFkIHRoLFxuICB0aGVhZCB0ZCxcbiAgdGZvb3QgdGgsXG4gIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjsgfVxuICB0YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICB0YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjJmMmYyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0OyB9XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cblxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuICAudGFibGUtc2Nyb2xsIHRhYmxlIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuXG4vKlxuICBNeSBjdXN0b20gc3R5bGVzOlxuICBBZGQgeW91ciBzY3NzIGZpbGVzIGJlbG93IHRvIHN0cnVjdHVyZSB5b3VyIHByb2plY3Qgc3R5bGVzXG4qL1xuYm9keSxcbmh0bWwge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS42ODsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cbiAgYm9keS5tZW51LWluIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qLS0tLS0tLS0tLSAgTW92ZSBicm93c2VyaWZ5IG5vdGlmaWNhdGlvbiBkb3duICAtLS0tLS0tLS0tKi9cbiNfX2JzX25vdGlmeV9fIHtcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHotaW5kZXg6IDk5OTk7IH1cblxuLyotLS0tLS0tLS0tICBJbnRlcmNoYW5nZSAgLS0tLS0tLS0tLSovXG5bZGF0YS1pbnRlcmNoYW5nZV0ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbi8qLS0tLS0tLS0tLSAgZGF0YS11cmwgIC0tLS0tLS0tLS0qL1xuW2RhdGEtdXJsXSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmhyIHtcbiAgbWFyZ2luOiAycmVtIDAgM3JlbTtcbiAgYmFja2dyb3VuZDogI2I5YzFjMztcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6IDFweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGhyIHtcbiAgICAgIG1hcmdpbjogMnJlbSAwIDNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGhyIHtcbiAgICAgIG1hcmdpbjogNHJlbSAwOyB9IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQXJub1Bybyc7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgc3JjOiBsb2NhbChcIkFybm8gUHJvIExpZ2h0IERpc3BsYXlcIiksIGxvY2FsKFwiQXJub1Byby1MaWdodERpc3BsYXlcIiksIHVybChcIi4uL2ZvbnRzL0Fybm9Qcm8tTGlnaHREaXNwbGF5LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9Bcm5vUHJvLUxpZ2h0RGlzcGxheS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nO1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIHNyYzogbG9jYWwoXCJHb3RoYW0gTGlnaHRcIiksIGxvY2FsKFwiR290aGFtLUxpZ2h0XCIpLCB1cmwoXCIuLi9mb250cy9Hb3RoYW0tTGlnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0dvdGhhbS1MaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nO1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIHNyYzogbG9jYWwoXCJHb3RoYW0gQm9va1wiKSwgbG9jYWwoXCJHb3RoYW0tQm9va1wiKSwgdXJsKFwiLi4vZm9udHMvR290aGFtLUJvb2sud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0dvdGhhbS1Cb29rLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0dvdGhhbSc7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgc3JjOiBsb2NhbChcIkdvdGhhbSBNZWRpdW1cIiksIGxvY2FsKFwiR290aGFtLU1lZGl1bVwiKSwgdXJsKFwiLi4vZm9udHMvR290aGFtLU1lZGl1bS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvR290aGFtLU1lZGl1bS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nO1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIHNyYzogbG9jYWwoXCJHb3RoYW0gQm9sZFwiKSwgbG9jYWwoXCJHb3RoYW0tQm9sZFwiKSwgdXJsKFwiLi4vZm9udHMvR290aGFtLUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0dvdGhhbS1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi8qXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0Fybm9Qcm8nO1xuICAgIHNyYzogbG9jYWwoJ0Fybm8gUHJvJyksIGxvY2FsKCdBcm5vUHJvLVJlZ3VsYXInKSxcbiAgICAgICAgdXJsKCdBcm5vUHJvLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnQXJub1Byby1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuICovXG4vKi0tLS0tLS0tLS0gIFR5cGUgTWl4aW5zICAtLS0tLS0tLS0tKi9cbmgxLFxuc3Bhbi5oZWFkZXIge1xuICBsZXR0ZXItc3BhY2luZzogLTAuNDJweDtcbiAgZm9udC1zaXplOiAyMDAlO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogIzAwMzI2MjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgaDEsXG4gICAgc3Bhbi5oZWFkZXIge1xuICAgICAgZm9udC1zaXplOiAyNTAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBoMSxcbiAgICBzcGFuLmhlYWRlciB7XG4gICAgICBmb250LXNpemU6IDMzMCU7IH0gfVxuXG5oMiB7XG4gIGxldHRlci1zcGFjaW5nOiAtMC40MnB4O1xuICBmb250LXNpemU6IDIwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiAjMDAzMjYyO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBmb250LWZhbWlseTogJ0dvdGhhbSc7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDI1MCU7XG4gICAgICBtYXJnaW46IDAgMCAycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDMzMCU7XG4gICAgICBtYXJnaW46IDAgMCAzcmVtOyB9IH1cblxuaDMsICNwYWdlLWludHJvIGgyLFxuI3BhZ2UtaW50cm8gaDMsXG4jcGFnZS1pbnRybyBoNCwgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMiB7XG4gIGxldHRlci1zcGFjaW5nOiAtMC40MnB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXNpemU6IDEyMCU7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGNvbG9yOiAjMDAzMjYyO1xuICBmb250LWZhbWlseTogJ0dvdGhhbSc7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBoMywgI3BhZ2UtaW50cm8gaDIsXG4gICAgI3BhZ2UtaW50cm8gaDMsXG4gICAgI3BhZ2UtaW50cm8gaDQsIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIge1xuICAgICAgZm9udC1zaXplOiAxMzAlO1xuICAgICAgbWFyZ2luOiAwIDAgMnJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgaDMsICNwYWdlLWludHJvIGgyLFxuICAgICNwYWdlLWludHJvIGgzLFxuICAgICNwYWdlLWludHJvIGg0LCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTYwJTtcbiAgICAgIG1hcmdpbjogMCAwIDNyZW07IH0gfVxuXG5oNCB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgZm9udC1zaXplOiAxMjAlO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBmb250LWZhbWlseTogJ0dvdGhhbSc7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDEzMCU7XG4gICAgICBtYXJnaW46IDAgMCAycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDE2MCU7XG4gICAgICBtYXJnaW46IDAgMCAzcmVtOyB9IH1cblxuaDUge1xuICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiAxMzAlO1xuICAgICAgbWFyZ2luOiAwIDAgMnJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiAxNjAlO1xuICAgICAgbWFyZ2luOiAwIDAgM3JlbTsgfSB9XG5cbmg2IHtcbiAgbGV0dGVyLXNwYWNpbmc6IDIuOTZweDtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nOyB9XG5cbi5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuYSB7XG4gIGNvbG9yOiAjMTQ4NmM4OyB9XG5cbi5zbWFsbGNhcHMsICN3aG93ZWFyZSAjbWFwIGg2IHtcbiAgbGV0dGVyLXNwYWNpbmc6IDIuOXB4O1xuICBjb2xvcjogIzE0ODZjODtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6ICdBcm5vUHJvJztcbiAgZm9udC1zaXplOiA4NSU7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuLyotLS0tLS0tLS0tICBTaW5nbGUgSXRlbSAgLS0tLS0tLS0tLSovXG4uc2luZ2xlLWNvbnRlbnQgaDIsXG4uc2luZ2xlLWNvbnRlbnQgaDMsXG4uc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDIsXG4jcGFnZS1pbnRybyAuc2luZ2xlLWNvbnRlbnQgaDIsXG4uc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDMsXG4jcGFnZS1pbnRybyAuc2luZ2xlLWNvbnRlbnQgaDMsXG4uc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDQsXG4jcGFnZS1pbnRybyAuc2luZ2xlLWNvbnRlbnQgaDQsXG4uc2luZ2xlLWNvbnRlbnQgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMixcbi5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLnNpbmdsZS1jb250ZW50IGgyLFxuLnNpbmdsZS1jb250ZW50IGg0LFxuLnNpbmdsZS1jb250ZW50IGg1LFxuLnNpbmdsZS1jb250ZW50IGg2IHtcbiAgbWFyZ2luOiAxcmVtIDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlLWNvbnRlbnQgaDIsXG4gICAgLnNpbmdsZS1jb250ZW50IGgzLFxuICAgIC5zaW5nbGUtY29udGVudCAjcGFnZS1pbnRybyBoMixcbiAgICAjcGFnZS1pbnRybyAuc2luZ2xlLWNvbnRlbnQgaDIsXG4gICAgLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGgzLFxuICAgICNwYWdlLWludHJvIC5zaW5nbGUtY29udGVudCBoMyxcbiAgICAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDQsXG4gICAgI3BhZ2UtaW50cm8gLnNpbmdsZS1jb250ZW50IGg0LFxuICAgIC5zaW5nbGUtY29udGVudCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyLFxuICAgIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLnNpbmdsZS1jb250ZW50IGgyLFxuICAgIC5zaW5nbGUtY29udGVudCBoNCxcbiAgICAuc2luZ2xlLWNvbnRlbnQgaDUsXG4gICAgLnNpbmdsZS1jb250ZW50IGg2IHtcbiAgICAgIG1hcmdpbjogMnJlbSAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2luZ2xlLWNvbnRlbnQgaDIsXG4gICAgLnNpbmdsZS1jb250ZW50IGgzLFxuICAgIC5zaW5nbGUtY29udGVudCAjcGFnZS1pbnRybyBoMixcbiAgICAjcGFnZS1pbnRybyAuc2luZ2xlLWNvbnRlbnQgaDIsXG4gICAgLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGgzLFxuICAgICNwYWdlLWludHJvIC5zaW5nbGUtY29udGVudCBoMyxcbiAgICAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDQsXG4gICAgI3BhZ2UtaW50cm8gLnNpbmdsZS1jb250ZW50IGg0LFxuICAgIC5zaW5nbGUtY29udGVudCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyLFxuICAgIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLnNpbmdsZS1jb250ZW50IGgyLFxuICAgIC5zaW5nbGUtY29udGVudCBoNCxcbiAgICAuc2luZ2xlLWNvbnRlbnQgaDUsXG4gICAgLnNpbmdsZS1jb250ZW50IGg2IHtcbiAgICAgIG1hcmdpbjogM3JlbSAwOyB9IH1cblxuLnNpbmdsZS1jb250ZW50IC5oYXMtdGFibGUge1xuICBvdmVyZmxvdzogc2Nyb2xsOyB9XG5cbi5ncmV5LXRleHQge1xuICBjb2xvcjogI2I5YzFjMyAhaW1wb3J0YW50OyB9XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7IH1cblxuI3dwYWRtaW5iYXIge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsgfVxuXG5ib2R5LmFkbWluLWJhci5mLXRvcGJhci1maXhlZCAuc3RpY2t5LmZpeGVkIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG5ib2R5LmFkbWluLWJhci5vZmZjYW52YXMgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRvcDogMi44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDguOTM3NWVtKSB7XG4gICAgYm9keS5hZG1pbi1iYXIub2ZmY2FudmFzIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgICAgdG9wOiAycmVtOyB9IH1cblxuLndwLWNhcHRpb24gPiBmaWdjYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICM5OTk7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMDsgfVxuXG5wLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzY2NjtcbiAgcGFkZGluZzogMC42MjVyZW0gMDsgfVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMDsgfVxuXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBtYXJnaW46IDA7IH1cblxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLnNlY3Rpb24ge1xuICBwYWRkaW5nOiA1MHB4IDMlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiA3NXB4IDMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiA3NXB4IDUlIDYwcHg7IH0gfVxuXG4uaW5zaWRlIHtcbiAgbWF4LXdpZHRoOiAxMTUwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmluc2lkZS5oYXMtY2FyZHMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmluc2lkZS5oYXMtY2FyZHMge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaW5zaWRlLmhhcy1jYXJkcyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7IH0gfVxuICAgIC5pbnNpZGUuaGFzLWNhcmRzIC5jYXJkIHtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbmZvcm0ge1xuICBmb250LXNpemU6IDgwJTsgfVxuICBmb3JtIGlucHV0LFxuICBmb3JtIHRleHRhcmVhIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICBmb3JtIHNlbGVjdCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCIgdmlld0JveD1cIjAgMCAxMjQgODVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PGcgZmlsbD1cIm5vbmVcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCI+PHBhdGggZmlsbD1cIiMwMDMyNjJcIiBkPVwiTTAgMEgxMjRWODVIMHpcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTYwMy4wMDAwMDAsIC04MjQuMDAwMDAwKSB0cmFuc2xhdGUoMTgyLjAwMDAwMCwgODI0LjAwMDAwMCkgdHJhbnNsYXRlKDQyMS4wMDAwMDAsIDAuMDAwMDAwKVwiLz48cGF0aCBkPVwiTTUuNDI1NDI5NzQsMy43MDIxMTM1NiBMMTQuMTgyNzg5MSwxMi40NTk0NzI5IEwxNC4xODI3ODkxLDMuNzAyMTEzNTYgTDUuNDI1NDI5NzQsMy43MDIxMTM1NiBaXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKC02MDMuMDAwMDAwLCAtODI0LjAwMDAwMCkgdHJhbnNsYXRlKDE4Mi4wMDAwMDAsIDgyNC4wMDAwMDApIHRyYW5zbGF0ZSg0MjEuMDAwMDAwLCAwLjAwMDAwMCkgdHJhbnNsYXRlKDUxLjY1MjE3NCwgMzEuMDU4ODI0KSB0cmFuc2xhdGUoOS4wOTcwMDMsIDguNzg3OTAwKSByb3RhdGUoLTIyNS4wMDAwMDApIHRyYW5zbGF0ZSgtOS4wOTcwMDMsIC04Ljc4NzkwMClcIiBmaWxsPVwiI2ZmZlwiLz48L2c+PC9zdmc+Jyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4MHB4IDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLnNpbmdsZS1jb250ZW50IC5nZm9ybV93cmFwcGVyIHtcbiAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGUtY29udGVudCAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIHBhZGRpbmc6IDJyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaW5nbGUtY29udGVudCAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgIHBhZGRpbmc6IDNyZW07IH0gfVxuICAuc2luZ2xlLWNvbnRlbnQgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNpbmdsZS1jb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZm9ybV90aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuXG4vKi0tLS0tLS0tLS0gIEdGb3JtcyAgLS0tLS0tLS0tLSovXG4uZ2Zvcm1fd3JhcHBlciB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuZ2Zvcm1fd3JhcHBlciB1bCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1faGVhZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1faGVhZGluZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDsgfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIGlucHV0IHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgZm9udC1mYW1pbHk6IFwiR290aGFtXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5nZm9ybV93cmFwcGVyIC5nZmllbGQgOjpwbGFjZWhvbGRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiR290aGFtXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG4gIC5nZm9ybV93cmFwcGVyIC5nZmllbGQgdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gIC5nZm9ybV93cmFwcGVyIC5nZmllbGQgbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZC5oYXMtY2hlY2tib3ggbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCAuZ2ZpZWxkX2NoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCAuZ2ZpZWxkX2NoZWNrYm94IGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIC5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCBiciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIC5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94IGlucHV0IHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXgge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXgge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCBwIHtcbiAgICAgIGZsZXg6IDAgMSA0OCU7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCBwIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxcmVtOyB9XG4gICAgICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCBwIGJyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggcCBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5nZm9ybV93cmFwcGVyICNmaWVsZF8xXzEge1xuICAgIHdpZHRoOiA0OCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmdmb3JtX3dyYXBwZXIgI2ZpZWxkXzFfMiB7XG4gICAgd2lkdGg6IDQ4JTtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGJ1dHRvbiB7XG4gIGNvbG9yOiAjMDAzMjYyO1xuICBmb250LXNpemU6IDEwMCU7IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBidXR0b246aG92ZXIge1xuICAgIGNvbG9yOiAjMTQ4NmM4OyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBidXR0b246aG92ZXIgc3ZnIHBhdGgge1xuICAgICAgZmlsbDogIzE0ODZjODsgfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGJ1dHRvbiBzcGFuIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDMyNjI7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBidXR0b24gc3ZnIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBidXR0b24gc3ZnIHBhdGgge1xuICAgICAgZmlsbDogIzAwMzI2MjsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAudmFsaWRhdGlvbl9lcnJvciB7XG4gIGJhY2tncm91bmQ6ICNmZjk5OTk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGNvbG9yOiAjM2YzZjNmOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZXJyb3IgaW5wdXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmY5OTk5OyB9XG5cbi5nZm9ybV93cmFwcGVyIC52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHJlZDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBmb250LXNpemU6IDkwJTsgfVxuXG4uZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4jc3RpY2t5ICNzZWFyY2hmb3JtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTA5LjVweCk7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiA1NC43NXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICB6LWluZGV4OiAxMDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShjYWxjKDEwMCUgKyAyMDBweCksIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAjc3RpY2t5ICNzZWFyY2hmb3JtLmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICNzdGlja3kgI3NlYXJjaGZvcm0ge1xuICAgICAgaGVpZ2h0OiA3M3B4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE0NnB4KTsgfSB9XG4gICNzdGlja3kgI3NlYXJjaGZvcm0gaW5wdXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjMDAzMjYyO1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBoZWlnaHQ6IDU0Ljc1cHg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtZmFtaWx5OiBcIkdvdGhhbVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBvdXRsaW5lLWNvbG9yOiB3aGl0ZTsgfVxuICAgICNzdGlja3kgI3NlYXJjaGZvcm0gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgI3N0aWNreSAjc2VhcmNoZm9ybSBpbnB1dCB7XG4gICAgICAgIGhlaWdodDogNzNweDsgfSB9XG4gICNzdGlja3kgI3NlYXJjaGZvcm0gYnV0dG9uIHtcbiAgICBmbGV4OiAwIDEgNzNweDtcbiAgICBoZWlnaHQ6IDU0Ljc1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE0ODZjODtcbiAgICBiYWNrZ3JvdW5kOiAjMTQ4NmM4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICNzdGlja3kgI3NlYXJjaGZvcm0gYnV0dG9uIHtcbiAgICAgICAgaGVpZ2h0OiA3M3B4OyB9IH1cbiAgICAjc3RpY2t5ICNzZWFyY2hmb3JtIGJ1dHRvbiBzdmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgICNzdGlja3kgI3NlYXJjaGZvcm0gYnV0dG9uIHN2ZyBwYXRoIHtcbiAgICAgICAgZmlsbDogI2ZmZjsgfVxuXG4jc3RpY2t5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDIwMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiA1NC43NXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgI3N0aWNreSB7XG4gICAgICBoZWlnaHQ6IDczcHg7IH0gfVxuICAuc2Nyb2xsZWQgI3N0aWNreSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCA1MCwgOTgsIDAuNyk7IH1cbiAgICAuc2Nyb2xsZWQgI3N0aWNreSAjbG9nbyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNnB4KTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNjcm9sbGVkICNzdGlja3kgI2xvZ28ge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC05cHgpIHNjYWxlKDAuOCk7IH0gfVxuICAucGFnZS10ZW1wbGF0ZS1tYXBzICNzdGlja3kge1xuICAgIGJhY2tncm91bmQ6ICMwMDMyNjI7IH1cblxuLyotLS0tLS0tLS0tICBMb2dvICAtLS0tLS0tLS0tKi9cbiNsb2dvIHtcbiAgbWFyZ2luOiAxcmVtIDAgMCAycmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC41MSwgMC4zMSwgMC4yNiwgMSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAjbG9nbyB7XG4gICAgICBtYXJnaW46IDAuNXJlbSAwIDAgMnJlbTsgfSB9XG4gICNsb2dvIHN2ZyB7XG4gICAgd2lkdGg6IDExNi40cHg7XG4gICAgaGVpZ2h0OiAzNC44cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI2xvZ28gc3ZnIHtcbiAgICAgICAgd2lkdGg6IDE5NHB4O1xuICAgICAgICBoZWlnaHQ6IDU4cHg7IH0gfVxuICAuc2luZ2xlLXBvc3QgI2xvZ28sXG4gIC5zaW5nbGUtcmVzZWFyY2ggI2xvZ28sXG4gIC5zaW5nbGUtcmVzb3VyY2UgI2xvZ28sXG4gIC5zaW5nbGUtaW1wYWN0ICNsb2dvIHtcbiAgICBtYXJnaW4tdG9wOiA2cHg7IH1cbiAgLnNpbmdsZS1wb3N0LnNjcm9sbGVkICNsb2dvLFxuICAuc2luZ2xlLXJlc2VhcmNoLnNjcm9sbGVkICNsb2dvLFxuICAuc2luZ2xlLXJlc291cmNlLnNjcm9sbGVkICNsb2dvLFxuICAuc2luZ2xlLWltcGFjdC5zY3JvbGxlZCAjbG9nbyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG4vKi0tLS0tLS0tLS0gIFN0aWNreSBCdXR0b25zICAtLS0tLS0tLS0tKi9cbi5idXR0b25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDMwMDsgfVxuICAuYnV0dG9ucyBidXR0b24ge1xuICAgIHdpZHRoOiA1NC43NXB4O1xuICAgIGhlaWdodDogNTQuNzVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5idXR0b25zIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA3M3B4O1xuICAgICAgICBoZWlnaHQ6IDczcHg7IH0gfVxuICAuYnV0dG9ucyAjc2VhcmNodG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjUxLCAwLjMxLCAwLjI2LCAxKTsgfVxuICAgIC5idXR0b25zICNzZWFyY2h0b2dnbGUgc3ZnIHtcbiAgICAgIHdpZHRoOiAyN3B4O1xuICAgICAgaGVpZ2h0OiAyN3B4OyB9XG4gICAgICAuYnV0dG9ucyAjc2VhcmNodG9nZ2xlIHN2ZyBwYXRoIHtcbiAgICAgICAgZmlsbDogIzAwMzI2MjtcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjJzIGN1YmljLWJlemllcigwLjUxLCAwLjMxLCAwLjI2LCAxKTsgfVxuICAgIC5idXR0b25zICNzZWFyY2h0b2dnbGU6aG92ZXIsIC5idXR0b25zICNzZWFyY2h0b2dnbGU6Zm9jdXMsIC5idXR0b25zICNzZWFyY2h0b2dnbGUuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNkM2U4ZTk7IH1cbiAgLmJ1dHRvbnMgI21lbnV0b2dnbGUge1xuICAgIGJhY2tncm91bmQ6ICMwMDMyNjI7IH1cbiAgICAuYnV0dG9ucyAjbWVudXRvZ2dsZSAuaW5zaWRlIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjUxLCAwLjMxLCAwLjI2LCAxKTsgfVxuICAgIC5idXR0b25zICNtZW51dG9nZ2xlIHNwYW4ge1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjUxLCAwLjMxLCAwLjI2LCAxKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7IH1cbiAgICAgIC5idXR0b25zICNtZW51dG9nZ2xlIHNwYW46bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtOHB4KTsgfVxuICAgICAgLmJ1dHRvbnMgI21lbnV0b2dnbGUgc3BhbjpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDhweCk7IH1cbiAgICAuYnV0dG9ucyAjbWVudXRvZ2dsZTpob3ZlciBzcGFuOm50aC1vZi10eXBlKDEpIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC04cHgpIHNjYWxlWCgwLjgpOyB9XG4gICAgLmJ1dHRvbnMgI21lbnV0b2dnbGU6aG92ZXIgc3BhbjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsgfVxuICAgIC5idXR0b25zICNtZW51dG9nZ2xlOmhvdmVyIHNwYW46bnRoLW9mLXR5cGUoMykge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgOHB4KSBzY2FsZVgoMC42KTsgfVxuICAgIC5idXR0b25zICNtZW51dG9nZ2xlLmFjdGl2ZSAuaW5zaWRlIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAuYnV0dG9ucyAjbWVudXRvZ2dsZS5hY3RpdmUgc3BhbjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIC02cHgpIHNjYWxlWCgxKSByb3RhdGUoNDVkZWcpOyB9XG4gICAgLmJ1dHRvbnMgI21lbnV0b2dnbGUuYWN0aXZlIHNwYW46bnRoLW9mLXR5cGUoMikge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7IH1cbiAgICAuYnV0dG9ucyAjbWVudXRvZ2dsZS5hY3RpdmUgc3BhbjpudGgtb2YtdHlwZSgzKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzcHgsIDhweCkgc2NhbGVYKDEpIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi5zdXBwb3J0dXMge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTUwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMzBweCk7IH1cbiAgLnN1cHBvcnR1cyBiIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjUxLCAwLjMxLCAwLjI2LCAxKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLnNjcm9sbGVkIC5zdXBwb3J0dXMge1xuICAgIHdpZHRoOiA1NC43NXB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDU0Ljc1cHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zY3JvbGxlZCAuc3VwcG9ydHVzIHtcbiAgICAgICAgd2lkdGg6IDczcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDczcHgpO1xuICAgICAgICBwYWRkaW5nLXRvcDogMjNweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjNweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAgIC5zY3JvbGxlZCAuc3VwcG9ydHVzIGIge1xuICAgICAgbWF4LXdpZHRoOiAwOyB9XG4gICAgLnNjcm9sbGVkIC5zdXBwb3J0dXMgc3ZnIHtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gICAgLnNjcm9sbGVkIC5zdXBwb3J0dXM6aG92ZXIsIC5zY3JvbGxlZCAuc3VwcG9ydHVzOmZvY3VzLCAuc2Nyb2xsZWQgLnN1cHBvcnR1czphY3RpdmUge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIC5zY3JvbGxlZCAuc3VwcG9ydHVzOmhvdmVyIHN2ZywgLnNjcm9sbGVkIC5zdXBwb3J0dXM6Zm9jdXMgc3ZnLCAuc2Nyb2xsZWQgLnN1cHBvcnR1czphY3RpdmUgc3ZnIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5zY3JvbGxlZCAuc3VwcG9ydHVzOmhvdmVyIGIsIC5zY3JvbGxlZCAuc3VwcG9ydHVzOmZvY3VzIGIsIC5zY3JvbGxlZCAuc3VwcG9ydHVzOmFjdGl2ZSBiIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zdXBwb3J0dXMge1xuICAgICAgdG9wOiAyMzBweDsgfSB9XG5cbiNoZXJvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAjaGVybzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC0xODBkZWcsICMxNDg2YzggMCUsICM3NTlhN2QgNDIlLCAjZmRiNTE1IDEwMCUsIHJnYmEoMCwgMCwgMCwgMC4wMSkgMTAwJSk7IH1cbiAgI2hlcm8gLndhdGVybWFyayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA2MCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAyMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgI2hlcm8gLnRleHQge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICBwYWRkaW5nLXRvcDogMjUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgI2hlcm8gLnRleHQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNTBweDtcbiAgICAgICAgd2lkdGg6IDcwJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICNoZXJvIC50ZXh0IHtcbiAgICAgICAgd2lkdGg6IDgwJTsgfSB9XG4gICAgI2hlcm8gLnRleHQgaDEge1xuICAgICAgbWFyZ2luOiAwIDAgMnJlbTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgI2hlcm8gLnRleHQgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICdBcm5vUHJvJztcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAxNTAlO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gM3JlbTtcbiAgICAgIG1heC13aWR0aDogODAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAjaGVybyAudGV4dCBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMDAlOyB9IH1cbiAgICAjaGVybyAudGV4dCAuc2l0ZS1idXR0b24gc3ZnIHBhdGgge1xuICAgICAgZmlsbDogI2ZmZjsgfVxuXG4jcGFnZS1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGhlaWdodDogMjgwcHg7XG4gIHBhZGRpbmctdG9wOiA1NC43NXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgI3BhZ2UtaGVhZGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3M3B4OyB9IH1cbiAgI3BhZ2UtaGVhZGVyIGgxLFxuICAjcGFnZS1oZWFkZXIgc3Bhbi5oZWFkZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDA7IH1cbiAgI3BhZ2UtaGVhZGVyLmhhcy1vdmVybGF5OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgtMTgwZGVnLCAjMTQ4NmM4IDAlLCAjNzU5YTdkIDQyJSwgI2ZkYjUxNSAxMDAlKTsgfVxuICAjcGFnZS1oZWFkZXIuaGFzLW92ZXJsYXk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAjcGFnZS1oZWFkZXIuc2xpdmVyIHtcbiAgICBoZWlnaHQ6IDczcHg7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICAuc2xpY2stbGlzdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stbGlzdC5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDsgfVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay10cmFjazpiZWZvcmUsIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDFlbTtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBbZGlyPSdydGwnXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zbGljay1hcnJvdyB7XG4gIHdpZHRoOiA1NXB4O1xuICBoZWlnaHQ6IDU1cHg7XG4gIG1hcmdpbjogMCAtMXB4IDAgMDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAuc2xpY2stYXJyb3cgc3ZnIHtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICAgIGxlZnQ6IC01cHg7IH1cbiAgICAuc2xpY2stYXJyb3cgc3ZnIHBhdGgge1xuICAgICAgZmlsbDogIzE0ODZjODsgfVxuICAuc2xpY2stYXJyb3cuc2xpY2stcHJldiBzdmcge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MG1zOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDUwbXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzEwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4yczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjI1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMzAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzMwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzMwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzMwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzM1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSczNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjM1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzM1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSczNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4zNXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzQwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc0MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjRzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc0MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNDAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzQwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc0MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc0NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNDUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC40NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzQ1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc0NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNDUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzQ1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNDVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc1MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzUwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC41czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzU1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNTVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzU1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc1NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjU1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNjAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzYwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNnM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzYwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc2MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNjAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzYwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNnM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzY1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc2NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjY1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzY1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc2NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC42NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzcwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc3MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjdzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc3MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNzAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzcwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc3MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjdzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc3NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC43NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Jzc1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc3NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNzUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9Jzc1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNzVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc4MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nODAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC44czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nODAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzgwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc4MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nODAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC44czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nODUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249Jzg1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuODVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc4NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nODUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Jzg1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc4NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjg1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nOTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzkwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuOXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzkwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc5MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nOTAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzkwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuOXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249Jzk1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc5NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjk1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nOTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9Jzk1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc5NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nOTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC45NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzEwMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTAwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDFzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTAwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzEwNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTA1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMDVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMDUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTA1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS4wNXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzExMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTEwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzExMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTEwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMTAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzExMDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjFzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzExNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjE1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTE1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzExNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTE1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuMTVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMjAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEyMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjJzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMjAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzEyMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTIwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS4yczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTI1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxMjUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4yNXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEyNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTI1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMjUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzEyNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjI1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTMwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxMzAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4zczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTMwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMzAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEzMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTMwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuM3M7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzEzNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTM1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMzVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzEzNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTM1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS4zNXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzE0MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTQwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE0MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTQwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNDAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE0MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjRzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxNDUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE0NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjQ1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTQ1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNDUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE0NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTQ1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuNDVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxNTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE1MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTUwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS41czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTU1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxNTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS41NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE1NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTU1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNTUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjU1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTYwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxNjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS42czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTYwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE2MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTYwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuNnM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzE2NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTY1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNjVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE2NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTY1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS42NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzE3MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTcwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuN3M7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE3MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTcwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNzAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE3MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjdzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxNzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE3NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjc1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTc1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE3NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTc1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuNzVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxODAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE4MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjhzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxODAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE4MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTgwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxODAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS44czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTg1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxODUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS44NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE4NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTg1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxODUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE4NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjg1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTkwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxOTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS45czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTkwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxOTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE5MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTkwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuOXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzE5NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTk1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuOTVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxOTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE5NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTk1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxOTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS45NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzIwMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjAwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDJzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIwMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjAwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMnM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzIwNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjA1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuMDVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMDUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIwNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjA1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi4wNXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzIxMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjEwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuMXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIxMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjEwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMTAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIxMDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjFzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyMTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIxNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjE1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjE1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIxNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjE1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuMTVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyMjAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIyMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjJzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMjAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIyMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjIwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi4yczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjI1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyMjUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4yNXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIyNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjI1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMjUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIyNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjI1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjMwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyMzAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4zczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjMwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMzAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIzMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjMwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuM3M7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzIzNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjM1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuMzVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIzNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjM1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi4zNXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI0MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjQwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuNHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI0MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjQwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNDAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI0MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjRzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyNDUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI0NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjQ1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjQ1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNDUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI0NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjQ1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuNDVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyNTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI1MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjUwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi41czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjU1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyNTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi41NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjU1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNTUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjU1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjYwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyNjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi42czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjYwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI2MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjYwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuNnM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI2NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjY1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuNjVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI2NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjY1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi42NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI3MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjcwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuN3M7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI3MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjcwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNzAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI3MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjdzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyNzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI3NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjc1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjc1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI3NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjc1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuNzVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyODAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI4MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjhzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyODAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI4MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjgwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyODAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi44czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjg1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyODUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi44NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI4NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjg1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyODUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI4NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjg1czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjkwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyOTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi45czsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjkwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyOTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI5MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjkwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuOXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI5NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjk1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuOTVzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyOTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI5NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjk1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyOTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi45NXM7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzMwMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMzAwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDNzOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSczMDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzMwMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzAwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogM3M7IH1cbiAgW2RhdGEtYW9zXSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdsaW5lYXInXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2xpbmVhciddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC4yNSwgMC43NSwgMC43NSk7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLW91dCddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLW91dCddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1vdXQnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLWJhY2snXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tYmFjayddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42LCAtMC4yOCwgMC43MzUsIDAuMDQ1KTsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2Utb3V0LWJhY2snXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2Utb3V0LWJhY2snXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1vdXQtYmFjayddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1vdXQtYmFjayddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tc2luZSddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1zaW5lJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ3LCAwLCAwLjc0NSwgMC43MTUpOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQtc2luZSddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQtc2luZSddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4zOSwgMC41NzUsIDAuNTY1LCAxKTsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LXNpbmUnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LXNpbmUnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDQ1LCAwLjA1LCAwLjU1LCAwLjk1KTsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tcXVhZCddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1xdWFkJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA4NSwgMC42OCwgMC41Myk7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLW91dC1xdWFkJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLW91dC1xdWFkJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LXF1YWQnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LXF1YWQnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1jdWJpYyddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1jdWJpYyddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQtY3ViaWMnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2Utb3V0LWN1YmljJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTsgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LWN1YmljJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLW91dC1jdWJpYyddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NTUsIDAuMDMsIDAuNTE1LCAwLjk1NSk7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLXF1YXJ0J10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLXF1YXJ0J10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA4NSwgMC42OCwgMC41Myk7IH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLW91dC1xdWFydCddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQtcXVhcnQnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1vdXQtcXVhcnQnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LXF1YXJ0J10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3NePSdmYWRlJ11bZGF0YS1hb3NePSdmYWRlJ10ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgLXdlYmtpdC10cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3NePSdmYWRlJ11bZGF0YS1hb3NePSdmYWRlJ10uYW9zLWFuaW1hdGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSdmYWRlLXVwJ10ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCk7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZhZGUtZG93biddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDBweCwgMCk7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZhZGUtcmlnaHQnXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDAsIDApOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSdmYWRlLWxlZnQnXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAwLCAwKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmFkZS11cC1yaWdodCddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAxMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDEwMHB4LCAwKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmFkZS11cC1sZWZ0J10ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMTAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIDEwMHB4LCAwKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmFkZS1kb3duLXJpZ2h0J10ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIC0xMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIC0xMDBweCwgMCk7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZhZGUtZG93bi1sZWZ0J10ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgLTEwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAtMTAwcHgsIDApOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zXj0nem9vbSddW2RhdGEtYW9zXj0nem9vbSddIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIC13ZWJraXQtdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zXj0nem9vbSddW2RhdGEtYW9zXj0nem9vbSddLmFvcy1hbmltYXRlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBzY2FsZSgxKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nem9vbS1pbiddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNik7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J3pvb20taW4tdXAnXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMHB4LCAwKSBzY2FsZSgwLjYpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwcHgsIDApIHNjYWxlKDAuNik7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J3pvb20taW4tZG93biddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKSBzY2FsZSgwLjYpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKSBzY2FsZSgwLjYpOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLWluLXJpZ2h0J10ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDAsIDApIHNjYWxlKDAuNik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDAsIDApIHNjYWxlKDAuNik7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J3pvb20taW4tbGVmdCddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIDAsIDApIHNjYWxlKDAuNik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMCwgMCkgc2NhbGUoMC42KTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nem9vbS1vdXQnXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLW91dC11cCddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwcHgsIDApIHNjYWxlKDEuMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCkgc2NhbGUoMS4yKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nem9vbS1vdXQtZG93biddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKSBzY2FsZSgxLjIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKSBzY2FsZSgxLjIpOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLW91dC1yaWdodCddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAwLCAwKSBzY2FsZSgxLjIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAwLCAwKSBzY2FsZSgxLjIpOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLW91dC1sZWZ0J10ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMCwgMCkgc2NhbGUoMS4yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAwLCAwKSBzY2FsZSgxLjIpOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zXj0nc2xpZGUnXVtkYXRhLWFvc149J3NsaWRlJ10ge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvc149J3NsaWRlJ11bZGF0YS1hb3NePSdzbGlkZSddLmFvcy1hbmltYXRlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nc2xpZGUtdXAnXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J3NsaWRlLWRvd24nXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nc2xpZGUtcmlnaHQnXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nc2xpZGUtbGVmdCddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvc149J2ZsaXAnXVtkYXRhLWFvc149J2ZsaXAnXSB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSdmbGlwLWxlZnQnXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgtMTAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgtMTAwZGVnKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmxpcC1sZWZ0J10uYW9zLWFuaW1hdGUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMCk7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZsaXAtcmlnaHQnXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgxMDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDEwMGRlZyk7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZsaXAtcmlnaHQnXS5hb3MtYW5pbWF0ZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmxpcC11cCddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKC0xMDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKC0xMDBkZWcpOyB9XG4gIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSdmbGlwLXVwJ10uYW9zLWFuaW1hdGUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMCk7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZsaXAtZG93biddIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDEwMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMTAwZGVnKTsgfVxuICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmxpcC1kb3duJ10uYW9zLWFuaW1hdGUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMCk7IH0gfVxuXG4vKlxuICogQ29udGFpbmVyIHN0eWxlXG4gKi9cbi5wcyB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogYXV0bztcbiAgLW1zLXRvdWNoLWFjdGlvbjogYXV0bzsgfVxuXG4vKlxuICogU2Nyb2xsYmFyIHJhaWwgc3R5bGVzXG4gKi9cbi5wc19fcmFpbC14IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGxpbmVhciwgb3BhY2l0eSAwLjJzIGxpbmVhcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgbGluZWFyLCBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICBoZWlnaHQ6IDE1cHg7XG4gIC8qIHRoZXJlIG11c3QgYmUgJ2JvdHRvbScgb3IgJ3RvcCcgZm9yIHBzX19yYWlsLXggKi9cbiAgYm90dG9tOiAwcHg7XG4gIC8qIHBsZWFzZSBkb24ndCBjaGFuZ2UgJ3Bvc2l0aW9uJyAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnBzX19yYWlsLXkge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgbGluZWFyLCBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gIHdpZHRoOiAxNXB4O1xuICAvKiB0aGVyZSBtdXN0IGJlICdyaWdodCcgb3IgJ2xlZnQnIGZvciBwc19fcmFpbC15ICovXG4gIHJpZ2h0OiAwO1xuICAvKiBwbGVhc2UgZG9uJ3QgY2hhbmdlICdwb3NpdGlvbicgKi9cbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5wcy0tYWN0aXZlLXggPiAucHNfX3JhaWwteCxcbi5wcy0tYWN0aXZlLXkgPiAucHNfX3JhaWwteSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ucHM6aG92ZXIgPiAucHNfX3JhaWwteCxcbi5wczpob3ZlciA+IC5wc19fcmFpbC15LFxuLnBzLS1mb2N1cyA+IC5wc19fcmFpbC14LFxuLnBzLS1mb2N1cyA+IC5wc19fcmFpbC15LFxuLnBzLS1zY3JvbGxpbmcteCA+IC5wc19fcmFpbC14LFxuLnBzLS1zY3JvbGxpbmcteSA+IC5wc19fcmFpbC15IHtcbiAgb3BhY2l0eTogMC42OyB9XG5cbi5wcyAucHNfX3JhaWwteDpob3Zlcixcbi5wcyAucHNfX3JhaWwteTpob3Zlcixcbi5wcyAucHNfX3JhaWwteDpmb2N1cyxcbi5wcyAucHNfX3JhaWwteTpmb2N1cyxcbi5wcyAucHNfX3JhaWwteC5wcy0tY2xpY2tpbmcsXG4ucHMgLnBzX19yYWlsLXkucHMtLWNsaWNraW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgb3BhY2l0eTogMC45OyB9XG5cbi8qXG4gKiBTY3JvbGxiYXIgdGh1bWIgc3R5bGVzXG4gKi9cbi5wc19fdGh1bWIteCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGxpbmVhciwgaGVpZ2h0IDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGxpbmVhciwgaGVpZ2h0IDAuMnMgZWFzZS1pbi1vdXQ7XG4gIGhlaWdodDogNnB4O1xuICAvKiB0aGVyZSBtdXN0IGJlICdib3R0b20nIGZvciBwc19fdGh1bWIteCAqL1xuICBib3R0b206IDJweDtcbiAgLyogcGxlYXNlIGRvbid0IGNoYW5nZSAncG9zaXRpb24nICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ucHNfX3RodW1iLXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIHdpZHRoIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGxpbmVhciwgd2lkdGggMC4ycyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDZweDtcbiAgLyogdGhlcmUgbXVzdCBiZSAncmlnaHQnIGZvciBwc19fdGh1bWIteSAqL1xuICByaWdodDogMnB4O1xuICAvKiBwbGVhc2UgZG9uJ3QgY2hhbmdlICdwb3NpdGlvbicgKi9cbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5wc19fcmFpbC14OmhvdmVyID4gLnBzX190aHVtYi14LFxuLnBzX19yYWlsLXg6Zm9jdXMgPiAucHNfX3RodW1iLXgsXG4ucHNfX3JhaWwteC5wcy0tY2xpY2tpbmcgLnBzX190aHVtYi14IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbiAgaGVpZ2h0OiAxMXB4OyB9XG5cbi5wc19fcmFpbC15OmhvdmVyID4gLnBzX190aHVtYi15LFxuLnBzX19yYWlsLXk6Zm9jdXMgPiAucHNfX3RodW1iLXksXG4ucHNfX3JhaWwteS5wcy0tY2xpY2tpbmcgLnBzX190aHVtYi15IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbiAgd2lkdGg6IDExcHg7IH1cblxuLyogTVMgc3VwcG9ydHMgKi9cbkBzdXBwb3J0cyAoLW1zLW92ZXJmbG93LXN0eWxlOiBub25lKSB7XG4gIC5wcyB7XG4gICAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5wcyB7XG4gICAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDsgfSB9XG5cbmJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uaGFzLWJ1dHRvbiB7XG4gIG1hcmdpbjogM3JlbSAwIDFyZW07IH1cblxuLnNpdGUtYnV0dG9uIHtcbiAgcGFkZGluZzogMnB4IDI1cHggMDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAxLjE4cHg7XG4gIGZvbnQtc2l6ZTogNjUlO1xuICBiYWNrZ3JvdW5kOiAjMTQ4NmM4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaXRlLWJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDc1JTsgfSB9XG4gIC5zaXRlLWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzEyNzZiMTsgfVxuICAgIC5zaXRlLWJ1dHRvbjpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApOyB9XG4gIC5zaXRlLWJ1dHRvbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjUxLCAwLjMxLCAwLjI2LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zMGRlZykgdHJhbnNsYXRlKC0xMzAlLCAwKTsgfVxuICAuc2l0ZS1idXR0b24gc3ZnIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luOiAwIDAgMCAxMHB4OyB9XG4gICAgLnNpdGUtYnV0dG9uIHN2ZyBwYXRoIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjsgfVxuICAuc2l0ZS1idXR0b24gc3BhbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDsgfVxuICAuc2l0ZS1idXR0b24ub3JhbmdlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmM2NjA1OyB9XG4gICAgLnNpdGUtYnV0dG9uLm9yYW5nZTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTU1YzAzOyB9XG4gIC5zaXRlLWJ1dHRvbi5oYXMtcGx1cyBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gICAgbWFyZ2luOiAwIDEwcHggMCAwOyB9XG4gIC5zaXRlLWJ1dHRvbi5oYXMtYXJyb3cgc3ZnIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICAgIG1hcmdpbjogMCAwIDAgMTBweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIC5zaXRlLWJ1dHRvbi5oYXMtYXJyb3cgc3ZnIHBhdGgge1xuICAgICAgZmlsbDogI2ZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaXRlLWJ1dHRvbi5yZWFkbW9yZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAuc2l0ZS1idXR0b24ucmVhZG1vcmUgc3ZnIHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5zaXRlLWJ1dHRvbi5yZWFkbW9yZSBiIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXgtd2lkdGg6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjUxLCAwLjMxLCAwLjI2LCAxKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgLnNpdGUtYnV0dG9uLnJlYWRtb3JlOmhvdmVyIGIge1xuICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9IH1cbiAgLnNpdGUtYnV0dG9uLm5ha2VkIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2ZkYjUxNTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnNpdGUtYnV0dG9uLm5ha2VkIHN2ZyBwYXRoIHtcbiAgICAgIGZpbGw6ICNmZGI1MTU7IH1cbiAgICAuc2l0ZS1idXR0b24ubmFrZWQ6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5zaXRlLWJ1dHRvbi5uYWtlZDpob3ZlciBzdmcgcGF0aCB7XG4gICAgICAgIGZpbGw6ICNmZmY7IH1cbiAgLnNpdGUtYnV0dG9uLmJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjMDAzMjYyO1xuICAgIGNvbG9yOiAjMDAzMjYyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5zaXRlLWJ1dHRvbi5ib3JkZXJlZC1vcmFuZ2Uge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmYzY2MDU7XG4gICAgY29sb3I6ICNmYzY2MDU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2l0ZS1idXR0b24uYm9yZGVyZWQtb3JhbmdlLmljb24tb25seSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAuc2l0ZS1idXR0b24uYm9yZGVyZWQtb3JhbmdlLmljb24tb25seSBzdmcge1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgLnNpdGUtYnV0dG9uLmJvcmRlcmVkLW9yYW5nZS5pY29uLW9ubHkgc3ZnIHBhdGgge1xuICAgICAgICAgIGZpbGw6ICNmYzY2MDU7IH1cbiAgLnNpdGUtYnV0dG9uLmJvcmRlcmVkLXllbGxvdyB7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZkYjUxNTtcbiAgICBjb2xvcjogI2ZkYjUxNTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zaXRlLWJ1dHRvbi5ib3JkZXJlZC15ZWxsb3cuaWNvbi1vbmx5IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgICAgIC5zaXRlLWJ1dHRvbi5ib3JkZXJlZC15ZWxsb3cuaWNvbi1vbmx5IHN2ZyB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAuc2l0ZS1idXR0b24uYm9yZGVyZWQteWVsbG93Lmljb24tb25seSBzdmcgcGF0aCB7XG4gICAgICAgICAgZmlsbDogI2ZkYjUxNTsgfVxuICAuc2l0ZS1idXR0b24uYm9yZGVyZWQtZ3JleSB7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzlkOTg5MjtcbiAgICBjb2xvcjogIzlkOTg5MjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zaXRlLWJ1dHRvbi5ib3JkZXJlZC1ncmV5Lmljb24tb25seSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAuc2l0ZS1idXR0b24uYm9yZGVyZWQtZ3JleS5pY29uLW9ubHkgc3ZnIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgIC5zaXRlLWJ1dHRvbi5ib3JkZXJlZC1ncmV5Lmljb24tb25seSBzdmcgcGF0aCB7XG4gICAgICAgICAgZmlsbDogIzlkOTg5MjsgfVxuICAuc2l0ZS1idXR0b24uYm9yZGVyZWQtYmx1ZSB7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzE0ODZjODtcbiAgICBjb2xvcjogIzE0ODZjODtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zaXRlLWJ1dHRvbi5ib3JkZXJlZC1ibHVlLmljb24tb25seSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAuc2l0ZS1idXR0b24uYm9yZGVyZWQtYmx1ZS5pY29uLW9ubHkgc3ZnIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgIC5zaXRlLWJ1dHRvbi5ib3JkZXJlZC1ibHVlLmljb24tb25seSBzdmcgcGF0aCB7XG4gICAgICAgICAgZmlsbDogIzE0ODZjODsgfVxuXG4udmVydGFycm93IHtcbiAgd2lkdGg6IDE5cHg7XG4gIGhlaWdodDogMjdweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMnJlbSBhdXRvO1xuICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHg9XCIwcHhcIiB5PVwiMHB4XCIgdmlld0JveD1cIjAgMCAxOC45IDQ3XCI+PHBhdGggZD1cIk05LjcsMGwwLDQ1LjhoLTFMOC43LDBMOS43LDB6XCIgZmlsbD1cIiMxNDg2YzhcIi8+PHBhdGggZD1cIk0xOC4yLDM3LjNsLTksOSBNOS4yLDQ2LjNsLTguNS04LjVcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIiMxNDg2YzhcIiBzdHJva2UtbGluZWNhcD1cInNxdWFyZVwiLz48L3N2Zz4nKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZlcnRhcnJvdyB7XG4gICAgICBoZWlnaHQ6IDQ3cHg7IH0gfVxuICAudmVydGFycm93LmFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7IH1cblxuLyotLS0tLS0tLS0tICBDYXJkIEhvbGRlciAgLS0tLS0tLS0tLSovXG4uaGFzLWNhcmRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAzJTtcbiAgcGFkZGluZy1yaWdodDogMyU7IH1cblxuLyotLS0tLS0tLS0tICBDYXJkIEdsb2JhbHMgIC0tLS0tLS0tLS0qL1xuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZmxleDogMCAxIDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5jYXJkIHtcbiAgICAgIGZsZXg6IDAgMSA0OCU7IH1cbiAgICAgIC5jYXJkOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDElO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgLmNhcmQ6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgICAgICBtYXJnaW4tbGVmdDogMSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNhcmQge1xuICAgICAgZmxleDogMCAxIDMyJTsgfVxuICAgICAgLmNhcmQ6bnRoLW9mLXR5cGUoM24tMSk6bm90KC5jYXJkLWluLW5ld3MpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIlOyB9IH1cbiAgLmNhcmQ6aG92ZXIgLmltYWdlOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuICAuY2FyZDpob3ZlciAuaW1hZ2U6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYXJkOmhvdmVyIC5yZWFkbW9yZSBiIHtcbiAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9IH1cbiAgLmNhcmQgLmNhdGxpbmUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzJjMmMyO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBmb250LWZhbWlseTogJ0Fybm9Qcm8nOyB9XG4gIC5jYXJkIC5sYWJlbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW46IDFyZW0gMDsgfVxuICAuY2FyZCAuZGF0ZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGNvbG9yOiAjYTdhN2E3O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuY2FyZCBoMywgLmNhcmQgI3BhZ2UtaW50cm8gaDIsICNwYWdlLWludHJvIC5jYXJkIGgyLFxuICAuY2FyZCAjcGFnZS1pbnRybyBoMywgI3BhZ2UtaW50cm8gLmNhcmQgaDMsXG4gIC5jYXJkICNwYWdlLWludHJvIGg0LCAjcGFnZS1pbnRybyAuY2FyZCBoNCwgLmNhcmQgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMiwgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAuY2FyZCBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIC5jYXJkIGgzIGEsIC5jYXJkICNwYWdlLWludHJvIGgyIGEsICNwYWdlLWludHJvIC5jYXJkIGgyIGEsIC5jYXJkICNwYWdlLWludHJvIGgzIGEsICNwYWdlLWludHJvIC5jYXJkIGgzIGEsIC5jYXJkICNwYWdlLWludHJvIGg0IGEsICNwYWdlLWludHJvIC5jYXJkIGg0IGEsIC5jYXJkIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIgYSwgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAuY2FyZCBoMiBhIHtcbiAgICAgIGNvbG9yOiAjMDAzMjYyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5jYXJkIC5yZWFkbW9yZSB7XG4gICAgICBwYWRkaW5nOiA4cHggMTBweCA1cHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYXJkIC5yZWFkbW9yZSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07IH0gfVxuICAuY2FyZCAuaW1hZ2UgKyAucmVhZG1vcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpOyB9XG4gIC5jYXJkIGhyIHtcbiAgICBtYXJnaW46IDFyZW0gYXV0byAxcmVtIDA7XG4gICAgd2lkdGg6IDMwcHg7IH1cbiAgLmNhcmQgLmNhcmQtbWV0YSB7XG4gICAgZm9udC1zaXplOiA3MCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2I5YzFjMztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAuODVlbTsgfVxuICAgIC5jYXJkIC5jYXJkLW1ldGEgc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGNvbG9yOiAjMTQ4NmM4OyB9XG4gICAgLmNhcmQgLmNhcmQtbWV0YTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiOWMxYzM7IH1cbiAgLmNhcmQgLmltYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNhcmQgLmltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAzMDBweDsgfSB9XG4gICAgLmNhcmQgLmltYWdlIGEsXG4gICAgLmNhcmQgLmltYWdlIC5uby1pbWFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5jYXJkIC5pbWFnZSBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5jYXJkIC5pbWFnZTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5jYXJkIC5pbWFnZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZmlsbC1ydWxlPVwiXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiPjxwYXRoIGZpbGw9XCJ3aGl0ZVwiIGQ9XCJNMjEuODgzIDEybC03LjUyNyA2LjIzNS42NDQuNzY1IDktNy41MjEtOS03LjQ3OS0uNjQ1Ljc2NCA3LjUyOSA2LjIzNmgtMjEuODg0djFoMjEuODgzelwiPjwvcGF0aD48L3N2Zz4nKTtcbiAgICAgIHBhZGRpbmc6IC41ZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzI2MjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuY2FyZCAuY2FyZC1ibHVlLWxhYmVscyB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luOiAxcmVtIDA7IH1cbiAgICAuY2FyZCAuY2FyZC1ibHVlLWxhYmVscyAubGFiZWwge1xuICAgICAgcGFkZGluZzogOXB4IDEwcHggNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBtYXJnaW46IDAgNXB4IDVweCAwOyB9XG4gIC5jYXJkLmNhcmQtbmV3cy1ob21lIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgLmNhcmQuY2FyZC1uZXdzLWhvbWUgLmltYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgIC5jYXJkLmNhcmQtbmV3cy1ob21lIC5pbWFnZSBpbWcge1xuICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAgIC5jYXJkLmNhcmQtbmV3cy1ob21lIC5zaXRlLWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmNhcmQuY2FyZC10d2VldCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuY2FyZC5jYXJkLW1pc2Mge1xuICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2FyZC5jYXJkLW1pc2Mge1xuICAgICAgICBmbGV4OiAwIDEgMzAlO1xuICAgICAgICB3aWR0aDogMzAlOyB9IH1cbiAgLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgaDMsIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlICNwYWdlLWludHJvIGgyLCAjcGFnZS1pbnRybyAuY2FyZC5jb250YWlucy1uby1pbWFnZSBoMixcbiAgLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgI3BhZ2UtaW50cm8gaDMsICNwYWdlLWludHJvIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlIGgzLFxuICAuY2FyZC5jb250YWlucy1uby1pbWFnZSAjcGFnZS1pbnRybyBoNCwgI3BhZ2UtaW50cm8gLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgaDQsIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIsIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgaDIge1xuICAgIGZvbnQtc2l6ZTogMTY4JTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2FyZC5jb250YWlucy1uby1pbWFnZSBoMywgLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgI3BhZ2UtaW50cm8gaDIsICNwYWdlLWludHJvIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlIGgyLFxuICAgICAgLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgI3BhZ2UtaW50cm8gaDMsICNwYWdlLWludHJvIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlIGgzLFxuICAgICAgLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgI3BhZ2UtaW50cm8gaDQsICNwYWdlLWludHJvIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlIGg0LCAuY2FyZC5jb250YWlucy1uby1pbWFnZSAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyLCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxODIlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgaDMsIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlICNwYWdlLWludHJvIGgyLCAjcGFnZS1pbnRybyAuY2FyZC5jb250YWlucy1uby1pbWFnZSBoMixcbiAgICAgIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlICNwYWdlLWludHJvIGgzLCAjcGFnZS1pbnRybyAuY2FyZC5jb250YWlucy1uby1pbWFnZSBoMyxcbiAgICAgIC5jYXJkLmNvbnRhaW5zLW5vLWltYWdlICNwYWdlLWludHJvIGg0LCAjcGFnZS1pbnRybyAuY2FyZC5jb250YWlucy1uby1pbWFnZSBoNCwgLmNhcmQuY29udGFpbnMtbm8taW1hZ2UgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMiwgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAuY2FyZC5jb250YWlucy1uby1pbWFnZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjI0JTsgfSB9XG4gIC5jYXJkLnRheG9ub215LWNhcmQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjMTQ4NmM4ICFpbXBvcnRhbnQ7IH1cbiAgICAuY2FyZC50YXhvbm9teS1jYXJkIC5pbnNpZGUge1xuICAgICAgbWluLWhlaWdodDogMjUwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLmNhcmQudGF4b25vbXktY2FyZCAuaW5zaWRlIGgzLCAuY2FyZC50YXhvbm9teS1jYXJkIC5pbnNpZGUgI3BhZ2UtaW50cm8gaDIsICNwYWdlLWludHJvIC5jYXJkLnRheG9ub215LWNhcmQgLmluc2lkZSBoMixcbiAgICAgIC5jYXJkLnRheG9ub215LWNhcmQgLmluc2lkZSAjcGFnZS1pbnRybyBoMywgI3BhZ2UtaW50cm8gLmNhcmQudGF4b25vbXktY2FyZCAuaW5zaWRlIGgzLFxuICAgICAgLmNhcmQudGF4b25vbXktY2FyZCAuaW5zaWRlICNwYWdlLWludHJvIGg0LCAjcGFnZS1pbnRybyAuY2FyZC50YXhvbm9teS1jYXJkIC5pbnNpZGUgaDQsIC5jYXJkLnRheG9ub215LWNhcmQgLmluc2lkZSAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyLCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC5jYXJkLnRheG9ub215LWNhcmQgLmluc2lkZSBoMiB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAuY2FyZC50YXhvbm9teS1jYXJkIC5pbnNpZGUgaDQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogNzAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FyZC50YXhvbm9teS1jYXJkIC5pbnNpZGUge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jYXJkLnRheG9ub215LWNhcmQgLmluc2lkZSB7XG4gICAgICAgICAgbWluLWhlaWdodDogMzUwcHg7IH0gfVxuICAuY2FyZC5ldmVudC1jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2FyZC5ldmVudC1jYXJkIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNhcmQuZXZlbnQtY2FyZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH0gfVxuICAgIC5jYXJkLmV2ZW50LWNhcmQgLmltYWdlIHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIC5jYXJkLmV2ZW50LWNhcmQgLmltYWdlIGltZyB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FyZC5ldmVudC1jYXJkIC5pbWFnZSB7XG4gICAgICAgICAgZmxleDogMCAxIDMyJTtcbiAgICAgICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAgIC5jYXJkLmV2ZW50LWNhcmQgLmV2ZW50LWluZm8ge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNhcmQuZXZlbnQtY2FyZCAuZXZlbnQtaW5mbyB7XG4gICAgICAgICAgZmxleDogMCAxIDMyJTtcbiAgICAgICAgICB3aWR0aDogMzIlOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5jYXJkLmV2ZW50LWNhcmQgLmV2ZW50LWluZm8gLmxhYmVsIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgICAgIC5jYXJkLmV2ZW50LWNhcmQgLmV2ZW50LWluZm8gLnNtYWxsLWxhYmVsLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLmNhcmQuZXZlbnQtY2FyZCAuZXZlbnQtd3JpdGV1cCB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiA4MCU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5jYXJkLmV2ZW50LWNhcmQgLmV2ZW50LXdyaXRldXAge1xuICAgICAgICAgIGZsZXg6IDAgMSAzMiU7XG4gICAgICAgICAgd2lkdGg6IDMyJTtcbiAgICAgICAgICBmb250LXNpemU6IDc1JTsgfSB9XG4gIC5jYXJkLmNhcmVlci1jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNhcmQuY2FyZWVyLWNhcmQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2FyZC5jYXJlZXItY2FyZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfSB9XG4gICAgLmNhcmQuY2FyZWVyLWNhcmQgLmV2ZW50LWluZm8ge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNhcmQuY2FyZWVyLWNhcmQgLmV2ZW50LWluZm8ge1xuICAgICAgICAgIGZsZXg6IDAgMSAzNyU7XG4gICAgICAgICAgd2lkdGg6IDM3JTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FyZC5jYXJlZXItY2FyZCAuZXZlbnQtaW5mbyAubGFiZWwge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAgICAgLmNhcmQuY2FyZWVyLWNhcmQgLmV2ZW50LWluZm8gLnNtYWxsLWxhYmVsLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLmNhcmQuY2FyZWVyLWNhcmQgLmV2ZW50LXdyaXRldXAge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogODAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FyZC5jYXJlZXItY2FyZCAuZXZlbnQtd3JpdGV1cCB7XG4gICAgICAgICAgZmxleDogMCAxIDYwJTtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogNzUlOyB9IH1cbiAgICAgIC5jYXJkLmNhcmVlci1jYXJkIC5ldmVudC13cml0ZXVwIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5jYXJkLmluaXRpYXRpdmUtY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jYXJkLmluaXRpYXRpdmUtY2FyZCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgIC5jYXJkLmluaXRpYXRpdmUtY2FyZCAuaW1hZ2Uge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5jYXJkLmluaXRpYXRpdmUtY2FyZCAuaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgZmxleDogMCAxIDQwJTtcbiAgICAgICAgICB3aWR0aDogNDAlOyB9IH1cbiAgICAuY2FyZC5pbml0aWF0aXZlLWNhcmQgLmluaXRpYXRpdmUtaW5mbyB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FyZC5pbml0aWF0aXZlLWNhcmQgLmluaXRpYXRpdmUtaW5mbyB7XG4gICAgICAgICAgZmxleDogMCAxIDYwJTtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNSU7IH0gfVxuICAgIC5jYXJkLmluaXRpYXRpdmUtY2FyZCBoMyBhLCAuY2FyZC5pbml0aWF0aXZlLWNhcmQgI3BhZ2UtaW50cm8gaDIgYSwgI3BhZ2UtaW50cm8gLmNhcmQuaW5pdGlhdGl2ZS1jYXJkIGgyIGEsIC5jYXJkLmluaXRpYXRpdmUtY2FyZCAjcGFnZS1pbnRybyBoMyBhLCAjcGFnZS1pbnRybyAuY2FyZC5pbml0aWF0aXZlLWNhcmQgaDMgYSwgLmNhcmQuaW5pdGlhdGl2ZS1jYXJkICNwYWdlLWludHJvIGg0IGEsICNwYWdlLWludHJvIC5jYXJkLmluaXRpYXRpdmUtY2FyZCBoNCBhLCAuY2FyZC5pbml0aWF0aXZlLWNhcmQgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMiBhLCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC5jYXJkLmluaXRpYXRpdmUtY2FyZCBoMiBhIHtcbiAgICAgIGNvbG9yOiAjZmM2NjA1OyB9XG4gICAgLmNhcmQuaW5pdGlhdGl2ZS1jYXJkIHAge1xuICAgICAgZm9udC1zaXplOiA4MCU7IH1cbiAgLmNhcmQuY2FyZC1pbi10YXgge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2FyZC5jYXJkLWluLXRheCB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIGZsZXg6IDAgMSA0NyU7XG4gICAgICAgIHdpZHRoOiA0NyU7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2FyZC5jYXJkLWluLXRheCB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIGZsZXg6IDAgMSAzMCU7XG4gICAgICAgIHdpZHRoOiAzMCU7IH0gfVxuICAgIC5jYXJkLmNhcmQtaW4tdGF4IC5sYWJlbCB7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNhcmQuY2FyZC1pbi10YXggLmxhYmVsIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAycmVtOyB9IH1cbiAgICAuY2FyZC5jYXJkLWluLXRheCBoMywgLmNhcmQuY2FyZC1pbi10YXggI3BhZ2UtaW50cm8gaDIsICNwYWdlLWludHJvIC5jYXJkLmNhcmQtaW4tdGF4IGgyLFxuICAgIC5jYXJkLmNhcmQtaW4tdGF4ICNwYWdlLWludHJvIGgzLCAjcGFnZS1pbnRybyAuY2FyZC5jYXJkLWluLXRheCBoMyxcbiAgICAuY2FyZC5jYXJkLWluLXRheCAjcGFnZS1pbnRybyBoNCwgI3BhZ2UtaW50cm8gLmNhcmQuY2FyZC1pbi10YXggaDQsIC5jYXJkLmNhcmQtaW4tdGF4IC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIsIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLmNhcmQuY2FyZC1pbi10YXggaDIge1xuICAgICAgZm9udC1zaXplOiAxNjAlOyB9XG4gIC5jYXJkLmNhcmQtaW4tbmV3cyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jYXJkLmNhcmQtaW4tbmV3cyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2FyZC5jYXJkLWluLW5ld3Mge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtOyB9IH1cbiAgICAuY2FyZC5jYXJkLWluLW5ld3MgLmluc2lkZSB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FyZC5jYXJkLWluLW5ld3MgLmluc2lkZSB7XG4gICAgICAgICAgcGFkZGluZzogMnJlbTsgfSB9XG4gICAgLmNhcmQuY2FyZC1pbi1uZXdzIC5sYWJlbCB7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FyZC5jYXJkLWluLW5ld3MgLmxhYmVsIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAycmVtOyB9IH1cbiAgICAuY2FyZC5jYXJkLWluLW5ld3MgaDMsIC5jYXJkLmNhcmQtaW4tbmV3cyAjcGFnZS1pbnRybyBoMiwgI3BhZ2UtaW50cm8gLmNhcmQuY2FyZC1pbi1uZXdzIGgyLFxuICAgIC5jYXJkLmNhcmQtaW4tbmV3cyAjcGFnZS1pbnRybyBoMywgI3BhZ2UtaW50cm8gLmNhcmQuY2FyZC1pbi1uZXdzIGgzLFxuICAgIC5jYXJkLmNhcmQtaW4tbmV3cyAjcGFnZS1pbnRybyBoNCwgI3BhZ2UtaW50cm8gLmNhcmQuY2FyZC1pbi1uZXdzIGg0LCAuY2FyZC5jYXJkLWluLW5ld3MgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMiwgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAuY2FyZC5jYXJkLWluLW5ld3MgaDIge1xuICAgICAgZm9udC1zaXplOiAxNjAlOyB9XG4gICAgLmNhcmQuY2FyZC1pbi1uZXdzIC5wb3N0LWRhdGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgICAgY29sb3I6ICNiOWMxYzM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbiNtZWRpdW0gI21lZGl1bS1sb2FkaW5nIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7IH1cblxuLyotLS0tLS0tLS0tICBTbWFsbCBDYXJkcyAgLS0tLS0tLS0tLSovXG4uc21hbGwtY2FyZHMgLmNhcmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsZXg6IDAgMSAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gIC5zbWFsbC1jYXJkcyAuY2FyZCAuaW1hZ2Uge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zbWFsbC1jYXJkcyAuY2FyZCAuaW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAuc21hbGwtY2FyZHMgLmNhcmQgLmNhcmQtYmx1ZS1sYWJlbHMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiA5MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc21hbGwtY2FyZHMgLmNhcmQgLmNhcmQtYmx1ZS1sYWJlbHMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE3MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgLnNtYWxsLWNhcmRzIC5jYXJkIGhyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbWFsbC1jYXJkcyAuY2FyZCBoMywgLnNtYWxsLWNhcmRzIC5jYXJkICNwYWdlLWludHJvIGgyLCAjcGFnZS1pbnRybyAuc21hbGwtY2FyZHMgLmNhcmQgaDIsXG4gIC5zbWFsbC1jYXJkcyAuY2FyZCAjcGFnZS1pbnRybyBoMywgI3BhZ2UtaW50cm8gLnNtYWxsLWNhcmRzIC5jYXJkIGgzLFxuICAuc21hbGwtY2FyZHMgLmNhcmQgI3BhZ2UtaW50cm8gaDQsICNwYWdlLWludHJvIC5zbWFsbC1jYXJkcyAuY2FyZCBoNCwgLnNtYWxsLWNhcmRzIC5jYXJkIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIsIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLnNtYWxsLWNhcmRzIC5jYXJkIGgyIHtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiA5MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zbWFsbC1jYXJkcyAuY2FyZCBoMywgLnNtYWxsLWNhcmRzIC5jYXJkICNwYWdlLWludHJvIGgyLCAjcGFnZS1pbnRybyAuc21hbGwtY2FyZHMgLmNhcmQgaDIsXG4gICAgICAuc21hbGwtY2FyZHMgLmNhcmQgI3BhZ2UtaW50cm8gaDMsICNwYWdlLWludHJvIC5zbWFsbC1jYXJkcyAuY2FyZCBoMyxcbiAgICAgIC5zbWFsbC1jYXJkcyAuY2FyZCAjcGFnZS1pbnRybyBoNCwgI3BhZ2UtaW50cm8gLnNtYWxsLWNhcmRzIC5jYXJkIGg0LCAuc21hbGwtY2FyZHMgLmNhcmQgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMiwgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAuc21hbGwtY2FyZHMgLmNhcmQgaDIge1xuICAgICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTcwcHg7IH0gfVxuICAuc21hbGwtY2FyZHMgLmNhcmQgLmNhcmQtbWV0YSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNtYWxsLWNhcmRzIC5jYXJkIC5jYXJkLW1ldGEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE3MHB4OyB9IH1cblxuLmZsaXAtY2FyZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBmbGV4OiAwIDEgNDglO1xuICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMSU7XG4gIG1hcmdpbi1yaWdodDogMSU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmxpcC1jYXJkIHtcbiAgICAgIGZsZXg6IDAgMSAzMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuNSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNSU7IH0gfVxuICAuZmxpcC1jYXJkOmhvdmVyIC5pbnNpZGUsXG4gIC5mbGlwLWNhcmQ6Zm9jdXMgLmluc2lkZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7IH1cbiAgLmZsaXAtY2FyZCAuaW5zaWRlIHtcbiAgICB0cmFuc2l0aW9uOiAwLjZzO1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMjUwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZsaXAtY2FyZCAuaW5zaWRlIHtcbiAgICAgICAgaGVpZ2h0OiAzODVweDsgfSB9XG4gIC5mbGlwLWNhcmQgLmZyb250IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjMTQ4NmM4O1xuICAgIHBhZGRpbmc6IDJyZW0gMXJlbSAxcmVtO1xuICAgIGhlaWdodDogMjUwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlWSgwKTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5mbGlwLWNhcmQgLmZyb250OjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogMTBweDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGxpbmVhcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmxpcC1jYXJkIC5mcm9udCB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gMnJlbSAycmVtO1xuICAgICAgICBoZWlnaHQ6IDM4NXB4OyB9XG4gICAgICAgIC5mbGlwLWNhcmQgLmZyb250OjpiZWZvcmUge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgICBsZWZ0OiAyMHB4OyB9IH1cbiAgLmZsaXAtY2FyZCAuYmFjayB7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xuICAgIHBhZGRpbmc6IDJyZW0gMXJlbSAxcmVtO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmZsaXAtY2FyZCAuYmFjazo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZsaXAtY2FyZCAuYmFjayB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gMnJlbSAycmVtO1xuICAgICAgICBoZWlnaHQ6IDM4NXB4OyB9IH1cbiAgLmZsaXAtY2FyZCAuaWNvbiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAxcmVtOyB9XG4gIC5mbGlwLWNhcmQgaDQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgZm9udC1zaXplOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mbGlwLWNhcmQgaDQge1xuICAgICAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgICAgICBmb250LXNpemU6IDE2MCU7IH0gfVxuICAuZmxpcC1jYXJkIHAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBsaW5lLWhlaWdodDogMS4zOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgICAuZmxpcC1jYXJkIHAge1xuICAgICAgICBmb250LXNpemU6IDcwJTsgfSB9XG5cbi8qLS0tLS0tLS0tLSAgTmF2eSBCbHVlICAtLS0tLS0tLS0tKi9cbi5ibHVlLWNhcmQge1xuICBiYWNrZ3JvdW5kOiAjMDAzMjYyO1xuICBjb2xvcjogI2ZmZjtcbiAgZmxleDogMCAxIDQ4JTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZzogMnJlbSAxcmVtIDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGxpbmVhcjtcbiAgaGVpZ2h0OiAzMzBweDsgfVxuICAuYmx1ZS1jYXJkOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgdG9wOiAxMHB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgbGluZWFyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJsdWUtY2FyZCB7XG4gICAgICBmbGV4OiAwIDEgMzAlO1xuICAgICAgcGFkZGluZzogM3JlbSAycmVtIDJyZW07XG4gICAgICBoZWlnaHQ6IDM4NXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuNSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNSU7IH1cbiAgICAgIC5ibHVlLWNhcmQ6OmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBsZWZ0OiAyMHB4OyB9IH1cbiAgLmJsdWUtY2FyZDpob3ZlciwgLmJsdWUtY2FyZDphY3RpdmUsIC5ibHVlLWNhcmQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICMwMDI1NDk7IH1cbiAgICAuYmx1ZS1jYXJkOmhvdmVyOjpiZWZvcmUsIC5ibHVlLWNhcmQ6YWN0aXZlOjpiZWZvcmUsIC5ibHVlLWNhcmQ6Zm9jdXM6OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyB9XG4gIC5ibHVlLWNhcmQgLmluc2lkZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuYmx1ZS1jYXJkIC5pY29uIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvIDFyZW07IH1cbiAgLmJsdWUtY2FyZCBoNCB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBmb250LXNpemU6IDIyNSU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsdWUtY2FyZCBoNCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTUlOyB9IH1cbiAgLmJsdWUtY2FyZCBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB3aWR0aDogYXV0bzsgfVxuXG4uY2FyZC10d2VldCAjdHdlZXQge1xuICBmb250LXNpemU6IDE1cHg7XG4gIG1hcmdpbjogMXJlbSAwO1xuICBmb250LWZhbWlseTogSGVsdmV0aWNhLCBSb2JvdG8sIFwiU2Vnb2UgVUlcIiwgQ2FsaWJyaSwgc2Fucy1zZXJpZjtcbiAgcGFkZGluZzogNXB4OyB9XG5cbi5jYXJkLXR3ZWV0IHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmNhcmQtdHdlZXQgI3R3ZWV0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNjAsIDIwMCwgMjIwLCAwLjEyKTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5jYXJkLXR3ZWV0ICN0d2VldENvbnRhaW5lciB7XG4gIHBhZGRpbmctbGVmdDogNDBweDsgfVxuXG4uY2FyZC10d2VldCAuSWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDcyJTIwNzIlMjIlM0UlM0NwYXRoJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjBkJTNEJTIyTTAlMjAwaDcydjcySDB6JTIyJTJGJTNFJTNDcGF0aCUyMGNsYXNzJTNEJTIyaWNvbiUyMiUyMGZpbGwlM0QlMjIlMjNlMWU4ZWQlMjIlMjBkJTNEJTIyTTY4LjgxMiUyMDE1LjE0Yy0yLjM0OCUyMDEuMDQtNC44NyUyMDEuNzQ0LTcuNTIlMjAyLjA2JTIwMi43MDQtMS42MiUyMDQuNzgtNC4xODYlMjA1Ljc1Ny03LjI0My0yLjUzJTIwMS41LTUuMzMlMjAyLjU5Mi04LjMxNCUyMDMuMTc2QzU2LjM1JTIwMTAuNTklMjA1Mi45NDglMjA5JTIwNDkuMTgyJTIwOWMtNy4yMyUyMDAtMTMuMDkyJTIwNS44Ni0xMy4wOTIlMjAxMy4wOTMlMjAwJTIwMS4wMjYuMTE4JTIwMi4wMi4zMzglMjAyLjk4QzI1LjU0MyUyMDI0LjUyNyUyMDE1LjklMjAxOS4zMTglMjA5LjQ0JTIwMTEuMzk2Yy0xLjEyNSUyMDEuOTM2LTEuNzclMjA0LjE4NC0xLjc3JTIwNi41OCUyMDAlMjA0LjU0MyUyMDIuMzEyJTIwOC41NTIlMjA1LjgyNCUyMDEwLjktMi4xNDYtLjA3LTQuMTY1LS42NTgtNS45My0xLjY0LS4wMDIuMDU2LS4wMDIuMTEtLjAwMi4xNjMlMjAwJTIwNi4zNDUlMjA0LjUxMyUyMDExLjYzOCUyMDEwLjUwNCUyMDEyLjg0LTEuMS4yOTgtMi4yNTYuNDU3LTMuNDUuNDU3LS44NDUlMjAwLTEuNjY2LS4wNzgtMi40NjQtLjIzJTIwMS42NjclMjA1LjIlMjA2LjUlMjA4Ljk4NSUyMDEyLjIzJTIwOS4wOS00LjQ4MiUyMDMuNTEtMTAuMTMlMjA1LjYwNS0xNi4yNiUyMDUuNjA1LTEuMDU1JTIwMC0yLjA5Ni0uMDYtMy4xMjItLjE4NCUyMDUuNzk0JTIwMy43MTclMjAxMi42NzYlMjA1Ljg4MiUyMDIwLjA2NyUyMDUuODgyJTIwMjQuMDgzJTIwMCUyMDM3LjI1LTE5Ljk1JTIwMzcuMjUtMzcuMjUlMjAwLS41NjUtLjAxMy0xLjEzMy0uMDM4LTEuNjkzJTIwMi41NTgtMS44NDclMjA0Ljc3OC00LjE1JTIwNi41MzItNi43NzR6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgd2lkdGg6IDEuMWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMS4xZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tOyB9XG5cbi5jYXJkLXR3ZWV0IC50d2VldExvZ28ge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDQwcHg7XG4gIHBhZGRpbmc6IDVweDsgfVxuXG4uY2FyZC10d2VldCAudHdlZXQtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmNhcmQtdHdlZXQgLnR3ZWV0LWZvb3RlciBhIHtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gIC5jYXJkLXR3ZWV0IC50d2VldC1mb290ZXIgLnR3ZWV0LW1ldGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5jYXJkLXR3ZWV0IC50d2VldC1mb290ZXIgLnR3ZWV0LW1ldGEgYTpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNTsgfVxuICAgIC5jYXJkLXR3ZWV0IC50d2VldC1mb290ZXIgLnR3ZWV0LW1ldGEgPiBkaXYge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZjNjYwNTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgIC5jYXJkLXR3ZWV0IC50d2VldC1mb290ZXIgLnR3ZWV0LW1ldGEgPiBkaXYgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cbiAgICAgICAgLmNhcmQtdHdlZXQgLnR3ZWV0LWZvb3RlciAudHdlZXQtbWV0YSA+IGRpdiBzdmcgcGF0aCB7XG4gICAgICAgICAgZmlsbDogI2ZjNjYwNTsgfVxuXG4ubGFiZWwge1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDcwJTtcbiAgcGFkZGluZzogMC41ODgyNHJlbSAwLjVyZW0gMC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxhYmVsIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtIDAuNzVyZW07IH0gfVxuICAubGFiZWwuc21hbGxlci1sYWJlbCB7XG4gICAgcGFkZGluZzogOXB4IDEwcHggNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMCA1cHggNXB4IDA7IH1cblxuLm5vLWltYWdlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiAgLm5vLWltYWdlIHN2ZyB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICB3aWR0aDogNjAlO1xuICAgIGhlaWdodDogNjAlOyB9XG5cbmZvb3RlciNmb290ZXIge1xuICBwYWRkaW5nOiA1MHB4IDUlIDA7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDE4MmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBmb290ZXIjZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDEwMHB4IDEwJSA1MHB4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gIGZvb3RlciNmb290ZXIgaDUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgZm9vdGVyI2Zvb3RlciBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBmb290ZXIjZm9vdGVyIGg1IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfSB9XG4gIGZvb3RlciNmb290ZXIgLmJsb2NrIHtcbiAgICBmbGV4OiAwIDEgMzAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICBmb290ZXIjZm9vdGVyIC5ibG9jay1uZXdzbGV0dGVyIGZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgZm9vdGVyI2Zvb3RlciAuYmxvY2stbmV3c2xldHRlciBpbnB1dCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgZm9vdGVyI2Zvb3RlciAuYmxvY2stbmV3c2xldHRlciBidXR0b24ge1xuICAgIGZsZXg6IDAgMSA2MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmOyB9XG4gICAgZm9vdGVyI2Zvb3RlciAuYmxvY2stbmV3c2xldHRlciBidXR0b24gc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBmb290ZXIjZm9vdGVyIC5ibG9jay1uZXdzbGV0dGVyIGJ1dHRvbiBzdmcgcGF0aCB7XG4gICAgICAgIGZpbGw6ICNmZmY7IH1cbiAgZm9vdGVyI2Zvb3RlciAuYmxvY2stbmV3cyBhLnNpdGUtYnV0dG9uIHtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuI2NvcnBvcmF0ZSB7XG4gIHBhZGRpbmc6IDUwcHggNSU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMjYyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgI2NvcnBvcmF0ZSB7XG4gICAgICBwYWRkaW5nOiAxMDBweCAxMCUgNTBweDsgfSB9XG4gICNjb3Jwb3JhdGUgLmNvcnAtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAjY29ycG9yYXRlIC5jb3JwLXJvdzpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAjY29ycG9yYXRlIC5jb3JwLXJvdyB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgICNjb3Jwb3JhdGUgLmNvcnAtcm93IC5sb2dvcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAjY29ycG9yYXRlIC5jb3JwLXJvdyAubG9nb3Mge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgI2NvcnBvcmF0ZSAuY29ycC1yb3cgLmxvZ29zIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgICAgICNjb3Jwb3JhdGUgLmNvcnAtcm93IC5sb2dvcyBpbWcge1xuICAgICAgICBtYXJnaW46IDAgMTBweDsgfVxuICAgICAgI2NvcnBvcmF0ZSAuY29ycC1yb3cgLmxvZ29zICNjZWdhLWxvZ28ge1xuICAgICAgICB3aWR0aDogMTY1cHg7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAjY29ycG9yYXRlIC5jb3JwLXJvdyAubG9nb3MgI2NlZ2EtbG9nbyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gICAgICAjY29ycG9yYXRlIC5jb3JwLXJvdyAubG9nb3MgI2JlcmtlbGV5LWxvZ28ge1xuICAgICAgICB3aWR0aDogOTdweDsgfVxuICAgICNjb3Jwb3JhdGUgLmNvcnAtcm93IHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICNjb3Jwb3JhdGUgLmNvcnAtcm93IHVsIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfSB9XG4gICAgICAjY29ycG9yYXRlIC5jb3JwLXJvdyB1bCBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzO1xuICAgICAgICBmb250LXNpemU6IDkwJTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuMDVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICNjb3Jwb3JhdGUgLmNvcnAtcm93IHVsIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH0gfVxuICAgICAgICAjY29ycG9yYXRlIC5jb3JwLXJvdyB1bCBsaSBhIHtcbiAgICAgICAgICBjb2xvcjogI2ZkYjUxNTsgfVxuICAgICNjb3Jwb3JhdGUgLmNvcnAtcm93LnNtYWxsY2FwcywgI2NvcnBvcmF0ZSAjd2hvd2VhcmUgI21hcCBoNi5jb3JwLXJvdywgI3dob3dlYXJlICNtYXAgI2NvcnBvcmF0ZSBoNi5jb3JwLXJvdyB7XG4gICAgICBmb250LWZhbWlseTogXCJHb3RoYW1cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC40cHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgICAgcGFkZGluZy10b3A6IDJyZW07IH1cbiAgICAgICNjb3Jwb3JhdGUgLmNvcnAtcm93LnNtYWxsY2FwcyBhLCAjY29ycG9yYXRlICN3aG93ZWFyZSAjbWFwIGg2LmNvcnAtcm93IGEsICN3aG93ZWFyZSAjbWFwICNjb3Jwb3JhdGUgaDYuY29ycC1yb3cgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbnVsLnNvY2lhbHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIHVsLnNvY2lhbHMgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgdWwuc29jaWFscyBsaSBzdmcge1xuICAgICAgd2lkdGg6IDQwcHg7IH1cbiAgICAgIHVsLnNvY2lhbHMgbGkgc3ZnIHBhdGgge1xuICAgICAgICBmaWxsOiAjZmRiNTE1O1xuICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMTVzIGVhc2U7IH1cblxuI21lbnUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjAwO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UtaW4tb3V0OyB9XG4gIC5tZW51LWluICNtZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH1cbiAgI21lbnU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyAnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gICAgLm1lbnUtaW4gI21lbnU6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICNtZW51IC5pbnNpZGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNDcwcHg7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTQuNzVweCk7XG4gICAgYmFja2dyb3VuZDogI2ZkYjUxNTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1NC43NXB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMnJlbSArIDczcHggKiAwLjc1KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAwKTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjbWVudSAuaW5zaWRlIHtcbiAgICAgICAgcGFkZGluZzogNHJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoMnJlbSArIDczcHgpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA3M3B4KTtcbiAgICAgICAgdG9wOiA3M3B4OyB9IH1cbiAgICAubWVudS1pbiAjbWVudSAuaW5zaWRlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4zczsgfVxuICAjbWVudSAjbmF2IHtcbiAgICBtYXJnaW46IDAgMCAycmVtO1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDAzMjYyO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAzMjYyOyB9XG4gICAgI21lbnUgI25hdiBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuMDVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgICNtZW51ICNuYXYgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjMDAzMjYyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTBweCAwOyB9XG4gICNtZW51IC5ib3R0b21saW5rcyAjc2Vjb25kYXJ5bmF2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgI21lbnUgLmJvdHRvbWxpbmtzICNzZWNvbmRhcnluYXYgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMi4wNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc2l6ZTogNzAlOyB9XG4gICAgICAjbWVudSAuYm90dG9tbGlua3MgI3NlY29uZGFyeW5hdiBsaSBhIHtcbiAgICAgICAgY29sb3I6ICMwMDMyNjI7IH1cbiAgI21lbnUgLmJvdHRvbWxpbmtzIC5zb2NpYWxzIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAgICNtZW51IC5ib3R0b21saW5rcyAuc29jaWFscyBsaSB7XG4gICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICNtZW51IC5ib3R0b21saW5rcyAuc29jaWFscyBzdmcge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAjbWVudSAuYm90dG9tbGlua3MgLnNvY2lhbHMgc3ZnIHBhdGgge1xuICAgICAgZmlsbDogIzAwMzI2MjsgfVxuXG4jcGFnZS1pbnRybyAuaW5zaWRlIHtcbiAgbWF4LXdpZHRoOiA3NTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiNwYWdlLWludHJvLmltcGFjdC1pbnRybyAuaW5zaWRlIHtcbiAgbWF4LXdpZHRoOiAxMTAwcHg7IH1cblxuI3BhZ2UtaW50cm8gaDIsXG4jcGFnZS1pbnRybyBoMixcbiNwYWdlLWludHJvIGgzLFxuI3BhZ2UtaW50cm8gaDQsXG4jcGFnZS1pbnRybyAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyLFxuLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAjcGFnZS1pbnRybyBoMixcbiNwYWdlLWludHJvIGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG4jcGFnZS1pbnRybyBwLFxuI3BhZ2UtaW50cm8gbGkge1xuICBmb250LXNpemU6IDgwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNwYWdlLWludHJvIHAsXG4gICAgI3BhZ2UtaW50cm8gbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7IH0gfVxuXG4jcGFnZS1pbnRybyB1bCxcbiNwYWdlLWludHJvIG9sIHtcbiAgbWFyZ2luOiAycmVtIDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuI3BhZ2UtaW50cm8gdWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICNwYWdlLWludHJvIHVsIGxpOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjOyB9XG4gICNwYWdlLWludHJvIHVsIGxpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICB3aWR0aDogNXB4O1xuICAgIGhlaWdodDogNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMnB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjOyB9XG4gICNwYWdlLWludHJvIHVsIGxpOmxhc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICNwYWdlLWludHJvIHVsIGxpOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIsICNwYWdlLWludHJvIHVsIGxpOmxhc3Qtb2YtdHlwZTo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuI3BhZ2UtaW50cm8gW2RhdGEtc3ZnXSB7XG4gIHdpZHRoOiAxMDhweDtcbiAgaGVpZ2h0OiAxMDZweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwOHB4O1xuICBiYWNrZ3JvdW5kOiAjZDNlOGU5OyB9XG4gICNwYWdlLWludHJvIFtkYXRhLXN2Z10gZWxsaXBzZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICNwYWdlLWludHJvIFtkYXRhLXN2Z10ge1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMnJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgI3BhZ2UtaW50cm8gW2RhdGEtc3ZnXSB7XG4gICAgICBtYXJnaW46IDAgYXV0byAzcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3BhZ2UtYW5jaG9yLW5hdiArIGRpdixcbiAgI2NhdGVnb3J5LW5hdiArIGRpdiB7XG4gICAgbWFyZ2luLXRvcDogNzBweDsgfSB9XG5cbiNwYWdlLWFuY2hvci1uYXYsXG4jY2F0ZWdvcnktbmF2IHtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMzI2MjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDFyZW0gMyU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAjcGFnZS1hbmNob3ItbmF2LFxuICAgICNjYXRlZ29yeS1uYXYge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxMDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogMjgwcHg7IH1cbiAgICAgICNwYWdlLWFuY2hvci1uYXYuc3R1Y2ssXG4gICAgICAjY2F0ZWdvcnktbmF2LnN0dWNrIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDczcHg7IH0gfVxuICAjcGFnZS1hbmNob3ItbmF2IGJ1dHRvbixcbiAgI3BhZ2UtYW5jaG9yLW5hdiBhLFxuICAjY2F0ZWdvcnktbmF2IGJ1dHRvbixcbiAgI2NhdGVnb3J5LW5hdiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgIGNvbG9yOiAjMDAzMjYyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgI3BhZ2UtYW5jaG9yLW5hdiBidXR0b24uYWN0aXZlLFxuICAgICNwYWdlLWFuY2hvci1uYXYgYS5hY3RpdmUsXG4gICAgI2NhdGVnb3J5LW5hdiBidXR0b24uYWN0aXZlLFxuICAgICNjYXRlZ29yeS1uYXYgYS5hY3RpdmUge1xuICAgICAgY29sb3I6ICNmZGI1MTU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgI3BhZ2UtYW5jaG9yLW5hdiBidXR0b24sXG4gICAgICAjcGFnZS1hbmNob3ItbmF2IGEsXG4gICAgICAjY2F0ZWdvcnktbmF2IGJ1dHRvbixcbiAgICAgICNjYXRlZ29yeS1uYXYgYSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICBib3JkZXItdG9wOiA4cHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgI3BhZ2UtYW5jaG9yLW5hdiBidXR0b246OmFmdGVyLFxuICAgICAgICAjcGFnZS1hbmNob3ItbmF2IGE6OmFmdGVyLFxuICAgICAgICAjY2F0ZWdvcnktbmF2IGJ1dHRvbjo6YWZ0ZXIsXG4gICAgICAgICNjYXRlZ29yeS1uYXYgYTo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgICNwYWdlLWFuY2hvci1uYXYgYnV0dG9uLmFjdGl2ZSxcbiAgICAgICAgI3BhZ2UtYW5jaG9yLW5hdiBhLmFjdGl2ZSxcbiAgICAgICAgI2NhdGVnb3J5LW5hdiBidXR0b24uYWN0aXZlLFxuICAgICAgICAjY2F0ZWdvcnktbmF2IGEuYWN0aXZlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICNmZGI1MTU7XG4gICAgICAgICAgY29sb3I6ICMwMDMyNjI7IH1cbiAgICAgICAgICAjcGFnZS1hbmNob3ItbmF2IGJ1dHRvbi5hY3RpdmU6OmFmdGVyLFxuICAgICAgICAgICNwYWdlLWFuY2hvci1uYXYgYS5hY3RpdmU6OmFmdGVyLFxuICAgICAgICAgICNjYXRlZ29yeS1uYXYgYnV0dG9uLmFjdGl2ZTo6YWZ0ZXIsXG4gICAgICAgICAgI2NhdGVnb3J5LW5hdiBhLmFjdGl2ZTo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMzI2MjsgfSB9XG5cbi5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlIHtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG8gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2Uge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcCAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMjUlICFpbXBvcnRhbnQ7IH0gfVxuICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSAuaW5zaWRlIHtcbiAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTsgfVxuICAgIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlIC5pbnNpZGUgaW1nIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlIC5pbnNpZGUgaW1nIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtOyB9IH1cbiAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UgcCB7XG4gICAgZm9udC1zaXplOiA5MCU7IH1cbiAgLnBhZ2UtaWQtMzEgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtNSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLWlkLTMxIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAucGFnZS1pZC0zMSAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC01OjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA1MHB4KTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmRiNTE1O1xuICAgICAgICAgIHRvcDogLTIwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMTUwcHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7IH0gfVxuICAucGFnZS1pZC0zMSAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC02IHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtaWQtMzEgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtNiB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b20gIWltcG9ydGFudDsgfSB9XG4gIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlLmNvbC0yIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZS5jb2wtMiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1MHB4OyB9IH1cbiAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZS5jb2wtMiAuY29sdW1uLTEsXG4gICAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UuY29sLTIgLmNvbHVtbi0yIHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlLmNvbC0yIC5jb2x1bW4tMSxcbiAgICAgICAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UuY29sLTIgLmNvbHVtbi0yIHtcbiAgICAgICAgICBmbGV4OiAwIDEgNDUlO1xuICAgICAgICAgIHdpZHRoOiA0NSU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UuY29sLTIgLmNvbHVtbi0yIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTsgfSB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICMwMDMyNjI7IH1cbiAgYmxvY2txdW90ZSBwLFxuICBibG9ja3F1b3RlIGg0IHtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIGNvbG9yOiAjMDAzMjYyO1xuICAgIGZvbnQtZmFtaWx5OiAnQXJubyBQcm8nOyB9XG4gIGJsb2NrcXVvdGUgaDQge1xuICAgIGZvbnQtc2l6ZTogMjAwJTsgfVxuICBibG9ja3F1b3RlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAycmVtO1xuICAgIHdpZHRoOiAzNy41cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB2aWV3Qm94PVwiMCAwIDc1IDUwXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPjxwYXRoIGQ9XCJNMjQwLjgwNjM2MywzNDA3LjU0NzA5IEMyNDAuODA2MzYzLDM0MTEuMjg0MDIgMjM5LjQwNzIzMiwzNDE0LjQ2MDM4IDIzNi42MDg5MjksMzQxNy4wNzYyMyBDMjMzLjgxMDYyNSwzNDE5LjY5MjA5IDIzMC40NDUxNDgsMzQyMSAyMjYuNTEyMzk3LDM0MjEgQzIyMC43NjQ1MzEsMzQyMSAyMTYuMDc1NTUyLDM0MTkuMDE5NDUgMjEyLjQ0NTMyLDM0MTUuMDU4MyBDMjA4LjgxNTA4OSwzNDExLjA5NzE0IDIwNywzNDA2LjA1MjM1IDIwNywzMzk5LjkyMzc3IEMyMDcsMzM4OC44NjI0MyAyMTEuMzg2NDY0LDMzODAuOTQwMjMgMjIwLjE1OTUyNCwzMzc2LjE1Njk1IEMyMjYuNTEyNDI5LDMzNzIuNzE4OTcgMjMxLjU3OTU1MiwzMzcxIDIzNS4zNjEwNDMsMzM3MSBDMjM3LjAyNDg5OSwzMzcxIDIzNy44NTY4MTUsMzM3MS41OTc5IDIzNy44NTY4MTUsMzM3Mi43OTM3MiBDMjM3Ljg1NjgxNSwzMzczLjg0MDA3IDIzNi45NDkyNywzMzc0LjU4NzQ0IDIzNS4xMzQxNTQsMzM3NS4wMzU4NyBDMjIyLjczMDg2MywzMzc4LjMyNDM4IDIxNi41MjkzMSwzMzg0LjYwMjM1IDIxNi41MjkzMSwzMzkzLjg2OTk2IEMyMTYuNTI5MzEsMzM5Ny43NTYzNyAyMTcuNTg4MTEyLDM0MDEuMTE5NTcgMjE5LjcwNTc0NywzNDAzLjk1OTY0IEMyMjAuMDA4MjY2LDMzOTguODc3NCAyMjMuMTg0NjcxLDMzOTYuMzM2MzIgMjI5LjIzNTA1OCwzMzk2LjMzNjMyIEMyMzIuNTYyNzcsMzM5Ni4zMzYzMiAyMzUuMzIzMjE3LDMzOTcuNDIwMDIgMjM3LjUxNjQ4MiwzMzk5LjU4NzQ0IEMyMzkuNzA5NzQ3LDM0MDEuNzU0ODcgMjQwLjgwNjM2MywzNDA0LjQwODA2IDI0MC44MDYzNjMsMzQwNy41NDcwOSBaIE0yODIsMzM5Mi4wNzYyMyBDMjgyLDM0MDIuOTg4MSAyNzcuNjEzNTM2LDM0MTAuOTEwMjkgMjY4Ljg0MDQ3NiwzNDE1Ljg0MzA1IEMyNjIuNzkwMDksMzQxOS4yODEwMyAyNTcuNzIyOTY4LDM0MjEgMjUzLjYzODk1NywzNDIxIEMyNTEuOTc1MTAxLDM0MjEgMjUxLjE0MzE4NSwzNDIwLjQwMjEgMjUxLjE0MzE4NSwzNDE5LjIwNjI4IEMyNTEuMTQzMTg1LDM0MTguMTU5OTMgMjUyLjA1MDczLDM0MTcuNDEyNTYgMjUzLjg2NTg0NiwzNDE2Ljk2NDEzIEMyNjAuODIzNzksMzQxNS4wMjA5MiAyNjUuNjY0MDI2LDM0MTIuNzA0MDUgMjY4LjM4NjY5OSwzNDEwLjAxMzQ1IEMyNzEuMTA5MzczLDM0MDcuMzIyODYgMjcyLjQ3MDY5LDM0MDMuNDM2NSAyNzIuNDcwNjksMzM5OC4zNTQyNiBDMjcyLjQ3MDY5LDMzOTQuMzE4MzcgMjcxLjQ4NzUxNywzMzkwLjg4MDQzIDI2OS41MjExNDEsMzM4OC4wNDAzNiBDMjY5LjUyMTE0MSwzMzkzLjEyMjYgMjY2LjI2OTEwNywzMzk1LjY2MzY4IDI1OS43NjQ5NDIsMzM5NS42NjM2OCBDMjU2LjQzNzIzLDMzOTUuNjYzNjggMjUzLjY3Njc4MywzMzk0LjU3OTk4IDI1MS40ODM1MTgsMzM5Mi40MTI1NiBDMjQ5LjI5MDI1MywzMzkwLjI0NTEzIDI0OC4xOTM2MzcsMzM4Ny41OTE5NCAyNDguMTkzNjM3LDMzODQuNDUyOTEgQzI0OC4xOTM2MzcsMzM4MC43MTU5OCAyNDkuNTkyNzY4LDMzNzcuNTM5NjIgMjUyLjM5MTA3MSwzMzc0LjkyMzc3IEMyNTUuMTg5Mzc1LDMzNzIuMzA3OTEgMjU4LjYzMDQ4LDMzNzEgMjYyLjcxNDQ5MSwzMzcxIEMyNjguMzExMDk4LDMzNzEgMjcyLjkyNDQ0OCwzMzcyLjk4MDU1IDI3Ni41NTQ2OCwzMzc2Ljk0MTcgQzI4MC4xODQ5MTEsMzM4MC45MDI4NiAyODIsMzM4NS45NDc2NSAyODIsMzM5Mi4wNzYyMyBaXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKC0yMDcuMDAwMDAwLCAtMzM3MS4wMDAwMDApXCIgZmlsbD1cIiMwMDMyNjJcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIvPjwvc3ZnPicpIDAgMCBuby1yZXBlYXQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgNHJlbTtcbiAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgIGhlaWdodDogNTBweDsgfSB9XG5cbi5idWlsZC1sb2dvX3Nob3djYXNlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5idWlsZC1sb2dvX3Nob3djYXNlLmJsdWUge1xuICAgIGJhY2tncm91bmQ6ICMxNDg2Yzg7IH1cbiAgLmJ1aWxkLWxvZ29fc2hvd2Nhc2UubmF2eSB7XG4gICAgYmFja2dyb3VuZDogIzAwMzI2MjsgfVxuICAuYnVpbGQtbG9nb19zaG93Y2FzZS55ZWxsb3cge1xuICAgIGJhY2tncm91bmQ6ICNmZGI1MTU7IH1cbiAgICAuYnVpbGQtbG9nb19zaG93Y2FzZS55ZWxsb3cgaDIge1xuICAgICAgY29sb3I6ICMwMDMyNjI7IH1cbiAgLmJ1aWxkLWxvZ29fc2hvd2Nhc2Uub3JhbmdlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmM2NjA1OyB9XG4gICAgLmJ1aWxkLWxvZ29fc2hvd2Nhc2Uub3JhbmdlIGgyIHtcbiAgICAgIGNvbG9yOiAjMDAzMjYyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJ1aWxkLWxvZ29fc2hvd2Nhc2Uge1xuICAgICAgcGFkZGluZy10b3A6IDIwMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwMHB4OyB9IH1cbiAgLmJ1aWxkLWxvZ29fc2hvd2Nhc2UgaDIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1heC13aWR0aDogNTUwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5idWlsZC1sb2dvX3Nob3djYXNlIC5wYXJ0bmVyLWxvZ29zIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5idWlsZC1sb2dvX3Nob3djYXNlIC5wYXJ0bmVyLWxvZ29zIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgIC5idWlsZC1sb2dvX3Nob3djYXNlIC5wYXJ0bmVyLWxvZ29zIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgbWF4LWhlaWdodDogODJweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5idWlsZC1sb2dvX3Nob3djYXNlIC5wYXJ0bmVyLWxvZ29zIGltZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5idWlsZC1sb2dvX3Nob3djYXNlIC5wYXJ0bmVyLWxvZ29zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5idWlsZC1sb2dvX3Nob3djYXNlIC5wYXJ0bmVyLWxvZ29zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5idWlsZC1sb2dvX3Nob3djYXNlIC5wYXJ0bmVyLWxvZ29zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfSB9XG5cbi5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyAnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDgwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZDRlZWY1IHVybChcIi4uL2ltYWdlcy9hcHByb2FjaC1yZXBlYXQuanBnXCIpIHJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE1MHB4IDE1MHB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgLnBhZ2UtaWQtMTQwIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi4vaW1hZ2VzL2VuZ2FnZS1maWVsZC5wbmdcIikgcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDsgfVxuICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyICsgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyICsgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4OyB9IH1cbiAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlci5uby1jb250cm9scyAuc2xpZGUtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyLm5vLWNvbnRyb2xzIC5zbGlkZS13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIubm8tY29udHJvbHMgLnNsaWRlLXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbSAhaW1wb3J0YW50OyB9IH1cbiAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciBoMiB7XG4gICAgbWF4LXdpZHRoOiA5NTBweDtcbiAgICBtYXJnaW46IDAgYXV0byAycmVtIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyIGgyIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gNHJlbSAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlci5jZW50ZXJfaGVhZGluZyBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyIC5pbnNpZGUge1xuICAgIG1heC13aWR0aDogNzU1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwOyB9XG4gICAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAuaW5zaWRlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgLmluc2lkZSAuc2xpZGUtd3JhcHBlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjlmN2Y3O1xuICAgICAgcGFkZGluZzogMCAycmVtIDJyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgLmluc2lkZSAuc2xpZGUtd3JhcHBlciB7XG4gICAgICAgICAgcGFkZGluZzogMCAzcmVtIDNyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAuaW5zaWRlIC5zbGlkZS13cmFwcGVyIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDRyZW0gNHJlbTsgfSB9XG4gIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1jb250cm9scyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDAgMCAycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1jb250cm9scyB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAycmVtO1xuICAgICAgICBtYXJnaW46IDAgLTFyZW07IH0gfVxuICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1jb250cm9scyBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIGZsZXg6IDAgMSAyNSU7XG4gICAgICBmb250LXNpemU6IDkwJTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjI1cHg7XG4gICAgICBib3JkZXItdG9wOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAjZml4ZWQtc2xpZGVyLWNvbnRyb2xzIGxpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyICNmaXhlZC1zbGlkZXItY29udHJvbHMgbGkge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA0cmVtOyB9IH1cbiAgICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1jb250cm9scyBsaS5hY3RpdmUge1xuICAgICAgICBib3JkZXItY29sb3I6ICNmZGI1MTU7IH1cbiAgICAgICAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAjZml4ZWQtc2xpZGVyLWNvbnRyb2xzIGxpLmFjdGl2ZSBbZGF0YS1zdmddIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAgICAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAjZml4ZWQtc2xpZGVyLWNvbnRyb2xzIGxpLmFjdGl2ZSBbZGF0YS1zdmddIHBhdGgge1xuICAgICAgICAgICAgc3Ryb2tlOiAjZmRiNTE1O1xuICAgICAgICAgICAgZmlsbDogI2ZkYjUxNTsgfVxuICAgICAgICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyICNmaXhlZC1zbGlkZXItY29udHJvbHMgbGkuYWN0aXZlIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAjMTQ4NmM4OyB9XG4gICAgICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyICNmaXhlZC1zbGlkZXItY29udHJvbHMgbGkgYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1jb250cm9scyBsaSBidXR0b24uaGFzLXNtYWxsLWhlYWRpbmcgLnNsaWRlLWNvbnRyb2wtaGVhZGluZyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1jb250cm9scyBsaSBidXR0b24uaGFzLXNtYWxsLWhlYWRpbmcgLnNsaWRlLWNvbnRyb2wtaGVhZGluZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyICNmaXhlZC1zbGlkZXItY29udHJvbHMgbGkgYnV0dG9uIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1jb250cm9scyBsaSBidXR0b24gaW1nIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMjBweDsgfSB9XG4gICAgICAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyICNmaXhlZC1zbGlkZXItY29udHJvbHMgbGkgc3BhbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogI2I5YzFjMztcbiAgICAgICAgbWFyZ2luOiAwIDAgMC4zMzMzM3JlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1jb250cm9scyBsaSBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDFyZW07IH0gfVxuICAgICAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAjZml4ZWQtc2xpZGVyLWNvbnRyb2xzIGxpIFtkYXRhLXN2Z10ge1xuICAgICAgICBvcGFjaXR5OiAwLjI7IH1cbiAgICAgICAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAjZml4ZWQtc2xpZGVyLWNvbnRyb2xzIGxpIFtkYXRhLXN2Z10gc3ZnIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgbWF4LXdpZHRoOiA0NXB4O1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAjZml4ZWQtc2xpZGVyLWNvbnRyb2xzIGxpIFtkYXRhLXN2Z10gc3ZnIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2NXB4O1xuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA2NXB4OyB9IH1cbiAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAjZml4ZWQtc2xpZGVyLWFycm93cyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgLypcbiAgICBidXR0b24ge1xuICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICBtYXJnaW46IDAgLTFweCAwIDA7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgIGxlZnQ6IC01cHg7XG5cbiAgICAgICAgcGF0aCB7XG4gICAgICAgICAgZmlsbDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnNsaWNrLXByZXYge1xuICAgICAgICBzdmcge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gKi8gfVxuICAgIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgI2ZpeGVkLXNsaWRlci1hcnJvd3MgYnV0dG9uIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4OyB9XG4gIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgLmFwcHJvYWNoLXNsaWRlIGgzLCAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyIC5hcHByb2FjaC1zbGlkZSAjcGFnZS1pbnRybyBoMiwgI3BhZ2UtaW50cm8gLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAuYXBwcm9hY2gtc2xpZGUgaDIsXG4gIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgLmFwcHJvYWNoLXNsaWRlICNwYWdlLWludHJvIGgzLCAjcGFnZS1pbnRybyAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyIC5hcHByb2FjaC1zbGlkZSBoMyxcbiAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAuYXBwcm9hY2gtc2xpZGUgI3BhZ2UtaW50cm8gaDQsICNwYWdlLWludHJvIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgLmFwcHJvYWNoLXNsaWRlIGg0LCAuYnVpbGQtZml4ZWRfd2lkdGhfc2xpZGVyIC5hcHByb2FjaC1zbGlkZSAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyLCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIgLmFwcHJvYWNoLXNsaWRlIGgyIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmJ1aWxkLWZpeGVkX3dpZHRoX3NsaWRlciAuYXBwcm9hY2gtc2xpZGUgcCB7XG4gICAgZm9udC1zaXplOiA5MCU7IH1cblxuLmJ1aWxkLWJhbm5lcl9zZWN0aW9uIHtcbiAgcGFkZGluZzogMDsgfVxuICAuYnVpbGQtYmFubmVyX3NlY3Rpb24gLmJhY2tncm91bmQge1xuICAgIHBhZGRpbmc6IDUwcHggOCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5idWlsZC1iYW5uZXJfc2VjdGlvbiAuYmFja2dyb3VuZCB7XG4gICAgICAgIHBhZGRpbmc6IDEwMHB4IDUlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uIC5iYWNrZ3JvdW5kIHtcbiAgICAgICAgcGFkZGluZzogMTUwcHggMTAlOyB9IH1cbiAgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uLmFsaWduLWxlZnQgLmluc2lkZSB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBtYXJnaW46IDAgYXV0byAwIDA7IH1cbiAgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uLmFsaWduLXJpZ2h0IC5pbnNpZGUge1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luOiAwIDAgMCBhdXRvOyB9XG4gIC5idWlsZC1iYW5uZXJfc2VjdGlvbi5hbGlnbi1yaWdodCAud2F0ZXJtYXJrIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5idWlsZC1iYW5uZXJfc2VjdGlvbi5pbnNldC1ib3JkZXJzIC5iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZjNjYwNTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICB0b3A6IDEwcHg7XG4gICAgbGVmdDogMTBweDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBsaW5lYXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnVpbGQtYmFubmVyX3NlY3Rpb24uaW5zZXQtYm9yZGVycyAuYmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICB0b3A6IDIwcHg7XG4gICAgICBsZWZ0OiAyMHB4OyB9IH1cbiAgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uIC53YXRlcm1hcmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzUlO1xuICAgIGhlaWdodDogODAlO1xuICAgIGJvdHRvbTogLTE1JTtcbiAgICByaWdodDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5idWlsZC1iYW5uZXJfc2VjdGlvbiAud2F0ZXJtYXJrIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAuYnVpbGQtYmFubmVyX3NlY3Rpb24gaDQge1xuICAgIGNvbG9yOiAjZmRiNTE1O1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgZm9udC1zaXplOiAyMDAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAyNTAlO1xuICAgICAgICBtYXJnaW46IDAgMCAycmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAzMzAlO1xuICAgICAgICBtYXJnaW46IDAgMCAzcmVtOyB9IH1cbiAgLmJ1aWxkLWJhbm5lcl9zZWN0aW9uIHAge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5idWlsZC1pbWFnZV9hbmRfY29udGVudC5mbHVzaC1pbWFnZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuICAuYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQuZmx1c2gtaW1hZ2UgaDIge1xuICAgIHBhZGRpbmctbGVmdDogMyU7XG4gICAgcGFkZGluZy1yaWdodDogMyU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQuZmx1c2gtaW1hZ2UuYWxpZ24tcmlnaHQgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMCUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJ1aWxkLWltYWdlX2FuZF9jb250ZW50LmZsdXNoLWltYWdlLmFsaWduLWxlZnQgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMTAlICFpbXBvcnRhbnQ7IH0gfVxuXG4uYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQgaDIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogODAwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJ1aWxkLWltYWdlX2FuZF9jb250ZW50LmFsaWduLXJpZ2h0IC5jb250ZW50IHtcbiAgICBvcmRlcjogMTsgfVxuICAuYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQuYWxpZ24tcmlnaHQgLmltYWdlIHtcbiAgICBvcmRlcjogMjsgfSB9XG5cbi5idWlsZC1pbWFnZV9hbmRfY29udGVudC5hbGlnbi1yaWdodCAuY29udGVudCB7XG4gIHBhZGRpbmc6IDAgNSU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQuYWxpZ24tcmlnaHQgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMCAwIDAgNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQuYWxpZ24tbGVmdCAuY29udGVudCB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmJ1aWxkLWltYWdlX2FuZF9jb250ZW50LmFsaWduLWxlZnQgLmltYWdlIHtcbiAgICBvcmRlcjogMTsgfSB9XG5cbi5idWlsZC1pbWFnZV9hbmRfY29udGVudC5hbGlnbi1sZWZ0IC5jb250ZW50IHtcbiAgcGFkZGluZzogMCA1JTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5idWlsZC1pbWFnZV9hbmRfY29udGVudC5hbGlnbi1sZWZ0IC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgNSUgMCAwOyB9IH1cblxuLmJ1aWxkLWltYWdlX2FuZF9jb250ZW50IC5ibG9ja3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQgLmJsb2NrcyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgLmJ1aWxkLWltYWdlX2FuZF9jb250ZW50IC5ibG9ja3MgLmltYWdlLFxuICAuYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQgLmJsb2NrcyAuY29udGVudCB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5idWlsZC1pbWFnZV9hbmRfY29udGVudCAuYmxvY2tzIC5pbWFnZSxcbiAgICAgIC5idWlsZC1pbWFnZV9hbmRfY29udGVudCAuYmxvY2tzIC5jb250ZW50IHtcbiAgICAgICAgZmxleDogMCAxIDQ1JTtcbiAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gICAgLmJ1aWxkLWltYWdlX2FuZF9jb250ZW50IC5ibG9ja3MgLmltYWdlIGgyLFxuICAgIC5idWlsZC1pbWFnZV9hbmRfY29udGVudCAuYmxvY2tzIC5jb250ZW50IGgyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5idWlsZC1pbWFnZV9hbmRfY29udGVudCAuYmxvY2tzIC5pbWFnZSBoMixcbiAgICAgICAgLmJ1aWxkLWltYWdlX2FuZF9jb250ZW50IC5ibG9ja3MgLmNvbnRlbnQgaDIge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAuYnVpbGQtaW1hZ2VfYW5kX2NvbnRlbnQgLmJsb2NrcyBwIHtcbiAgICBmb250LXNpemU6IDkwJTsgfVxuXG4uYnVpbGQtNF9jb2x1bW5fc2xpZGVyIHtcbiAgcGFkZGluZzogMDsgfVxuICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMyU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDUlO1xuICAgICAgcGFkZGluZy1yaWdodDogNSU7IH0gfVxuICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5pbnNpZGUge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZDRlZWY1O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5pbnNpZGUge1xuICAgICAgICBtYXgtd2lkdGg6IDEwNTBweDsgfSB9XG4gIC5idWlsZC00X2NvbHVtbl9zbGlkZXIgLmZvdXItY29sdW1uLXNsaWRlci1jb250cm9scyxcbiAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZXZlbnQtZm91ci1jb2x1bW4tc2xpZGVyLWNvbnRyb2xzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZm91ci1jb2x1bW4tc2xpZGVyLWNvbnRyb2xzIC5zbGljay1hcnJvdyxcbiAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5ldmVudC1mb3VyLWNvbHVtbi1zbGlkZXItY29udHJvbHMgLnNsaWNrLWFycm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5mb3VyLWNvbHVtbi1zbGlkZXItY29udHJvbHMsXG4gICAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5ldmVudC1mb3VyLWNvbHVtbi1zbGlkZXItY29udHJvbHMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHRvcDogNTAlOyB9XG4gICAgICAgIC5idWlsZC00X2NvbHVtbl9zbGlkZXIgLmZvdXItY29sdW1uLXNsaWRlci1jb250cm9scyAuc2xpY2stbmV4dCxcbiAgICAgICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZXZlbnQtZm91ci1jb2x1bW4tc2xpZGVyLWNvbnRyb2xzIC5zbGljay1uZXh0IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yNXB4OyB9XG4gICAgICAgIC5idWlsZC00X2NvbHVtbl9zbGlkZXIgLmZvdXItY29sdW1uLXNsaWRlci1jb250cm9scyAuc2xpY2stcHJldixcbiAgICAgICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZXZlbnQtZm91ci1jb2x1bW4tc2xpZGVyLWNvbnRyb2xzIC5zbGljay1wcmV2IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTI1cHg7IH0gfVxuICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5mb3VyLWNvbHVtbi1zbGlkZXIge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWFyZ2luLWxlZnQ6IDUlOyB9XG4gICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZm91ci1jb2x1bW4tc2xpZGVyIC5mb3VyLWNvbC1zbGlkZSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5mb3VyLWNvbHVtbi1zbGlkZXIgLmZvdXItY29sLXNsaWRlIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuICAgICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZm91ci1jb2x1bW4tc2xpZGVyIC5mb3VyLWNvbC1zbGlkZSAuaW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZm91ci1jb2x1bW4tc2xpZGVyIC5mb3VyLWNvbC1zbGlkZSAuaW1hZ2UgaWZyYW1lLFxuICAgICAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5mb3VyLWNvbHVtbi1zbGlkZXIgLmZvdXItY29sLXNsaWRlIC5pbWFnZSBvYmplY3QsXG4gICAgICAgIC5idWlsZC00X2NvbHVtbl9zbGlkZXIgLmZvdXItY29sdW1uLXNsaWRlciAuZm91ci1jb2wtc2xpZGUgLmltYWdlIGVtYmVkLFxuICAgICAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5mb3VyLWNvbHVtbi1zbGlkZXIgLmZvdXItY29sLXNsaWRlIC5pbWFnZSB2aWRlbyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZm91ci1jb2x1bW4tc2xpZGVyIC5mb3VyLWNvbC1zbGlkZSBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNjUlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xOHB4O1xuICAgICAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5idWlsZC00X2NvbHVtbl9zbGlkZXIgLmZvdXItY29sdW1uLXNsaWRlciAuZm91ci1jb2wtc2xpZGUgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNjUlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gICAgICAuYnVpbGQtNF9jb2x1bW5fc2xpZGVyIC5mb3VyLWNvbHVtbi1zbGlkZXIgLmZvdXItY29sLXNsaWRlIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDcwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJ1aWxkLTRfY29sdW1uX3NsaWRlciAuZm91ci1jb2x1bW4tc2xpZGVyIC5mb3VyLWNvbC1zbGlkZSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1JTsgfSB9XG5cbi5idWlsZC1wbGFpbl9jb250ZW50IHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIHBhZGRpbmctdG9wOiA1MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy10b3A6IDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy10b3A6IDBweDsgfSB9XG4gIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUge1xuICAgIG1heC13aWR0aDogOTUwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzJTsgfVxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgaDIsXG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBoMyxcbiAgICAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlICNwYWdlLWludHJvIGgyLFxuICAgICNwYWdlLWludHJvIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgaDIsXG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSAjcGFnZS1pbnRybyBoMyxcbiAgICAjcGFnZS1pbnRybyAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlIGgzLFxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgI3BhZ2UtaW50cm8gaDQsXG4gICAgI3BhZ2UtaW50cm8gLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBoNCxcbiAgICAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIsXG4gICAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlIGgyLFxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgaDQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgaDEge1xuICAgICAgZm9udC1zaXplOiAzNTAlOyB9XG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBoMiB7XG4gICAgICBmb250LXNpemU6IDMwMCU7IH1cbiAgICBcbiAgICAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlIGgzLFxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgI3BhZ2UtaW50cm8gaDIsXG4gICAgI3BhZ2UtaW50cm8gLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBoMixcbiAgICAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlICNwYWdlLWludHJvIGgzLFxuICAgICNwYWdlLWludHJvIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgaDMsXG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSAjcGFnZS1pbnRybyBoNCxcbiAgICAjcGFnZS1pbnRybyAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlIGg0LFxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMixcbiAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgaDIge1xuICAgICAgZm9udC1zaXplOiAyNTAlOyB9XG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBoNCB7XG4gICAgICBmb250LXNpemU6IDIwMCU7IH1cbiAgICAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMTUwJTsgfVxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgaDYge1xuICAgICAgZm9udC1zaXplOiAxMDAlOyB9XG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBwICsgaDIsXG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBwICsgaDMsXG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSAjcGFnZS1pbnRybyBwICsgaDIsXG4gICAgI3BhZ2UtaW50cm8gLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBwICsgaDIsXG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSAjcGFnZS1pbnRybyBwICsgaDMsXG4gICAgI3BhZ2UtaW50cm8gLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBwICsgaDMsXG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSAjcGFnZS1pbnRybyBwICsgaDQsXG4gICAgI3BhZ2UtaW50cm8gLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSBwICsgaDQsXG4gICAgLmJ1aWxkLXBsYWluX2NvbnRlbnQgLmluc2lkZSAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIHAgKyBoMixcbiAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgcCArIGgyLFxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgcCArIGg0LFxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgcCArIGg1LFxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgcCArIGg2IHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAuYnVpbGQtcGxhaW5fY29udGVudCAuaW5zaWRlIHVsLFxuICAgIC5idWlsZC1wbGFpbl9jb250ZW50IC5pbnNpZGUgb2wge1xuICAgICAgbWFyZ2luOiAycmVtIDAgMnJlbSAycmVtO1xuICAgICAgcGFkZGluZzogMDsgfVxuXG4jc2hhcmluZy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDUwcHggMyUgMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNzaGFyaW5nLXdyYXBwZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7IH0gfVxuICAjc2hhcmluZy13cmFwcGVyIHNwYW4ge1xuICAgIGNvbG9yOiAjZmRiNTE1O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjMycHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDcwJTsgfVxuICAjc2hhcmluZy13cmFwcGVyIGEge1xuICAgIG1hcmdpbjogMCAxMHB4OyB9XG4gICNzaGFyaW5nLXdyYXBwZXIgKyAjZXZlbnQtcGFydG5lcnMsXG4gICNzaGFyaW5nLXdyYXBwZXIgKyAjZXZlbnQtc3BlYWtlcnMge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLm1ldGEtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgLm1ldGEtaXRlbSBoNSB7XG4gICAgZm9udC1zaXplOiA5MCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMi4wNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4zOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwMDMyNjI7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMwMDMyNjI7IH1cbiAgLm1ldGEtaXRlbSBwLFxuICAubWV0YS1pdGVtIGxpIHtcbiAgICBmb250LXNpemU6IDg1JTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLm1ldGEtaXRlbSBhIHtcbiAgICBjb2xvcjogIzE0ODZjODsgfVxuICAgIC5tZXRhLWl0ZW0gYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAubWV0YS1pdGVtIHVsIHtcbiAgICBtYXJnaW46IDFyZW0gMCAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLm1ldGEtaXRlbS5mcmVlX3RleHQgcCxcbiAgLm1ldGEtaXRlbS5mcmVlX3RleHQgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuI3BhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDAuNWVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAjcGFnaW5hdGlvbiBhLFxuICAjcGFnaW5hdGlvbiBzcGFuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gICAgcGFkZGluZy10b3A6IDFweDtcbiAgICBoZWlnaHQ6IDNlbTtcbiAgICBtaW4td2lkdGg6IDNlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMTQ4NmM4O1xuICAgIHBhZGRpbmc6IDAgLjdlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgI3BhZ2luYXRpb24gYTpob3ZlcixcbiAgICAjcGFnaW5hdGlvbiBzcGFuOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzExNzJhYTsgfVxuICAgICNwYWdpbmF0aW9uIGEuY3VycmVudCxcbiAgICAjcGFnaW5hdGlvbiBzcGFuLmN1cnJlbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE0ODZjODtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgI3BhZ2luYXRpb24gYS5kb3RzLFxuICAgICNwYWdpbmF0aW9uIHNwYW4uZG90cyB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAjcGFnaW5hdGlvbiB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAjcGFnaW5hdGlvbiB1bCBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDVweDsgfVxuXG4jbGF1bmNocGFkIHtcbiAgYmFja2dyb3VuZDogI2QzZThlOTtcbiAgcGFkZGluZzogNTBweCAzJTsgfVxuICAjbGF1bmNocGFkIC5yZXNvdXJjZXMtbGF1bmNocGFkIHtcbiAgICBtYXJnaW4tdG9wOiA0cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICNsYXVuY2hwYWQgLnJlc291cmNlcy1sYXVuY2hwYWQge1xuICAgICAgICBtYXJnaW4tdG9wOiA4cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjbGF1bmNocGFkIHtcbiAgICAgIHBhZGRpbmc6IDEyMHB4IDUlOyB9XG4gICAgICAjbGF1bmNocGFkIC5ibHVlLWNhcmQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgI2xhdW5jaHBhZCAuYmx1ZS1jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTQ4NmM4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAjbGF1bmNocGFkIC5ibHVlLWNhcmQgaDQge1xuICAgICAgZm9udC1zaXplOiAxODAlOyB9XG4gICAgI2xhdW5jaHBhZCAuYmx1ZS1jYXJkOjpiZWZvcmUsICNsYXVuY2hwYWQgLmJsdWUtY2FyZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICNsYXVuY2hwYWQgLmJsdWUtY2FyZC5jZW50ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAjbGF1bmNocGFkIC5ibHVlLWNhcmQuY2VudGVyIHAge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zOHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiA3MCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1heC13aWR0aDogMjIwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgICAjbGF1bmNocGFkIC5ibHVlLWNhcmQuY2VudGVyIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuXG4jd2hvd2VhcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvYmx1ZW5vaXNlLmpwZ1wiKSByZXBlYXQ7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICN3aG93ZWFyZSAudmVydGFycm93IHtcbiAgICB0b3A6IDJyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjd2hvd2VhcmUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAjd2hvd2VhcmU6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxMzBweCk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZGI1MTU7XG4gICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDExNTBweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7IH0gfVxuICAjd2hvd2VhcmUgI21hcCB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAjd2hvd2VhcmUgI21hcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjd2hvd2VhcmUgI21hcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTUlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNSU7IH0gfVxuICAgICN3aG93ZWFyZSAjbWFwIHAge1xuICAgICAgbWFyZ2luOiAwIDAgMnJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgI3dob3dlYXJlICNtYXAgcCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1JTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAzcmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICN3aG93ZWFyZSAjbWFwIHAge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwJTtcbiAgICAgICAgICBtYXJnaW46IDAgMCA0cmVtOyB9IH1cbiAgICAjd2hvd2VhcmUgI21hcCBoNiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbiN1cGRhdGVzIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2JsdWVub2lzZS5qcGdcIikgcmVwZWF0O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICN1cGRhdGVzIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9wYWRkeS5qcGdcIikgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4OyB9IH1cbiAgI3VwZGF0ZXMgLmluc2lkZSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAjdXBkYXRlcyAuaW5zaWRlIHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAycmVtIDFyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjdXBkYXRlcyAuaW5zaWRlIHtcbiAgICAgICAgcGFkZGluZzogM3JlbSAzcmVtIDFyZW07IH0gfVxuICAjdXBkYXRlcyAuY2FyZCAuaW1hZ2Uge1xuICAgIGhlaWdodDogMjUwcHg7IH1cbiAgICAjdXBkYXRlcyAuY2FyZCAuaW1hZ2UgaW1nIHtcbiAgICAgIGhlaWdodDogMjUwcHg7IH1cbiAgI3VwZGF0ZXMgLnNwb3RsaWdodCAuaW1hZ2Uge1xuICAgIG1hcmdpbjogMCBhdXRvIDQ3cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uL2ltYWdlcy9tYXAucG5nKSBuby1yZXBlYXQgY2VudGVyIHRvcDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMmMyYzI7IH1cbiAgI3VwZGF0ZXMgLnNwb3RsaWdodCAuc3BvdGxpZ2h0Q29udGVudCB7XG4gICAgbWFyZ2luOiAwcHggYXV0byAxNXB4O1xuICAgIGhlaWdodDogMTM4cHg7IH1cbiAgI3VwZGF0ZXMgLnNwb3RsaWdodCAuc3BvdGxpZ2h0QmlvTGluayB7XG4gICAgd2lkdGg6IDI0MHB4O1xuICAgIG1hcmdpbjogYXV0bzsgfVxuXG4jb3VyLXNlY3RvcnMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgI291ci1zZWN0b3JzIC5pbnRybyB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICNvdXItc2VjdG9ycyAuaW50cm8ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtOyB9IH1cblxuLnRoZS1zZWN0b3JzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRoZS1zZWN0b3JzIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtOyB9IH1cblxuI3Blb3BsZS1maWx0ZXIge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuI3Blb3BsZS1wYWdlIHtcbiAgYmFja2dyb3VuZDogI2YxZWZlZjtcbiAgcGFkZGluZzogMXJlbSAzJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICNwZW9wbGUtcGFnZSB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDUlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjcGVvcGxlLXBhZ2Uge1xuICAgICAgcGFkZGluZzogMTIwcHggMTAlOyB9IH1cblxuI3Blb3BsZS1wYWdlLm5vZmlsdGVycyB7XG4gIGJhY2tncm91bmQ6ICNmMWVmZWY7XG4gIHBhZGRpbmc6IDFyZW0gMyU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAjcGVvcGxlLXBhZ2Uubm9maWx0ZXJzIHtcbiAgICAgIHBhZGRpbmc6IDBweCA1JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgI3Blb3BsZS1wYWdlLm5vZmlsdGVycyB7XG4gICAgICBwYWRkaW5nOiAwcHggMTAlOyB9IH1cblxuLyotLS0tLS0tLS0tICBGb3JtICAtLS0tLS0tLS0tKi9cbi5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC10ZXh0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAuc2VhcmNoLWZpbHRlci1mb3JtIC5zZWFyY2gtdGV4dHMgLnNlYXJjaC10ZXh0IHtcbiAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uc2VhcmNoLWZpbHRlci1mb3JtIC5zZWFyY2gtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VhcmNoLWZpbHRlci1mb3JtIC5zZWFyY2gtdGV4dCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgLnNlYXJjaC1maWx0ZXItZm9ybSAuc2VhcmNoLXRleHQgaW5wdXQge1xuICAgIGZsZXg6IDAgMSAxMDAlOyB9XG4gIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC10ZXh0IGJ1dHRvbiB7XG4gICAgZmxleDogMCAxIDgwcHg7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGJhY2tncm91bmQ6ICMwMDMyNjI7IH1cbiAgICAuc2VhcmNoLWZpbHRlci1mb3JtIC5zZWFyY2gtdGV4dCBidXR0b24gc3ZnIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgaGVpZ2h0OiAyNXB4OyB9XG4gICAgICAuc2VhcmNoLWZpbHRlci1mb3JtIC5zZWFyY2gtdGV4dCBidXR0b24gc3ZnIHBhdGgge1xuICAgICAgICBzdHJva2U6ICNmZmY7IH1cblxuLnNlYXJjaC1maWx0ZXItZm9ybSAuc2VhcmNoLWZpbHRlcnMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkOiBhdXRvIC8gMWZyO1xuICBnYXA6IDFlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzIHtcbiAgICAgIGdyaWQ6IGF1dG8gLyAxZnIgMWZyO1xuICAgICAgZ2FwOiAyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzIHtcbiAgICAgIGdyaWQ6IGF1dG8gLyAxZnIgMWZyIDFmciAxZnI7XG4gICAgICBnYXA6IDJlbTsgfSB9XG4gIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzID4gLnNlYXJjaC10ZXh0IHtcbiAgICBncmlkLWFyZWE6IDEgLyAxIC8gMSAvIC0xOyB9XG4gIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzIHNlbGVjdCxcbiAgLnNlYXJjaC1maWx0ZXItZm9ybSAuc2VhcmNoLWZpbHRlcnMgZGl2IHtcbiAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc2VhcmNoLWZpbHRlci1mb3JtIC5zZWFyY2gtZmlsdGVycyAuaGFzLXNlbGVjdGlvbiBzZWxlY3QsIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzIC5oYXMtc2VsZWN0aW9uIGlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ4NmM4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzIHNlbGVjdCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGhlaWdodDogNjBweDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cblxuLnNlYXJjaC1maWx0ZXJzID4gKiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5zZWFyY2gtZmlsdGVycyAuc2VhcmNoLWZpbHRlcnMgc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNlYXJjaC1maWx0ZXJzIC5oYXMtc2VsZWN0aW9uIC5yZXNldC1maWx0ZXItYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG5cbi5zZWFyY2gtZmlsdGVycy5oYXMtc2VsZWN0aW9uID4gLnJlc2V0LWZpbHRlci1idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cblxuLnNlYXJjaC1maWx0ZXJzID4gLnJlc2V0LWZpbHRlci1idXR0b24ge1xuICBncmlkLWFyZWE6IC0zIC8gMSAvIDEgLyAtMTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwIDFlbTsgfVxuXG4ucmVzZXQtZmlsdGVyLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyZW07XG4gIHBhZGRpbmc6IDFlbTtcbiAgd2lkdGg6IDYwcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDg2Yzg7XG4gIGNvbG9yOiAjZmZmO1xuICBmbGV4OiAwIDEgMWVtICFpbXBvcnRhbnQ7IH1cbiAgLnJlc2V0LWZpbHRlci1idXR0b246aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMTcyYWE7IH1cblxuLnNlYXJjaC1maWx0ZXItZm9ybSB7XG4gIGJhY2tncm91bmQ6ICNmMWVmZWY7XG4gIHBhZGRpbmc6IDUwcHggMyU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VhcmNoLWZpbHRlci1mb3JtIHtcbiAgICAgIHBhZGRpbmc6IDgwcHggMyUgMDsgfSB9XG4gIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQ6IGF1dG8gLyAxZnI7XG4gICAgZ2FwOiAyZW07IH1cbiAgLnNlYXJjaC1maWx0ZXItZm9ybSAuc2VhcmNoLWZpbHRlcnMgPiAqIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNlYXJjaC1maWx0ZXItZm9ybSAuc2VhcmNoLWZpbHRlcnMgLnNlYXJjaC1maWx0ZXJzIHNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnNlYXJjaC1maWx0ZXItZm9ybSAuc2VhcmNoLWZpbHRlcnMgLmhhcy1zZWxlY3Rpb24gLnJlc2V0LWZpbHRlci1idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzIHtcbiAgICAgIGdyaWQ6IGF1dG8gLyAxZnIgMWZyOyB9XG4gICAgICAuc2VhcmNoLWZpbHRlci1mb3JtIC5zZWFyY2gtZmlsdGVycyA+IC5zZWFyY2gtdGV4dCB7XG4gICAgICAgIGdyaWQtYXJlYTogMS9hdXRvLzEvYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlYXJjaC1maWx0ZXItZm9ybSAuc2VhcmNoLWZpbHRlcnMge1xuICAgICAgZ3JpZDogYXV0byAvIDFmciAxZnIgMWZyIDFmcjsgfSB9XG4gIC5zZWFyY2gtZmlsdGVyLWZvcm0gLnNlYXJjaC1maWx0ZXJzID4gLnNlYXJjaC10ZXh0IHtcbiAgICBncmlkLWFyZWE6IDEvMS8xLy0xOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlYXJjaC1maWx0ZXItZm9ybS5zZWFyY2gtMy1zcGFuIC5zZWFyY2gtZmlsdGVycyA+IC5zZWFyY2gtdGV4dCB7XG4gICAgICBncmlkLWFyZWE6IDEvYXV0by8xL2F1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWFyY2gtZmlsdGVyLWZvcm0uc2VhcmNoLTMtc3BhbiAuc2VhcmNoLWZpbHRlcnMge1xuICAgICAgZ3JpZDogYXV0byAvIDFmciAxZnIgMWZyO1xuICAgICAgZ2FwOiAyZW07IH1cbiAgICAgIC5zZWFyY2gtZmlsdGVyLWZvcm0uc2VhcmNoLTMtc3BhbiAuc2VhcmNoLWZpbHRlcnMgPiAuc2VhcmNoLXRleHQge1xuICAgICAgICBncmlkLWFyZWE6IDEvMS8xLy0xOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VhcmNoLWZpbHRlci1mb3JtI2ZlbGxvd3MtZmlsdGVyIC5zZWFyY2gtZmlsdGVycyB7XG4gICAgICBncmlkOiBhdXRvIC8gMWZyIDFmciAxZnI7IH0gfVxuXG4vKi0tLS0tLS0tLS0gIFBlb3BsZSBMaXN0ICAtLS0tLS0tLS0tKi9cbiNwZW9wbGUtbGlzdCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIGdhcDogM3JlbSAxcmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAjcGVvcGxlLWxpc3Qge1xuICAgICAgcGFkZGluZzogNHJlbSAwO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgIGdhcDogM3JlbSAycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjcGVvcGxlLWxpc3Qge1xuICAgICAgcGFkZGluZzogNXJlbSAwO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgICBnYXA6IDNyZW0gMnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAjcGVvcGxlLWxpc3Qge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnIgMWZyO1xuICAgICAgZ2FwOiAzcmVtIDJyZW07IH0gfVxuICAjcGVvcGxlLWxpc3QudGFibGUtc3R5bGUge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG5cbmg0LnllYXItdGl0bGUge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgbWFyZ2luOiAwIDA7XG4gIHBhZGRpbmc6IDFyZW0gMXJlbSAwLjhyZW07XG4gIGZsZXg6IDAgMSAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxMjAlO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4uYS1wZXJzb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmEtcGVyc29uIC5hLXBlcnNvbi1waG90byB7XG4gICAgaGVpZ2h0OiBjYWxjKCg5NHZ3IC0gMXJlbSAqIDEpIC8gMik7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYS1wZXJzb24gLmEtcGVyc29uLXBob3RvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCg5MHZ3IC0gMXJlbSAqIDIpIC8gMyk7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYS1wZXJzb24gLmEtcGVyc29uLXBob3RvIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCg4MHZ3IC0gMXJlbSAqIDYpIC8gNCk7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5hLXBlcnNvbiAuYS1wZXJzb24tcGhvdG8ge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoKDgwdncgLSAxcmVtICogOCkgLyA1KTsgfSB9XG4gICAgLmEtcGVyc29uIC5hLXBlcnNvbi1waG90byBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuICAgIC5hLXBlcnNvbiAuYS1wZXJzb24tcGhvdG8gLm5vLWltYWdlIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5hLXBlcnNvbiAuYS1wZXJzb24tcGhvdG86OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAuYS1wZXJzb24gLmEtcGVyc29uLXBob3RvOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZDogIzAwMzI2MiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgdmlld0JveD1cIjAgMCAyNCAyNFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiPjxwYXRoIGZpbGw9XCIjZmZmXCIgZD1cIk0yMS44ODMgMTJsLTcuNTI3IDYuMjM1LjY0NC43NjUgOS03LjUyMS05LTcuNDc5LS42NDUuNzY0IDcuNTI5IDYuMjM2aC0yMS44ODR2MWgyMS44ODN6XCIvPjwvc3ZnPicpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAwKTsgfVxuICAuYS1wZXJzb246aG92ZXIgLmEtcGVyc29uLXBob3RvOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuICAuYS1wZXJzb246aG92ZXIgLmEtcGVyc29uLXBob3RvOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLmEtcGVyc29uIGg1IHtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4xOHB4O1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICMxNDg2Yzg7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuICAuYS1wZXJzb24gaDYge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzNmM2YzZjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4zOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgLnRhYmxlLXN0eWxlIC5hLXBlcnNvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBwYWRkaW5nOiAxcmVtOyB9XG4gICAgLnRhYmxlLXN0eWxlIC5hLXBlcnNvbiBoNSxcbiAgICAudGFibGUtc3R5bGUgLmEtcGVyc29uIGg2IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC50YWJsZS1zdHlsZSAuYS1wZXJzb24gaDUsXG4gICAgICAgIC50YWJsZS1zdHlsZSAuYS1wZXJzb24gaDYge1xuICAgICAgICAgIG1hcmdpbjogMCAxcmVtIDAgMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgICAudGFibGUtc3R5bGUgLmEtcGVyc29uIGg1IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gICAgLnRhYmxlLXN0eWxlIC5hLXBlcnNvbjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTsgfVxuXG5bZGF0YS1yZXZlYWxdIHtcbiAgd2lkdGg6IDkwJTtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIG1hcmdpbi1ib3R0b206IDUlO1xuICBib3JkZXI6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBbZGF0YS1yZXZlYWxdIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIFtkYXRhLXJldmVhbF0gW2RhdGEtY2xvc2VdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDAzMjYyOyB9XG4gICAgW2RhdGEtcmV2ZWFsXSBbZGF0YS1jbG9zZV0gc3ZnIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICBbZGF0YS1yZXZlYWxdIFtkYXRhLWNsb3NlXSBzdmcgcGF0aCB7XG4gICAgICAgIGZpbGw6ICNmZmY7IH1cbiAgW2RhdGEtcmV2ZWFsXSAubW9kYWwtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBwYWRkaW5nOiA1JTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBbZGF0YS1yZXZlYWxdIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA4JTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07IH0gfVxuICAgIFtkYXRhLXJldmVhbF0gLm1vZGFsLWhlYWRlciAubW9kYWwtcGhvdG8ge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIFtkYXRhLXJldmVhbF0gLm1vZGFsLWhlYWRlciAubW9kYWwtcGhvdG8gaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBbZGF0YS1yZXZlYWxdIC5tb2RhbC1oZWFkZXIgLm1vZGFsLXBob3RvIHtcbiAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgICBbZGF0YS1yZXZlYWxdIC5tb2RhbC1oZWFkZXIgLm1vZGFsLWRldGFpbHMge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gICAgW2RhdGEtcmV2ZWFsXSAubW9kYWwtaGVhZGVyIGg1IHtcbiAgICAgIGNvbG9yOiAjZmM2NjA1O1xuICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBbZGF0YS1yZXZlYWxdIC5tb2RhbC1oZWFkZXIgaDUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTUwJTsgfSB9XG4gICAgW2RhdGEtcmV2ZWFsXSAubW9kYWwtaGVhZGVyIGg2IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMzhweDsgfVxuICAgIFtkYXRhLXJldmVhbF0gLm1vZGFsLWhlYWRlciBwLmVtYWlsIHtcbiAgICAgIG1hcmdpbjogMXJlbSAwIDA7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7IH1cbiAgICBbZGF0YS1yZXZlYWxdIC5tb2RhbC1oZWFkZXIgYS53ZWJzaXRlIHtcbiAgICAgIG1hcmdpbjogMXJlbSAwIDA7XG4gICAgICBmb250LXNpemU6IDgwJTsgfVxuICAgIFtkYXRhLXJldmVhbF0gLm1vZGFsLWhlYWRlciBhLndlYnNpdGU6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC44OyB9XG4gIFtkYXRhLXJldmVhbF0gLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmctbGVmdDogNSU7XG4gICAgcGFkZGluZy1yaWdodDogNSU7XG4gICAgZm9udC1zaXplOiA5MCU7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgW2RhdGEtcmV2ZWFsXSAubW9kYWwtYm9keSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOCU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDglOyB9IH1cbiAgICBbZGF0YS1yZXZlYWxdIC5tb2RhbC1ib2R5IC5leHRyYSB7XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgIFtkYXRhLXJldmVhbF0gLm1vZGFsLWJvZHkgLmV4dHJhIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjZmM2NjA1O1xuICAgICAgICBtYXJnaW46IDAgMCAwLjVyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjI4cHg7IH1cbiAgICAgIFtkYXRhLXJldmVhbF0gLm1vZGFsLWJvZHkgLmV4dHJhIGg2ICsgcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICBbZGF0YS1yZXZlYWxdIC5tb2RhbC1ib2R5IC5yZXNlYXJjaC1wcm9qZWN0cyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICBbZGF0YS1yZXZlYWxdIC5tb2RhbC1ib2R5IC5yZXNlYXJjaC1wcm9qZWN0cyB1bCBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgICAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMCA1cHg7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAgICAgW2RhdGEtcmV2ZWFsXSAubW9kYWwtYm9keSAucmVzZWFyY2gtcHJvamVjdHMgdWwgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuI2NvbnRhY3QtcGFnZS1mb3JtIHtcbiAgYmFja2dyb3VuZDogI2Q0ZWVmNSB1cmwoXCIuLi9pbWFnZXMvY29udGFjdC1yZXBlYXQuanBnXCIpIHJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxNTBweCAxNTBweDtcbiAgcGFkZGluZzogMyU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjY29udGFjdC1wYWdlLWZvcm0ge1xuICAgICAgcGFkZGluZzogMTIwcHggNSUgMDsgfSB9XG4gICNjb250YWN0LXBhZ2UtZm9ybSAuaW5zaWRlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZDNlOGU5O1xuICAgIG1heC13aWR0aDogNzUwcHg7XG4gICAgcGFkZGluZzogMyU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI2NvbnRhY3QtcGFnZS1mb3JtIC5pbnNpZGUge1xuICAgICAgICBwYWRkaW5nOiA1JTsgfSB9XG5cbltkYXRhLW1hcF0ge1xuICBoZWlnaHQ6IDMwMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgW2RhdGEtbWFwXSB7XG4gICAgICBoZWlnaHQ6IDQwMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBbZGF0YS1tYXBdIHtcbiAgICAgIGhlaWdodDogNDUwcHg7IH0gfVxuXG4uY29udGFjdC1pbmZvcm1hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNvbnRhY3QtaW5mb3JtYXRpb24gcCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRhY3QtaW5mb3JtYXRpb24ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgLmNvbnRhY3QtaW5mb3JtYXRpb24gLm51bWJlcnMsXG4gIC5jb250YWN0LWluZm9ybWF0aW9uIC5hZGRyZXNzIHtcbiAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29udGFjdC1pbmZvcm1hdGlvbiAubnVtYmVycyxcbiAgICAgIC5jb250YWN0LWluZm9ybWF0aW9uIC5hZGRyZXNzIHtcbiAgICAgICAgZmxleDogMCAxIDQ1JTtcbiAgICAgICAgd2lkdGg6IDQ1JTsgfSB9XG4gIC5jb250YWN0LWluZm9ybWF0aW9uIC5udW1iZXJzID4gZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxMTAlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICMwMDMyNjI7XG4gICAgbGluZS1oZWlnaHQ6IDIuMTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29udGFjdC1pbmZvcm1hdGlvbiAubnVtYmVycyA+IGRpdiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfSB9XG4gICAgLmNvbnRhY3QtaW5mb3JtYXRpb24gLm51bWJlcnMgPiBkaXYgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMjVweDsgfVxuICAgIC5jb250YWN0LWluZm9ybWF0aW9uIC5udW1iZXJzID4gZGl2IGEge1xuICAgICAgY29sb3I6ICMwMDMyNjI7IH1cbiAgICAuY29udGFjdC1pbmZvcm1hdGlvbiAubnVtYmVycyA+IGRpdiAuaWNvbiB7XG4gICAgICB3aWR0aDogMzVweDsgfVxuICAgIC5jb250YWN0LWluZm9ybWF0aW9uIC5udW1iZXJzID4gZGl2IHN2ZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDRweDtcbiAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgaGVpZ2h0OiAyMHB4OyB9XG4gIC5jb250YWN0LWluZm9ybWF0aW9uIC5hZGRyZXNzIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5jb250YWN0LWluZm9ybWF0aW9uIC5hZGRyZXNzID4gZGl2IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jb250YWN0LWluZm9ybWF0aW9uIC5hZGRyZXNzIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAgICAgLmNvbnRhY3QtaW5mb3JtYXRpb24gLmFkZHJlc3MgPiBkaXYge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07IH0gfVxuICAgIC5jb250YWN0LWluZm9ybWF0aW9uIC5hZGRyZXNzIGltZyB7XG4gICAgICB3aWR0aDogNzhweDtcbiAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTsgfVxuXG4jZXZlbnRzLXNlYXJjaCAuc2VhcmNoLWZpbHRlcnMge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAjZXZlbnRzLXNlYXJjaCAuc2VhcmNoLWZpbHRlcnMgc2VsZWN0LFxuICAjZXZlbnRzLXNlYXJjaCAuc2VhcmNoLWZpbHRlcnMgZGl2IHtcbiAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4jZXZlbnRzLWxvb3Age1xuICBiYWNrZ3JvdW5kOiAjZjFlZmVmOyB9XG4gIC5zaW5nbGUtZXZlbnQgI2V2ZW50cy1sb29wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAjZXZlbnRzLWxvb3AgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDIyMCU7IH1cbiAgI2V2ZW50cy1sb29wIC5pbnNpZGUge1xuICAgIHBhZGRpbmc6IDUwcHggMyU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgI2V2ZW50cy1sb29wIC5pbnNpZGUge1xuICAgICAgICBwYWRkaW5nOiA4MHB4IDMlOyB9IH1cbiAgICAjZXZlbnRzLWxvb3AgLmluc2lkZSAuY2FyZCB7XG4gICAgICBtYXJnaW46IDA7IH1cblxuLnJlc2V0LWZpbHRlci1idXR0b24gPiBpOmZpcnN0LWNoaWxkIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJlc2V0LWZpbHRlci1idXR0b24gPiBpOmxhc3QtY2hpbGQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wbGVhc2Utd2FpdCAucmVzZXQtZmlsdGVyLWJ1dHRvbiA+IGk6Zmlyc3QtY2hpbGQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wbGVhc2Utd2FpdCAucmVzZXQtZmlsdGVyLWJ1dHRvbiA+IGk6bGFzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNyZXNlYXJjaC1zZWFyY2ggLnNlYXJjaC1maWx0ZXJzLFxuICAjcGVvcGxlLWZpbHRlciAuc2VhcmNoLWZpbHRlcnMge1xuICAgIGdyaWQ6IGF1dG8gLyAxZnIgMWZyO1xuICAgIGdhcDogMmVtOyB9XG4gICAgI3Jlc2VhcmNoLXNlYXJjaCAuc2VhcmNoLWZpbHRlcnMgPiAuc2VhcmNoLXRleHQsXG4gICAgI3Blb3BsZS1maWx0ZXIgLnNlYXJjaC1maWx0ZXJzID4gLnNlYXJjaC10ZXh0IHtcbiAgICAgIGdyaWQtYXJlYTogMS9hdXRvLzEvYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNyZXNlYXJjaC1zZWFyY2ggLnNlYXJjaC1maWx0ZXJzLFxuICAjcGVvcGxlLWZpbHRlciAuc2VhcmNoLWZpbHRlcnMge1xuICAgIGdyaWQ6IGF1dG8gLyAxZnIgMWZyIDFmciAxZnI7XG4gICAgZ2FwOiAyZW07IH1cbiAgICAjcmVzZWFyY2gtc2VhcmNoIC5zZWFyY2gtZmlsdGVycyA+IC5zZWFyY2gtdGV4dCxcbiAgICAjcGVvcGxlLWZpbHRlciAuc2VhcmNoLWZpbHRlcnMgPiAuc2VhcmNoLXRleHQge1xuICAgICAgZ3JpZC1hcmVhOiAxIC8gMSAvIDEgLyAtMjsgfSB9XG5cbiNyZXNlYXJjaC1sb29wIHtcbiAgYmFja2dyb3VuZDogI2YxZWZlZjtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjcmVzZWFyY2gtbG9vcCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7IH0gfVxuICAjcmVzZWFyY2gtbG9vcCBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMjIwJTsgfVxuICAjcmVzZWFyY2gtbG9vcCAuaW5zaWRlIHtcbiAgICBwYWRkaW5nOiA1MHB4IDMlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICNyZXNlYXJjaC1sb29wIC5pbnNpZGUge1xuICAgICAgICBwYWRkaW5nOiAwIDUlIDUwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjcmVzZWFyY2gtbG9vcCAuaW5zaWRlIHtcbiAgICAgICAgcGFkZGluZzogODBweCAwIDUwcHg7IH0gfVxuICAjcmVzZWFyY2gtbG9vcCAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAjcmVzZWFyY2gtbG9vcCAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjcmVzZWFyY2gtbG9vcCAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH0gfVxuXG4jc2luZ2xlLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDExNTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAzJTtcbiAgcGFkZGluZy1yaWdodDogMyU7IH1cbiAgI3NpbmdsZS1jb250ZW50LmZ1bGwtd2lkdGggLnNpbmdsZS1jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDAgMSAxMDAlICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gICNzaW5nbGUtY29udGVudCBoMSB7XG4gICAgbWFyZ2luOiAycmVtIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgI3NpbmdsZS1jb250ZW50IGgxIHtcbiAgICAgICAgbWFyZ2luOiA0cmVtIDAgM3JlbTsgfSB9XG4gICNzaW5nbGUtY29udGVudCAuc2luZ2xlLXBvc3QtbWV0YSB7XG4gICAgcGFkZGluZzogMCAwIDFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjYTdhN2E3OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLXBvc3QtbWV0YSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAycmVtOyB9IH1cbiAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1wb3N0LW1ldGEgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLXBvc3QtbWV0YSBzcGFuLmxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtcG9zdC1tZXRhIHNwYW4ubGFiZWwge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLXBvc3QtbWV0YSBzcGFuLmV2ZW50LXR5cGUge1xuICAgICAgICBjb2xvcjogIzE0ODZjODtcbiAgICAgICAgZm9udC1zaXplOiA4MCU7IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLXBvc3QtbWV0YSBzcGFuLmV2ZW50LWRhdGUge1xuICAgICAgICBmb250LXNpemU6IDgwJTsgfVxuICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IHtcbiAgICAgICAgICBmbGV4OiAwIDEgNzUlO1xuICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNSU7IH0gfVxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDEsXG4gICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMixcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgzLFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDIsXG4gICAgICAjcGFnZS1pbnRybyAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMixcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGg0LFxuICAgICAgI3BhZ2UtaW50cm8gI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDQsXG4gICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyLFxuICAgICAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMixcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg0LFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDUsXG4gICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICBjb2xvcjogIzAwMzI2MjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgxLFxuICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgyLFxuICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgzLFxuICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGgyLFxuICAgICAgICAgICNwYWdlLWludHJvICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgyLFxuICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGg0LFxuICAgICAgICAgICNwYWdlLWludHJvICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg0LFxuICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIsXG4gICAgICAgICAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMixcbiAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNCxcbiAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNSxcbiAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDEgKyBwLFxuICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMSArIHVsLFxuICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMiArIHAsXG4gICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgyICsgdWwsXG4gICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgzICsgcCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDIgKyBwLFxuICAgICAgICAjcGFnZS1pbnRybyAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMiArIHAsXG4gICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGgzICsgcCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDQgKyBwLFxuICAgICAgICAjcGFnZS1pbnRybyAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNCArIHAsXG4gICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIgKyBwLFxuICAgICAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgyICsgcCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDMgKyB1bCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDIgKyB1bCxcbiAgICAgICAgI3BhZ2UtaW50cm8gI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDIgKyB1bCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDMgKyB1bCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDQgKyB1bCxcbiAgICAgICAgI3BhZ2UtaW50cm8gI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDQgKyB1bCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMiArIHVsLFxuICAgICAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgyICsgdWwsXG4gICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg0ICsgcCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDQgKyB1bCxcbiAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDUgKyBwLFxuICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNSArIHVsLFxuICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNiArIHAsXG4gICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg2ICsgdWwge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMSArIHAsXG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMSArIHVsLFxuICAgICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDIgKyBwLFxuICAgICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDIgKyB1bCxcbiAgICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgzICsgcCxcbiAgICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGgyICsgcCxcbiAgICAgICAgICAgICNwYWdlLWludHJvICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgyICsgcCxcbiAgICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGgzICsgcCxcbiAgICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGg0ICsgcCxcbiAgICAgICAgICAgICNwYWdlLWludHJvICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg0ICsgcCxcbiAgICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgaDIgKyBwLFxuICAgICAgICAgICAgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMiArIHAsXG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMyArIHVsLFxuICAgICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDIgKyB1bCxcbiAgICAgICAgICAgICNwYWdlLWludHJvICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgyICsgdWwsXG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCAjcGFnZS1pbnRybyBoMyArIHVsLFxuICAgICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgI3BhZ2UtaW50cm8gaDQgKyB1bCxcbiAgICAgICAgICAgICNwYWdlLWludHJvICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg0ICsgdWwsXG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyICsgdWwsXG4gICAgICAgICAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgyICsgdWwsXG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNCArIHAsXG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNCArIHVsLFxuICAgICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDUgKyBwLFxuICAgICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDUgKyB1bCxcbiAgICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg2ICsgcCxcbiAgICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg2ICsgdWwge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzNTAlOyB9XG4gICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzAwJTsgfVxuICAgICAgXG4gICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoMyxcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ICNwYWdlLWludHJvIGgyLFxuICAgICAgI3BhZ2UtaW50cm8gI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDIsXG4gICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCAjcGFnZS1pbnRybyBoNCxcbiAgICAgICNwYWdlLWludHJvICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg0LFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSBoMixcbiAgICAgIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDIge1xuICAgICAgICBmb250LXNpemU6IDI1MCU7IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAyMDAlOyB9XG4gICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTsgfVxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgaDYge1xuICAgICAgICBmb250LXNpemU6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuOHJlbTsgfVxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgPiBoMTpmaXJzdC1vZi10eXBlLFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgPiBoMjpmaXJzdC1vZi10eXBlLFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgPiBoMzpmaXJzdC1vZi10eXBlLFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAjcGFnZS1pbnRybyAuc2luZ2xlLWNvbnRlbnQgPiBoMjpmaXJzdC1vZi10eXBlLFxuICAgICAgI3BhZ2UtaW50cm8gI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgPiBoMjpmaXJzdC1vZi10eXBlLFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAjcGFnZS1pbnRybyAuc2luZ2xlLWNvbnRlbnQgPiBoMzpmaXJzdC1vZi10eXBlLFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAjcGFnZS1pbnRybyAuc2luZ2xlLWNvbnRlbnQgPiBoNDpmaXJzdC1vZi10eXBlLFxuICAgICAgI3BhZ2UtaW50cm8gI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgPiBoNDpmaXJzdC1vZi10eXBlLFxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC5zaW5nbGUtY29udGVudCA+IGgyOmZpcnN0LW9mLXR5cGUsXG4gICAgICAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ID4gaDI6Zmlyc3Qtb2YtdHlwZSxcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ID4gaDQ6Zmlyc3Qtb2YtdHlwZSxcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ID4gaDU6Zmlyc3Qtb2YtdHlwZSxcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50ID4gaDY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGZpZ3VyZSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGZpZ3VyZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBmaWd1cmUgaW1nIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgZmlndXJlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9XG4gICAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBmaWd1cmUgaW1nIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1jb250ZW50IGZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDgwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICBjb2xvcjogIzhhOGE4YTsgfVxuICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtY29udGVudCBmaWd1cmUgKyBwIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLXNpZGViYXIge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctdG9wOiAycmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtc2lkZWJhciB7XG4gICAgICAgICAgZmxleDogMCAxIDI1JTtcbiAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1zaWRlYmFyIC5pbmplY3RlZC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtc2lkZWJhciAuaW5qZWN0ZWQtaW1hZ2Uge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMnJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLXNpZGViYXIgLmluamVjdGVkLWltYWdlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDNyZW07IH0gfVxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLXNpZGViYXIgLm1ldGEtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1zaWRlYmFyIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMzhweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6ICMwMDMyNjI7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzAwMzI2MjsgfVxuICAgICAgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLXNpZGViYXIgcCxcbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1zaWRlYmFyIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiA4NSU7IH1cbiAgICAgICNzaW5nbGUtY29udGVudCAuc2luZ2xlLW1haW4gLnNpbmdsZS1zaWRlYmFyIC5ldmVudC1idXR0b25zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAgICAgICAjc2luZ2xlLWNvbnRlbnQgLnNpbmdsZS1tYWluIC5zaW5nbGUtc2lkZWJhciAuZXZlbnQtYnV0dG9ucyAuc2l0ZS1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG5wLmJyZWFkY3J1bWJzIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjYTdhN2E3O1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW46IDFyZW0gMCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgcC5icmVhZGNydW1icyB7XG4gICAgICBtYXJnaW46IDJyZW0gMCAwOyB9IH1cbiAgcC5icmVhZGNydW1icyAuc2VwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgcC5icmVhZGNydW1icyBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjYTdhN2E3OyB9XG5cbi8qLS0tLS0tLS0tLSAgU3BlYWtlcnMgIC0tLS0tLS0tLS0qL1xuI2V2ZW50LXNwZWFrZXJzIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICNldmVudC1zcGVha2VycyB7XG4gICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfSB9XG4gICNldmVudC1zcGVha2VycyAuaW5zaWRlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjFlZmVmO1xuICAgIG1heC13aWR0aDogMTE1MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICNldmVudC1zcGVha2VycyAuaW5zaWRlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4OyB9IH1cbiAgI2V2ZW50LXNwZWFrZXJzIGgyIHtcbiAgICBjb2xvcjogIzE0ODZjODsgfVxuICAjZXZlbnQtc3BlYWtlcnMgaDUge1xuICAgIGNvbG9yOiAjMTQ4NmM4OyB9XG4gICNldmVudC1zcGVha2VycyAuaW1hZ2UgaW1nLFxuICAjZXZlbnQtc3BlYWtlcnMgLm5vLWltYWdlIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4vKi0tLS0tLS0tLS0gIFBhcnRuZXJzICAtLS0tLS0tLS0tKi9cbiNldmVudC1wYXJ0bmVycyB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAjZXZlbnQtcGFydG5lcnMge1xuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH0gfVxuICAjZXZlbnQtcGFydG5lcnMgLmluc2lkZSB7XG4gICAgYmFja2dyb3VuZDogI2QzZThlOTtcbiAgICBtYXgtd2lkdGg6IDExNTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogNTBweCAzJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAjZXZlbnQtcGFydG5lcnMgLmluc2lkZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDsgfSB9XG4gICNldmVudC1wYXJ0bmVycyBoMiB7XG4gICAgY29sb3I6ICNmYzY2MDU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICNldmVudC1wYXJ0bmVycyAucGFydG5lci1sb2dvcyB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiAyZW07IH1cbiAgICAjZXZlbnQtcGFydG5lcnMgLnBhcnRuZXItbG9nb3MgLmltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgICBwYWRkaW5nOiAyJTtcbiAgICAgIGZsZXg6IDAgMCAyODBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBnYXA6IDJyZW07IH1cbiAgICAjZXZlbnQtcGFydG5lcnMgLnBhcnRuZXItbG9nb3MgcCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDcwJTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICBtYXJnaW46IDFyZW0gMCAwOyB9XG4gICAgI2V2ZW50LXBhcnRuZXJzIC5wYXJ0bmVyLWxvZ29zIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgbWF4LWhlaWdodDogMTUwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICNldmVudC1wYXJ0bmVycyAucGFydG5lci1sb2dvcyBpbWcge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAjZXZlbnQtcGFydG5lcnMgLmZvdXItY29sdW1uLXNsaWRlciB7XG4gICAgbWF4LXdpZHRoOiAxMTUwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICNldmVudC1wYXJ0bmVycyAuZm91ci1jb2x1bW4tc2xpZGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cblxuLyotLS0tLS0tLS0tICBFdmVudCBSZXNvdXJjZXMgIC0tLS0tLS0tLS0qL1xuI2V2ZW50LXJlc291cmNlcyB7XG4gIHBhZGRpbmc6IDUwcHggMyU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAjZXZlbnQtcmVzb3VyY2VzIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggNSUgMTAwcHg7IH0gfVxuICAjZXZlbnQtcmVzb3VyY2VzIC5pbnNpZGUge1xuICAgIG1heC13aWR0aDogMTE1MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICNldmVudC1yZXNvdXJjZXMgLmluc2lkZS5oYXMtY2FyZHMge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdhcDogMmVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICNldmVudC1yZXNvdXJjZXMgLmluc2lkZS5oYXMtY2FyZHMge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjsgfSB9XG4gICAgICAjZXZlbnQtcmVzb3VyY2VzIC5pbnNpZGUuaGFzLWNhcmRzIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgI2V2ZW50LXJlc291cmNlcyBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMjIwJTsgfVxuICAjZXZlbnQtcmVzb3VyY2VzIC5oYXMtY2FyZHMge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgI2V2ZW50LXJlc291cmNlcyAuaGFzLWNhcmRzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfSB9XG5cbi8qLS0tLS0tLS0tLSAgUmVnaXN0ZXIgTW9kYWwgIC0tLS0tLS0tLS0qL1xuI3JlZ2lzdGVyLW1vZGFsIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAwOyB9XG4gICNyZWdpc3Rlci1tb2RhbCAubW9kYWwtYm9keSB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7IH1cbiAgI3JlZ2lzdGVyLW1vZGFsIC5nZm9ybV93cmFwcGVyIGlucHV0LFxuICAjcmVnaXN0ZXItbW9kYWwgLmdmb3JtX3dyYXBwZXIgdGV4dGFyZWEge1xuICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7IH1cblxuLyotLS0tLS0tLS0tICBJbXBhY3QgUGFnZXMgIC0tLS0tLS0tLS0qL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpbmdsZS1pbXBhY3QgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiAuc2luZ2xlLWNvbnRlbnQgZmlndXJlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIG1hcmdpbi1yaWdodDogMnJlbTsgfSB9XG5cbiNzZWN0b3ItaW5mbyB7XG4gIHBhZGRpbmctbGVmdDogMyU7XG4gIHBhZGRpbmctcmlnaHQ6IDMlO1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICNzZWN0b3ItaW5mbyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogODBweDsgfSB9XG4gICNzZWN0b3ItaW5mbyBpbWcubGVhZC1pbWFnZSB7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAjc2VjdG9yLWluZm8gaW1nLmxlYWQtaW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IDMwMHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3NlY3Rvci1pbmZvIGltZy5sZWFkLWltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiA0MDBweDsgfSB9XG5cbi8qLS0tLS0tLS0tLSAgU2VjdG9yIEluZm8gIC0tLS0tLS0tLS0qL1xuLnNlY3Rvci1pbmZvcm1hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VjdG9yLWluZm9ybWF0aW9uIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAuc2VjdG9yLWluZm9ybWF0aW9uIC5zZWN0b3Itd3JpdGV1cCB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNlY3Rvci1pbmZvcm1hdGlvbiAuc2VjdG9yLXdyaXRldXAge1xuICAgICAgICBmbGV4OiAwIDEgNzUlO1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1JTsgfSB9XG4gICAgLnNlY3Rvci1pbmZvcm1hdGlvbiAuc2VjdG9yLXdyaXRldXAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNlY3Rvci1pbmZvcm1hdGlvbiAuc2VjdG9yLXdyaXRldXAgaW1nIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5zZWN0b3ItaW5mb3JtYXRpb24gLnNlY3Rvci13cml0ZXVwIGltZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfSB9XG4gIC5zZWN0b3ItaW5mb3JtYXRpb24gLnNlY3Rvci1tZXRhIHtcbiAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2VjdG9yLWluZm9ybWF0aW9uIC5zZWN0b3ItbWV0YSB7XG4gICAgICAgIGZsZXg6IDAgMSAyNSU7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgICAuc2VjdG9yLWluZm9ybWF0aW9uIC5zZWN0b3ItbWV0YSAuc2VjdG9yLWJ1dHRvbnMge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAgICAgLnNlY3Rvci1pbmZvcm1hdGlvbiAuc2VjdG9yLW1ldGEgLnNlY3Rvci1idXR0b25zIC5zaXRlLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbi8qLS0tLS0tLS0tLSAgU2VjdGlvbnMgIC0tLS0tLS0tLS0qL1xuLnRheG9ub215LXNlY3Rpb24ge1xuICBwYWRkaW5nOiA1MHB4IDMlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnRheG9ub215LXNlY3Rpb24gLmluc2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC50YXhvbm9teS1zZWN0aW9uIC5pbnNpZGUgPiBoMywgLnRheG9ub215LXNlY3Rpb24gI3BhZ2UtaW50cm8gLmluc2lkZSA+IGgyLCAjcGFnZS1pbnRybyAudGF4b25vbXktc2VjdGlvbiAuaW5zaWRlID4gaDIsXG4gIC50YXhvbm9teS1zZWN0aW9uICNwYWdlLWludHJvIC5pbnNpZGUgPiBoMywgI3BhZ2UtaW50cm8gLnRheG9ub215LXNlY3Rpb24gLmluc2lkZSA+IGgzLFxuICAudGF4b25vbXktc2VjdGlvbiAjcGFnZS1pbnRybyAuaW5zaWRlID4gaDQsICNwYWdlLWludHJvIC50YXhvbm9teS1zZWN0aW9uIC5pbnNpZGUgPiBoNCwgLnRheG9ub215LXNlY3Rpb24gLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAuaW5zaWRlID4gaDIsIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLnRheG9ub215LXNlY3Rpb24gLmluc2lkZSA+IGgyIHtcbiAgICBmb250LXNpemU6IDE4MCU7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudGF4b25vbXktc2VjdGlvbiAuaW5zaWRlID4gaDMsIC50YXhvbm9teS1zZWN0aW9uICNwYWdlLWludHJvIC5pbnNpZGUgPiBoMiwgI3BhZ2UtaW50cm8gLnRheG9ub215LXNlY3Rpb24gLmluc2lkZSA+IGgyLFxuICAgICAgLnRheG9ub215LXNlY3Rpb24gI3BhZ2UtaW50cm8gLmluc2lkZSA+IGgzLCAjcGFnZS1pbnRybyAudGF4b25vbXktc2VjdGlvbiAuaW5zaWRlID4gaDMsXG4gICAgICAudGF4b25vbXktc2VjdGlvbiAjcGFnZS1pbnRybyAuaW5zaWRlID4gaDQsICNwYWdlLWludHJvIC50YXhvbm9teS1zZWN0aW9uIC5pbnNpZGUgPiBoNCwgLnRheG9ub215LXNlY3Rpb24gLmJ1aWxkLWNvbnRlbnRfYW5kX2JhY2tncm91bmRfaW1hZ2UjYnVpbGQtMSAuaW5zaWRlID4gaDIsIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLnRheG9ub215LXNlY3Rpb24gLmluc2lkZSA+IGgyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDIyMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50YXhvbm9teS1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDgwcHggMyU7IH0gfVxuICAuc2luZ2xlLXBvc3QgLnRheG9ub215LXNlY3Rpb24gY2VudGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDsgfVxuICAudGF4b25vbXktc2VjdGlvbi50YXhvbm9teS1zZWN0aW9uLWdyZXkge1xuICAgIGJhY2tncm91bmQ6ICNmMWVmZWY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRheG9ub215LXNlY3Rpb24gLmNhcmQgaDMsIC50YXhvbm9teS1zZWN0aW9uIC5jYXJkICNwYWdlLWludHJvIGgyLCAjcGFnZS1pbnRybyAudGF4b25vbXktc2VjdGlvbiAuY2FyZCBoMixcbiAgICAudGF4b25vbXktc2VjdGlvbiAuY2FyZCAjcGFnZS1pbnRybyBoMywgI3BhZ2UtaW50cm8gLnRheG9ub215LXNlY3Rpb24gLmNhcmQgaDMsXG4gICAgLnRheG9ub215LXNlY3Rpb24gLmNhcmQgI3BhZ2UtaW50cm8gaDQsICNwYWdlLWludHJvIC50YXhvbm9teS1zZWN0aW9uIC5jYXJkIGg0LCAudGF4b25vbXktc2VjdGlvbiAuY2FyZCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIGgyLCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC50YXhvbm9teS1zZWN0aW9uIC5jYXJkIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTIwJTsgfSB9XG4gIC50YXhvbm9teS1zZWN0aW9uIC5zZWN0b3Itc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50YXhvbm9teS1zZWN0aW9uIC5zZWN0b3Itc2xpZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfVxuICAgICAgICAudGF4b25vbXktc2VjdGlvbiAuc2VjdG9yLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9IH1cbiAgLnRheG9ub215LXNlY3Rpb24gLnNlY3Rvci1zbGlkZXItY29udHJvbHMge1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAudGF4b25vbXktc2VjdGlvbiAuc2VjdG9yLXNsaWRlci1jb250cm9scyAuc2xpY2stYXJyb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50YXhvbm9teS1zZWN0aW9uIC5zZWN0b3Itc2xpZGVyLWNvbnRyb2xzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgei1pbmRleDogMTAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgICAudGF4b25vbXktc2VjdGlvbiAuc2VjdG9yLXNsaWRlci1jb250cm9scyB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApOyB9XG4gICAgICAgIC50YXhvbm9teS1zZWN0aW9uIC5zZWN0b3Itc2xpZGVyLWNvbnRyb2xzIGJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgICAgIC50YXhvbm9teS1zZWN0aW9uIC5zZWN0b3Itc2xpZGVyLWNvbnRyb2xzIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMzAwcHg7IH0gfVxuXG4vKi0tLS0tLS0tLS0gIEluaXRpYXRpdmUgIC0tLS0tLS0tLS0qL1xuLnRheG9ub215LXNlY3Rpb24taW5pdGlhdGl2ZXMge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICAudGF4b25vbXktc2VjdGlvbi1pbml0aWF0aXZlcyAuaW5zaWRlID4gaDMsIC50YXhvbm9teS1zZWN0aW9uLWluaXRpYXRpdmVzICNwYWdlLWludHJvIC5pbnNpZGUgPiBoMiwgI3BhZ2UtaW50cm8gLnRheG9ub215LXNlY3Rpb24taW5pdGlhdGl2ZXMgLmluc2lkZSA+IGgyLFxuICAudGF4b25vbXktc2VjdGlvbi1pbml0aWF0aXZlcyAjcGFnZS1pbnRybyAuaW5zaWRlID4gaDMsICNwYWdlLWludHJvIC50YXhvbm9teS1zZWN0aW9uLWluaXRpYXRpdmVzIC5pbnNpZGUgPiBoMyxcbiAgLnRheG9ub215LXNlY3Rpb24taW5pdGlhdGl2ZXMgI3BhZ2UtaW50cm8gLmluc2lkZSA+IGg0LCAjcGFnZS1pbnRybyAudGF4b25vbXktc2VjdGlvbi1pbml0aWF0aXZlcyAuaW5zaWRlID4gaDQsIC50YXhvbm9teS1zZWN0aW9uLWluaXRpYXRpdmVzIC5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlI2J1aWxkLTEgLmluc2lkZSA+IGgyLCAuYnVpbGQtY29udGVudF9hbmRfYmFja2dyb3VuZF9pbWFnZSNidWlsZC0xIC50YXhvbm9teS1zZWN0aW9uLWluaXRpYXRpdmVzIC5pbnNpZGUgPiBoMiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudGF4b25vbXktc2VjdGlvbi1pbml0aWF0aXZlcyAuaW5pdGlhdGl2ZS1saXN0aW5ncyB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnRheG9ub215LXNlY3Rpb24taW5pdGlhdGl2ZXMgLmluaXRpYXRpdmUtbGlzdGluZ3Mge1xuICAgICAgICBmbGV4OiAwIDEgNzUlO1xuICAgICAgICB3aWR0aDogNzUlOyB9IH1cbiAgICAudGF4b25vbXktc2VjdGlvbi1pbml0aWF0aXZlcyAuaW5pdGlhdGl2ZS1saXN0aW5ncyAuY2FyZDpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnRheG9ub215LXNlY3Rpb24taW5pdGlhdGl2ZXMgLmluaXRpYXRpdmUtbGlzdGluZ3MgLmNhcmQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuLnRheC1pbml0aWF0aXZlICNwYWdlLWludHJvIFtkYXRhLXN2Z10ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi50YXgtdGhlbWVzIC50YXhvbm9teS1zZWN0aW9uLWluaXRpYXRpdmVzIC5jYXJkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uaW5pdGlhdGl2ZS1pbnRybyBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmluaXRpYXRpdmUtaW50cm8gaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pbml0aWF0aXZlLWludHJvIGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cmVtOyB9IH1cblxuLmluaXRpYXRpdmUtaW50cm8gaDIge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi50YXhvbm9teS1zZWN0aW9uLW5ld3MgLmhhcy1jYXJkcyB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC50YXhvbm9teS1zZWN0aW9uLW5ld3MgLmhhcy1jYXJkcyAuY2FyZCB7XG4gICAgbWFyZ2luOiAxLjUlOyB9XG5cbiNncmV5LXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjZjFlZmVmO1xuICBwYWRkaW5nOiA1MHB4IDMlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgI2dyZXktc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDMlOyB9IH1cblxuI2NvbnRlbnQtbG9vcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWdlLWlkLTYwOCAjcGFnZS1pbnRybyB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA1MHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1pZC02MDggI3BhZ2UtaW50cm8ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNTBweDsgfSB9XG5cbi5wYWdlLWlkLTYwOCAjb3VyLXNlY3RvcnMge1xuICBiYWNrZ3JvdW5kOiAjZWZlYWU3OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtaWQtNjA4ICNvdXItc2VjdG9ycyB7XG4gICAgICBwYWRkaW5nLXRvcDogMTIwcHg7IH0gfVxuXG4ucGFnZS1pZC02MDggI291ci10aGVtZXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnBhZ2UtaWQtNjA4ICNvdXItdGhlbWVzIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDMyNjI7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlLWlkLTYwOCAjb3VyLXRoZW1lcyB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgODAlICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYWdlLWlkLTYwOCAjb3VyLXRoZW1lcyB7XG4gICAgICBwYWRkaW5nLXRvcDogMTIwcHg7IH0gfVxuICAucGFnZS1pZC02MDggI291ci10aGVtZXMgaDIge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5wYWdlLWlkLTYwOCAjb3VyLXRoZW1lcyAuZmxpcC1jYXJkIC5mcm9udCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIC5wYWdlLWlkLTYwOCAjb3VyLXRoZW1lcyAuZmxpcC1jYXJkIC5mcm9udDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZjNjYwNTsgfVxuICAgIC5wYWdlLWlkLTYwOCAjb3VyLXRoZW1lcyAuZmxpcC1jYXJkIC5mcm9udCBoNCxcbiAgICAucGFnZS1pZC02MDggI291ci10aGVtZXMgLmZsaXAtY2FyZCAuZnJvbnQgYSxcbiAgICAucGFnZS1pZC02MDggI291ci10aGVtZXMgLmZsaXAtY2FyZCAuZnJvbnQgLnNpdGUtYnV0dG9uIHtcbiAgICAgIGNvbG9yOiAjZmM2NjA1OyB9XG5cbiN3b3JrLWJhbm5lciB7XG4gIGJhY2tncm91bmQ6ICNkM2U4ZTk7IH1cbiAgI3dvcmstYmFubmVyIC5iYWNrZ3JvdW5kIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3dvcmstYmFubmVyIC5iYWNrZ3JvdW5kIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4OyB9IH1cbiAgI3dvcmstYmFubmVyIHAge1xuICAgIGNvbG9yOiAjM2YzZjNmO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBtYXJnaW46IDJyZW0gYXV0bzsgfVxuICAjd29yay1iYW5uZXIgLndhdGVybWFyayB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA2MCU7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgI3dvcmstYmFubmVyIC5vcC1sYWItbG9nbyB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDM2MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDsgfVxuICAjd29yay1iYW5uZXIgaDIsXG4gICN3b3JrLWJhbm5lciBwLFxuICAjd29yay1iYW5uZXIgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwOyB9XG4gICN3b3JrLWJhbm5lciAuc2l0ZS1idXR0b24ge1xuICAgIGNvbG9yOiAjMDAzMjYyOyB9XG4gICAgI3dvcmstYmFubmVyIC5zaXRlLWJ1dHRvbiBzdmcgcGF0aCB7XG4gICAgICBmaWxsOiAjMDAzMjYyOyB9XG5cbi5wYWdlLWlkLTE0MCAjYnVpbGQtMSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3AgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG8gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDE1JTsgfVxuXG4ucGFnZS1pZC0xNDAgI2J1aWxkLTIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucGFnZS1pZC0xNDAgI2J1aWxkLTUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlciAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS1pZC0xNDAgI2J1aWxkLTUge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDglO1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1JTsgfSB9XG4gIC5wYWdlLWlkLTE0MCAjYnVpbGQtNSAuaW5zaWRlIHtcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDAgMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnBhZ2UtaWQtMTQwICNidWlsZC01IC5pbnNpZGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4ucGFnZS1pZC0xNDAgI2J1aWxkLTMge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAzNSU7IH1cblxuLnBhZ2UtaWQtMTQwICNidWlsZC00IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFnZS1pZC0xNDAgI2J1aWxkLTQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwJTsgfSB9XG5cbi5wYWdlLWlkLTE0MCAubGFyZ2VfaW1hZ2VfdG9jIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiAjZjlmN2Y4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgcGFkZGluZzogMzBweDtcbiAgd2lkdGg6IDEwNiU7XG4gIG1hcmdpbi1sZWZ0OiAtMyU7XG4gIG1hcmdpbi1yaWdodDogLTMlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhZ2UtaWQtMTQwIC5sYXJnZV9pbWFnZV90b2Mge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMCA1MHB4OyB9IH1cbiAgLnBhZ2UtaWQtMTQwIC5sYXJnZV9pbWFnZV90b2MgZGl2IHtcbiAgICBmbGV4OiAwIDEgNTAlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLWlkLTE0MCAubGFyZ2VfaW1hZ2VfdG9jIGRpdiB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAxMHB4O1xuICAgICAgICBmbGV4OiAwIDEgMjIlO1xuICAgICAgICB3aWR0aDogMjIlO1xuICAgICAgICBib3JkZXItdG9wOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7IH0gfVxuICAgIC5wYWdlLWlkLTE0MCAubGFyZ2VfaW1hZ2VfdG9jIGRpdiBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDFyZW0gMDsgfVxuICAgIC5wYWdlLWlkLTE0MCAubGFyZ2VfaW1hZ2VfdG9jIGRpdiBoNSxcbiAgICAucGFnZS1pZC0xNDAgLmxhcmdlX2ltYWdlX3RvYyBkaXYgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDc1JTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4zOHB4O1xuICAgICAgY29sb3I6ICNiOWMxYzM7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOyB9XG4gICAgLnBhZ2UtaWQtMTQwIC5sYXJnZV9pbWFnZV90b2MgZGl2OmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZkYjUxNTsgfVxuICAgICAgLnBhZ2UtaWQtMTQwIC5sYXJnZV9pbWFnZV90b2MgZGl2OmhvdmVyIGg1LFxuICAgICAgLnBhZ2UtaWQtMTQwIC5sYXJnZV9pbWFnZV90b2MgZGl2OmhvdmVyIHNwYW4ge1xuICAgICAgICBjb2xvcjogIzE0ODZjODsgfVxuXG4jcGFydG5lcnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiA1MHB4IDUlO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICNwYXJ0bmVycyAucGFydG5lci1ibG9jayB7XG4gICAgZmxleDogMCAxIDUwJTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMyU7XG4gICAgbWFyZ2luLWJvdHRvbTogNjAwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICNwYXJ0bmVycyAucGFydG5lci1ibG9jayAuaW1hZ2Uge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgI3BhcnRuZXJzIC5wYXJ0bmVyLWJsb2NrIC5pbWFnZSBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgI3BhcnRuZXJzIC5wYXJ0bmVyLWJsb2NrIGg2IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4yOXB4O1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbWFyZ2luOiAxcmVtIDAgMDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICNwYXJ0bmVycyAucGFydG5lci1ibG9jayBoNiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAjcGFydG5lcnMgLnBhcnRuZXItYmxvY2sge1xuICAgICAgICBmbGV4OiAwIDEgMzMlO1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgICAgICNwYXJ0bmVycyAucGFydG5lci1ibG9jayAuaW1hZ2UgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LWhlaWdodDogMTAwcHg7IH1cbiAgICAgICAgI3BhcnRuZXJzIC5wYXJ0bmVyLWJsb2NrIC5pbWFnZSBzdmcge1xuICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgICAgbWF4LWhlaWdodDogMTAwcHg7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjcGFydG5lcnMgLnBhcnRuZXItYmxvY2sge1xuICAgICAgICBmbGV4OiAwIDEgMjAlO1xuICAgICAgICB3aWR0aDogMjAlOyB9IH1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZywgZm9yY2UtcHNldWRvLW5lc3RpbmcsIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kc2Vjb25kYXJ5LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBnZXQtY29sb3Ioc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogZ2V0LWNvbG9yKHdhcm5pbmcpO1xuJGFsZXJ0LWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIExvYWRzIG5vcm1hbGl6ZS5jc3MuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLXpmLW5vcm1hbGl6ZSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZSgpO1xufVxuIiwiLy8gIEZvdW5kYXRpb25QcmVzcyBzZXR0aW5ncy5cbi8vICBCYXNlZCBvbiBGb3VuZGF0aW9uIGZvciBTaXRlcyB2Ni40LjNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vICAyMC4gRm9ybXNcbi8vICAyMS4gTGFiZWxcbi8vICAyMi4gTWVkaWEgT2JqZWN0XG4vLyAgMjMuIE1lbnVcbi8vICAyNC4gTWV0ZXJcbi8vICAyNS4gT2ZmLWNhbnZhc1xuLy8gIDI2LiBPcmJpdFxuLy8gIDI3LiBQYWdpbmF0aW9uXG4vLyAgMjguIFByb2dyZXNzIEJhclxuLy8gIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vICAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAgMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAgMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vICAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vICA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAgNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAgNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgNDcuIFJldmVhbFxuLy8gIDQ4LiBTbGlkZXJcbi8vICA0OS4gU3dpdGNoXG4vLyAgNTAuIFRhYmxlXG4vLyAgNTEuIFRhYnNcbi8vICA1Mi4gVGh1bWJuYWlsXG4vLyAgNTMuIFRpdGxlIEJhclxuLy8gIDU0LiBUb29sdGlwXG4vLyAgNTUuIFRvcCBCYXJcbi8vICA1Ni4gWHkgR3JpZFxuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNDg2YzgsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4gIG5hdnk6ICMwMDMyNjIsXG4gIGJsdWU6ICMxNDg2YzgsXG4gIGxpZ2h0Ymx1ZTogI2QzZThlOSxcbiAgeWVsbG93OiAjZmRiNTE1LFxuICBvcmFuZ2U6ICNmYzY2MDVcbik7XG4kbGlnaHQtZ3JheTogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBsaWdodGJsdWUpO1xuJG1lZGl1bS1ncmF5OiAjYjljMWMzO1xuJGRhcmstZ3JheTogIzhhOGE4YTtcbiRibGFjazogIzNmM2YzZjtcbiR3aGl0ZTogI2ZmZjtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiAnR290aGFtJywgJ0hlbHZldGljYSBOZXVlJywgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiAzMDA7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDA7XG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZTtcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0bztcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICB4c21hbGw6IDAsXG4gIHNtYWxsOiA0MjVweCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGdyaWQtY29sdW1uLWFsaWFzOiAnY29sdW1ucyc7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogYm9sZDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjI7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKFxuICAgICAgJ2ZvbnQtc2l6ZSc6IDI0XG4gICAgKSxcbiAgICAnaDInOiAoXG4gICAgICAnZm9udC1zaXplJzogMjBcbiAgICApLFxuICAgICdoMyc6IChcbiAgICAgICdmb250LXNpemUnOiAxOVxuICAgICksXG4gICAgJ2g0JzogKFxuICAgICAgJ2ZvbnQtc2l6ZSc6IDE4XG4gICAgKSxcbiAgICAnaDUnOiAoXG4gICAgICAnZm9udC1zaXplJzogMTdcbiAgICApLFxuICAgICdoNic6IChcbiAgICAgICdmb250LXNpemUnOiAxNlxuICAgIClcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKFxuICAgICAgJ2ZvbnQtc2l6ZSc6IDQ4XG4gICAgKSxcbiAgICAnaDInOiAoXG4gICAgICAnZm9udC1zaXplJzogNDBcbiAgICApLFxuICAgICdoMyc6IChcbiAgICAgICdmb250LXNpemUnOiAzMVxuICAgICksXG4gICAgJ2g0JzogKFxuICAgICAgJ2ZvbnQtc2l6ZSc6IDI1XG4gICAgKSxcbiAgICAnaDUnOiAoXG4gICAgICAnZm9udC1zaXplJzogMjBcbiAgICApLFxuICAgICdoNic6IChcbiAgICAgICdmb250LXNpemUnOiAxNlxuICAgIClcbiAgKVxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHdoaXRlO1xuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDkuIEJhZGdlXG4vLyAtLS0tLS0tLVxuXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjaztcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcblxuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsOiAnXFxcXCc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMTEuIEJ1dHRvblxuLy8gLS0tLS0tLS0tLVxuXG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtO1xuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJ1dHRvbi1maWxsOiBzb2xpZDtcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGU7XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHg7XG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW1cbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbVxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW1cbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4XG4pO1xuXG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbTtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcblxuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcblxuLy8gMjAuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2s7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5O1xuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGlucHV0LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYmx1ZSk7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogODAlO1xuJGxhYmVsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAkZ2xvYmFsLXBhZGRpbmcgJGdsb2JhbC1wYWRkaW5nO1xuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIyLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIzLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlO1xuXG4vLyAyNC4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI1LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweFxuKTtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4XG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKGRvd24sIHVwLCByaWdodCwgbGVmdCk7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLWNlbGwpO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoZGlzYywgY2lyY2xlLCBzcXVhcmUpO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6ICh2aXNpYmxlLCBoaWRkZW4sIHNjcm9sbCk7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpLFxuICAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAod2lkdGgsIGhlaWdodCk7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKG92ZXJsaW5lLCB1bmRlcmxpbmUsIGxpbmUtdGhyb3VnaCk7XG5cbi8vIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdHJhbnNmb3JtYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LXRyYW5zZm9ybWF0aW9uOiAobG93ZXJjYXNlLCB1cHBlcmNhc2UsIGNhcGl0YWxpemUpO1xuXG4vLyA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdXRpbGl0aWVzLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbi8vIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5XG4pO1xuXG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XG5cbi8vIDQ4LiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA0OS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDUwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oXG4gICR0YWJsZS1iYWNrZ3JvdW5kLFxuICAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGVcbik7XG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1MS4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDUyLiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1My4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMDtcbiR0b3BiYXItYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDMwcHhcbik7XG4kZ3JpZC1wYWRkaW5nLWd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGg7XG4keHktYmxvY2stZ3JpZC1tYXg6IDg7XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vIFxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgY2xpcC1wYXRoOiBub25lO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogdHJ1ZSwgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlKSB7XG4gICRsaXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbGlzdDogc2wtcmVtb3ZlKCRsaXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSBpbiAkbGlzdCB7XG4gICAgJC16Zi1zaXplOiAkbmFtZSAhZ2xvYmFsO1xuXG4gICAgQGlmICRhdXRvLWluc2VydC1icmVha3BvaW50cyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbGFiZWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgb2YgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYmFzZSBzdHlsZXMgZm9yIGEgbGFiZWwuXG5AbWl4aW4gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRsYWJlbC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRsYWJlbC1yYWRpdXM7XG5cbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1sYWJlbCB7XG4gIC5sYWJlbCB7XG4gICAgQGluY2x1ZGUgbGFiZWw7XG5cbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkbGFiZWwtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkbGFiZWwtY29sb3IsICRsYWJlbC1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGJhc2UtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXRzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlcm4gdGhlbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWVsZW1lbnQtbmVzdGluZywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCBzdGFja2VkIHRhYmxlIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLXVuc3RyaXBlKCkge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICB0YWJsZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhc2UgLSBDb2xvciB0byBjaGVjayBsdW1pbmFuY2UuXG4vLy8gQHBhcmFtIHtMaXN0fSAkY29sb3JzIFsoJHdoaXRlLCAkYmxhY2spXSAtIENvbG9ycyB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9sZXJhbmNlIFskZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlXSAtIENvbnRyYXN0IHRvbGVyYW5jZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZSkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0LXdhcm5pbmdzIGFuZCAkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9XG59XG4iLCJAY2hhcnNldCAndXRmLTgnO1xuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5AaW1wb3J0ICdmb3VuZGF0aW9uJztcbi8vIEBpbXBvcnQgJ21vdGlvbi11aSc7XG5cbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcblxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXJhbmdlLWlucHV0O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3Nlcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3Nlcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzO1xuXG4vLyBAaW5jbHVkZSBtb3Rpb24tdWktdHJhbnNpdGlvbnM7XG4vLyBAaW5jbHVkZSBtb3Rpb24tdWktYW5pbWF0aW9ucztcblxuLypcbiAgTXkgY3VzdG9tIHN0eWxlczpcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xuKi9cblxuLy8gR2xvYmFsXG5AaW1wb3J0ICdnbG9iYWwvZ2xvYmFsJztcbkBpbXBvcnQgJ2ZvbnRzJztcbkBpbXBvcnQgJ2dsb2JhbC90eXBlJztcbkBpbXBvcnQgJ2dsb2JhbC9hY2Nlc3NpYmlsaXR5JztcbkBpbXBvcnQgJ2dsb2JhbC93cC1hZG1pbic7XG5AaW1wb3J0ICdnbG9iYWwvd3Atb3ZlcnJpZGVzJztcbkBpbXBvcnQgJ2dsb2JhbC9zZWN0aW9uJztcblxuLy8gTW9kdWxlc1xuQGltcG9ydCAnbW9kdWxlcy9mb3Jtcyc7XG5AaW1wb3J0ICdtb2R1bGVzL3NlYXJjaGZvcm0nO1xuQGltcG9ydCAnbW9kdWxlcy9zdGlja3knO1xuQGltcG9ydCAnbW9kdWxlcy9oZXJvJztcbkBpbXBvcnQgJ21vZHVsZXMvcGFnZS1oZWFkZXInO1xuQGltcG9ydCAnbW9kdWxlcy9zbGlkZXInO1xuQGltcG9ydCAnbW9kdWxlcy9hb3MnO1xuQGltcG9ydCAnbW9kdWxlcy9wZXJmZWN0LXNjcm9sbGJhcic7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9ucyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3ZlcnRhcnJvdyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9ibHVlLWNhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkLXR3ZWV0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9uby1pbWFnZSc7XG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9vdGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29ycG9yYXRlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc29jaWFscyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdlLWludHJvJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnZS1hbmNob3ItbmF2JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnVpbGRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NoYXJpbmcnO1xuQGltcG9ydCAnY29tcG9uZW50cy9pdGVtLW1ldGEtc2lkZWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYXVuY2hwYWQnO1xuXG4vLyBUZW1wbGF0ZXNcbkBpbXBvcnQgJ3RlbXBsYXRlcy93aG93ZWFyZSc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvdXBkYXRlcyc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvb3VyLXNlY3RvcnMnO1xuQGltcG9ydCAndGVtcGxhdGVzL3Blb3BsZSc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvY29udGFjdCc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvZXZlbnRzJztcbkBpbXBvcnQgJ3RlbXBsYXRlcy9yZXNlYXJjaCc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvc2luZ2xlJztcbkBpbXBvcnQgJ3RlbXBsYXRlcy90YXhvbm9teSc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvYXJjaGl2ZSc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvd29yayc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvZW5nYWdlJztcbkBpbXBvcnQgJ3RlbXBsYXRlcy9wYXJ0bmVycyc7XG4iLCJib2R5LFxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcblx0Zm9udC1zaXplOiAxNnB4O1xufVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS42ODtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuXG4gICYubWVudS1pbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0gIE1vdmUgYnJvd3NlcmlmeSBub3RpZmljYXRpb24gZG93biAgLS0tLS0tLS0tLSovXG4jX19ic19ub3RpZnlfXyB7XG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogNXB4IDAgMCA1cHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4vKi0tLS0tLS0tLS0gIEludGVyY2hhbmdlICAtLS0tLS0tLS0tKi9cbltkYXRhLWludGVyY2hhbmdlXSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbiRwb3A6IGN1YmljLWJlemllcigwLjUxLCAwLjMxLCAwLjI2LCAxKTtcblxuLyotLS0tLS0tLS0tICBkYXRhLXVybCAgLS0tLS0tLS0tLSovXG5bZGF0YS11cmxdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5ociB7XG4gIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gKiAyIDAgJGdsb2JhbC1tYXJnaW4gKiAzO1xuICBiYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiAxcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luICogMiAwICRnbG9iYWwtbWFyZ2luICogMztcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luICogNCAwO1xuICB9XG59XG4iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBcm5vUHJvJztcbiAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICBzcmM6IGxvY2FsKCdBcm5vIFBybyBMaWdodCBEaXNwbGF5JyksIGxvY2FsKCdBcm5vUHJvLUxpZ2h0RGlzcGxheScpLFxuICAgIHVybCgnLi4vZm9udHMvQXJub1Byby1MaWdodERpc3BsYXkud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcuLi9mb250cy9Bcm5vUHJvLUxpZ2h0RGlzcGxheS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0dvdGhhbSc7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgc3JjOiBsb2NhbCgnR290aGFtIExpZ2h0JyksIGxvY2FsKCdHb3RoYW0tTGlnaHQnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL0dvdGhhbS1MaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy4uL2ZvbnRzL0dvdGhhbS1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJztcbiAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICBzcmM6IGxvY2FsKCdHb3RoYW0gQm9vaycpLCBsb2NhbCgnR290aGFtLUJvb2snKSxcbiAgICB1cmwoJy4uL2ZvbnRzL0dvdGhhbS1Cb29rLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgIHVybCgnLi4vZm9udHMvR290aGFtLUJvb2sud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0dvdGhhbSc7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgc3JjOiBsb2NhbCgnR290aGFtIE1lZGl1bScpLCBsb2NhbCgnR290aGFtLU1lZGl1bScpLFxuICAgIHVybCgnLi4vZm9udHMvR290aGFtLU1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy4uL2ZvbnRzL0dvdGhhbS1NZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0dvdGhhbSc7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgc3JjOiBsb2NhbCgnR290aGFtIEJvbGQnKSwgbG9jYWwoJ0dvdGhhbS1Cb2xkJyksXG4gICAgdXJsKCcuLi9mb250cy9Hb3RoYW0tQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy4uL2ZvbnRzL0dvdGhhbS1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKlxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdBcm5vUHJvJztcbiAgICBzcmM6IGxvY2FsKCdBcm5vIFBybycpLCBsb2NhbCgnQXJub1Byby1SZWd1bGFyJyksXG4gICAgICAgIHVybCgnQXJub1Byby1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJ0Fybm9Qcm8tUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbiAqL1xuIiwiLyotLS0tLS0tLS0tICBUeXBlIE1peGlucyAgLS0tLS0tLS0tLSovXG5AbWl4aW4gc2VyaWYoKSB7XG4gIGZvbnQtZmFtaWx5OiAnQXJub1Bybyc7XG59XG5cbkBtaXhpbiBzYW5zLXNlcmlmKCkge1xuICBmb250LWZhbWlseTogJ0dvdGhhbSc7XG59XG5cbmgxLFxuc3Bhbi5oZWFkZXIge1xuICBsZXR0ZXItc3BhY2luZzogLTAuNDJweDtcbiAgZm9udC1zaXplOiAyMDAlO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICBAaW5jbHVkZSBzYW5zLXNlcmlmO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZm9udC1zaXplOiAyNTAlO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogMzMwJTtcbiAgfVxufVxuXG5oMiB7XG4gIGxldHRlci1zcGFjaW5nOiAtMC40MnB4O1xuICBmb250LXNpemU6IDIwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbjtcblxuICBAaW5jbHVkZSBzYW5zLXNlcmlmO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZm9udC1zaXplOiAyNTAlO1xuICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICogMjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IDMzMCU7XG4gICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gKiAzO1xuICB9XG59XG5cbmgzIHtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjQycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG4gIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuXG4gIEBpbmNsdWRlIHNhbnMtc2VyaWY7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmb250LXNpemU6IDEzMCU7XG4gICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gKiAyO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogMTYwJTtcbiAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDM7XG4gIH1cbn1cblxuaDQge1xuICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG5cbiAgQGluY2x1ZGUgc2Fucy1zZXJpZjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZvbnQtc2l6ZTogMTMwJTtcbiAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiAxNjAlO1xuICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICogMztcbiAgfVxufVxuXG5oNSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgZm9udC1zaXplOiAxMjAlO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbjtcblxuICBAaW5jbHVkZSBzYW5zLXNlcmlmO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZm9udC1zaXplOiAxMzAlO1xuICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICogMjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IDE2MCU7XG4gICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gKiAzO1xuICB9XG59XG5cbmg2IHtcbiAgbGV0dGVyLXNwYWNpbmc6IDIuOTZweDtcbiAgQGluY2x1ZGUgc2Fucy1zZXJpZjtcbn1cblxuLmNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuYSB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xufVxuXG4uc21hbGxjYXBzIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDIuOXB4O1xuICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6ICdBcm5vUHJvJztcbiAgZm9udC1zaXplOiA4NSU7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi8qLS0tLS0tLS0tLSAgU2luZ2xlIEl0ZW0gIC0tLS0tLS0tLS0qL1xuLnNpbmdsZS1jb250ZW50IHtcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luIDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAqIDIgMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luICogMyAwO1xuICAgIH1cbiAgfVxuXG4gIC5oYXMtdGFibGUge1xuICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gIH1cbn1cblxuLmdyZXktdGV4dCB7XG4gIGNvbG9yOiAkbWVkaXVtLWdyYXkgIWltcG9ydGFudDtcbn1cbiIsIi8vIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuIEFkZHJlc3NlcyBwYXJ0IG9mIHRoZW1lLWNoZWNrIGlzc3VlICM4NDAuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQXV0b21hdHRpYy9fcy9ibG9iL21hc3Rlci9zdHlsZS5jc3Ncbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjE3NTliO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwOyAvLyBBYm92ZSBXUCB0b29sYmFyLlxufVxuIiwiLy8gRml4IHRoZSBpc3N1ZSB3aGVyZSB0aGUgV1AgYWRtaW4tYmFyIG92ZXJsYXBzIHRoZSBtb2JpbGUgbWVudVxuI3dwYWRtaW5iYXIge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbn1cblxuLy8gTWFrZSBzdXJlIHRoYXQgdGhlIFdQIGFkbWluLWJhciBkb2VzIG5vdCBvdmVybGFwIEZvdW5kYXRpb24gY29tcG9uZW50c1xuYm9keS5hZG1pbi1iYXIge1xuICAvLyBPZmZzZXQgc3RpY2t5IHRvcCBiYXJcbiAgJi5mLXRvcGJhci1maXhlZCB7XG4gICAgLnN0aWNreS5maXhlZCB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMik7XG4gICAgfVxuICB9XG4gIC8vIE9mZnNldCBtb2JpbGUgb2ZmLWNhbnZhcyBtZW51XG4gICYub2ZmY2FudmFzIHtcbiAgICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoNDYpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3ODMpIHtcbiAgICAgICAgdG9wOiByZW0tY2FsYygzMik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIud3AtY2FwdGlvbiA+IGZpZ2NhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogIzk5OTtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG5wLndwLWNhcHRpb24tdGV4dHtcbiAgZm9udC1zaXplOjkwJTtcbiAgY29sb3I6ICM2NjY7XG4gIHBhZGRpbmc6cmVtLWNhbGMoMTApIDA7XG59XG5cbi5hbGlnbmxlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBtYXJnaW46IDA7XG59XG5cbi5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLnNlY3Rpb24ge1xuICBwYWRkaW5nOiA1MHB4IDMlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiA3NXB4IDMlO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IDc1cHggNSUgNjBweDtcbiAgfVxufVxuXG4vLyB0aGUgZm9sbG93aW5nIGlzIHRoZSBkZWZhdWx0IGNhcmQgZ3JpZCBsYXlvdXQuIGluZGl2aWR1YWwgc2VjdGlvbnMgYXJlIGN1c3RvbWl6ZWQgdXNpbmcgdGhlaXIgSUQuXG4uaW5zaWRlIHtcbiAgbWF4LXdpZHRoOiAxMTUwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICYuaGFzLWNhcmRze1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgfVxuICAgIC5jYXJkIHtcbiAgICAgIG1hcmdpbjowICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCJmb3JtIHtcbiAgZm9udC1zaXplOiA4MCU7XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRnbG9iYWwtcGFkZGluZztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ2xvYmFsLXBhZGRpbmc7XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogJGdsb2JhbC1wYWRkaW5nO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRnbG9iYWwtcGFkZGluZztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlXG4gICAgICB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIiB2aWV3Qm94PVwiMCAwIDEyNCA4NVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj48ZyBmaWxsPVwibm9uZVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIj48cGF0aCBmaWxsPVwiIzAwMzI2MlwiIGQ9XCJNMCAwSDEyNFY4NUgwelwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgtNjAzLjAwMDAwMCwgLTgyNC4wMDAwMDApIHRyYW5zbGF0ZSgxODIuMDAwMDAwLCA4MjQuMDAwMDAwKSB0cmFuc2xhdGUoNDIxLjAwMDAwMCwgMC4wMDAwMDApXCIvPjxwYXRoIGQ9XCJNNS40MjU0Mjk3NCwzLjcwMjExMzU2IEwxNC4xODI3ODkxLDEyLjQ1OTQ3MjkgTDE0LjE4Mjc4OTEsMy43MDIxMTM1NiBMNS40MjU0Mjk3NCwzLjcwMjExMzU2IFpcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTYwMy4wMDAwMDAsIC04MjQuMDAwMDAwKSB0cmFuc2xhdGUoMTgyLjAwMDAwMCwgODI0LjAwMDAwMCkgdHJhbnNsYXRlKDQyMS4wMDAwMDAsIDAuMDAwMDAwKSB0cmFuc2xhdGUoNTEuNjUyMTc0LCAzMS4wNTg4MjQpIHRyYW5zbGF0ZSg5LjA5NzAwMywgOC43ODc5MDApIHJvdGF0ZSgtMjI1LjAwMDAwMCkgdHJhbnNsYXRlKC05LjA5NzAwMywgLTguNzg3OTAwKVwiIGZpbGw9XCIjZmZmXCIvPjwvZz48L3N2Zz4nKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDgwcHggMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxufVxuXG4uc2luZ2xlLWNvbnRlbnQgLmdmb3JtX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4gIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAqIDM7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAzO1xuICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAqIDM7XG4gIH1cblxuICAuZ2Zvcm1fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0gIEdGb3JtcyAgLS0tLS0tLS0tLSovXG4uZ2Zvcm1fd3JhcHBlciB7XG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmdmb3JtX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuICAgIH1cbiAgfVxuXG4gIC5nZmllbGQge1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgaW5wdXQge1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIDo6cGxhY2Vob2xkZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGdsb2JhbC1wYWRkaW5nO1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5oYXMtY2hlY2tib3gge1xuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCB7XG4gICAgICAuZ2ZpZWxkX2NoZWNrYm94IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIGJyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRnbG9iYWwtbWFyZ2luO1xuICAgICAgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdpbnB1dF9jb21wbGV4IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBmbGV4OiAwIDEgNDglO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG5cbiAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY29udGFjdCB1cyAtIGxlZnRcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAjZmllbGRfMV8xIHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgLy8gY29udGFjdCB1cyAtIHJpZ2h0XG4gICAgI2ZpZWxkXzFfMiB7XG4gICAgICB3aWR0aDogNDglO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIGZvb3RlclxuICAuZ2Zvcm1fZm9vdGVyIHtcbiAgICBidXR0b24ge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gICAgICBmb250LXNpemU6IDEwMCU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcblxuICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgZmlsbDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGdsb2JhbC1tYXJnaW47XG4gICAgICB9XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gdmFsaWRhdGlvblxuICAudmFsaWRhdGlvbl9lcnJvciB7XG4gICAgYmFja2dyb3VuZDogbGlnaHRlbihyZWQsIDMwJSk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuXG4gIC5nZmllbGRfZXJyb3Ige1xuICAgIGlucHV0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0ZW4ocmVkLCAzMCUpO1xuICAgIH1cbiAgfVxuXG4gIC52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiByZWQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgZm9udC1zaXplOiA5MCU7XG4gIH1cbn1cblxuLy8gY29uZmlybWF0aW9uXG4uZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTIwJTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbiIsIiNzdGlja3kgI3NlYXJjaGZvcm0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMDkuNXB4KTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDczcHggKiAwLjc1O1xuICBkaXNwbGF5OiBmbGV4O1xuICB6LWluZGV4OiAxMDA7XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKGNhbGMoMTAwJSArIDIwMHB4KSwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICYuYWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBoZWlnaHQ6IDczcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE0NnB4KTtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgaGVpZ2h0OiA3M3B4ICogMC43NTtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBvdXRsaW5lLWNvbG9yOiB3aGl0ZTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGhlaWdodDogNzNweDtcbiAgICB9XG4gIH1cblxuICBidXR0b24ge1xuICAgIGZsZXg6IDAgMSA3M3B4O1xuICAgIGhlaWdodDogNzNweCAqIDAuNzU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGhlaWdodDogNzNweDtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIHBhdGgge1xuICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIjc3RpY2t5IHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdHotaW5kZXg6IDIwMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0aGVpZ2h0OiA3M3B4ICogMC43NTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdGhlaWdodDogNzNweDtcblx0fVxuXG5cdC5zY3JvbGxlZCAmIHtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDUwLCA5OCwgMC43KTtcblxuXHRcdCNsb2dvIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC02cHgpO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtOXB4KSBzY2FsZSgwLjgpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIEludGVyYWN0aXZlIG1hcHMgcGFnZSBvbmx5LlxuXHQucGFnZS10ZW1wbGF0ZS1tYXBzICYge1xuXHRcdGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG5cdH1cbn1cblxuLyotLS0tLS0tLS0tICBMb2dvICAtLS0tLS0tLS0tKi9cbiNsb2dvIHtcblx0bWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAwIDAgJGdsb2JhbC1tYXJnaW4gKiAyO1xuXG5cdHRyYW5zaXRpb246IGFsbCAwLjNzICRwb3A7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRtYXJnaW46ICRnbG9iYWwtbWFyZ2luLzIgMCAwICRnbG9iYWwtbWFyZ2luICogMjtcblx0fVxuXG5cdHN2ZyB7XG5cdFx0d2lkdGg6IDE5NHB4ICogMC42O1xuXHRcdGhlaWdodDogNThweCAqIDAuNjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHdpZHRoOiAxOTRweDtcblx0XHRcdGhlaWdodDogNThweDtcblx0XHR9XG5cdH1cblxuXHQuc2luZ2xlLXBvc3QgJixcblx0LnNpbmdsZS1yZXNlYXJjaCAmLFxuXHQuc2luZ2xlLXJlc291cmNlICYsXG5cdC5zaW5nbGUtaW1wYWN0ICYge1xuXHRcdG1hcmdpbi10b3A6IDZweDtcblx0fVxuXG5cdC5zaW5nbGUtcG9zdC5zY3JvbGxlZCAmLFxuXHQuc2luZ2xlLXJlc2VhcmNoLnNjcm9sbGVkICYsXG5cdC5zaW5nbGUtcmVzb3VyY2Uuc2Nyb2xsZWQgJixcblx0LnNpbmdsZS1pbXBhY3Quc2Nyb2xsZWQgJiB7XG5cdFx0bWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XG5cdH1cbn1cblxuLyotLS0tLS0tLS0tICBTdGlja3kgQnV0dG9ucyAgLS0tLS0tLS0tLSovXG4uYnV0dG9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAzMDA7XG5cblx0YnV0dG9uIHtcblx0XHR3aWR0aDogNzNweCAqIDAuNzU7XG5cdFx0aGVpZ2h0OiA3M3B4ICogMC43NTtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiA3M3B4O1xuXHRcdFx0aGVpZ2h0OiA3M3B4O1xuXHRcdH1cblx0fVxuXG5cdCNzZWFyY2h0b2dnbGUge1xuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyAkcG9wO1xuXG5cdFx0c3ZnIHtcblx0XHRcdHdpZHRoOiAyN3B4O1xuXHRcdFx0aGVpZ2h0OiAyN3B4O1xuXG5cdFx0XHRwYXRoIHtcblx0XHRcdFx0ZmlsbDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcblx0XHRcdFx0dHJhbnNpdGlvbjogZmlsbCAwLjJzICRwb3A7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzLFxuXHRcdCYuYWN0aXZlIHtcblx0XHRcdGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuXHRcdH1cblx0fVxuXG5cdCNtZW51dG9nZ2xlIHtcblx0XHRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuXG5cdFx0Lmluc2lkZSB7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC40cyAkcG9wO1xuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0d2lkdGg6IDI1cHg7XG5cdFx0XHRoZWlnaHQ6IDJweDtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjJzICRwb3A7XG5cdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuXG5cdFx0XHQmOm50aC1vZi10eXBlKDEpIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLThweCk7XG5cdFx0XHR9XG5cblx0XHRcdCY6bnRoLW9mLXR5cGUoMykge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA4cHgpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdCY6bnRoLW9mLXR5cGUoMSkge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC04cHgpIHNjYWxlWCgwLjgpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpudGgtb2YtdHlwZSgyKSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOm50aC1vZi10eXBlKDMpIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA4cHgpIHNjYWxlWCgwLjYpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5hY3RpdmUge1xuXHRcdFx0Lmluc2lkZSB7XG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG5cdFx0XHR9XG5cblx0XHRcdHNwYW4ge1xuXHRcdFx0XHQmOm50aC1vZi10eXBlKDEpIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIC02cHgpIHNjYWxlWCgxKSByb3RhdGUoNDVkZWcpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpudGgtb2YtdHlwZSgyKSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOm50aC1vZi10eXBlKDMpIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzcHgsIDhweCkgc2NhbGVYKDEpIHJvdGF0ZSgtNDVkZWcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIHN1cHBvcnQgdXNcbi5zdXBwb3J0dXMge1xuXHRwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRyaWdodDogMDtcblx0ei1pbmRleDogMTUwO1xuXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEzMHB4KTtcblxuXHRiIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRtYXgtd2lkdGg6IDIwMHB4O1xuXHRcdHRyYW5zaXRpb246IGFsbCAwLjNzICRwb3A7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHR9XG5cblx0LnNjcm9sbGVkICYge1xuXHRcdHdpZHRoOiA3M3B4ICogMC43NTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA3M3B4ICogMC43NSk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0d2lkdGg6IDczcHg7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA3M3B4KTtcblx0XHRcdHBhZGRpbmctdG9wOiAyM3B4ICFpbXBvcnRhbnQ7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjNweCAhaW1wb3J0YW50O1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdH1cblxuXHRcdGIge1xuXHRcdFx0bWF4LXdpZHRoOiAwO1xuXHRcdH1cblxuXHRcdHN2ZyB7XG5cdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMsXG5cdFx0JjphY3RpdmUge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cblx0XHRcdHN2ZyB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHRiIHtcblx0XHRcdFx0bWF4LXdpZHRoOiAyMDBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0dG9wOiAyMzBweDtcblx0fVxufVxuIiwiI2hlcm8ge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgLTE4MGRlZyxcbiAgICAgICMxNDg2YzggMCUsXG4gICAgICAjNzU5YTdkIDQyJSxcbiAgICAgICNmZGI1MTUgMTAwJSxcbiAgICAgIHJnYmEoMCwgMCwgMCwgMC4wMSkgMTAwJVxuICAgICk7XG4gIH1cblxuICAud2F0ZXJtYXJrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDIwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC50ZXh0IHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgcGFkZGluZy10b3A6IDI1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNTBweDtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIHNlcmlmO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvICRnbG9iYWwtbWFyZ2luICogMztcbiAgICAgIG1heC13aWR0aDogODAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDIwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNpdGUtYnV0dG9uIHtcbiAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiI3BhZ2UtaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDI4MHB4O1xuICBwYWRkaW5nLXRvcDogNzNweCAqIDAuNzU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nLXRvcDogNzNweDtcbiAgfVxuXG4gIGgxLFxuICBzcGFuLmhlYWRlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTAwO1xuICB9XG5cbiAgJi5oYXMtb3ZlcmxheSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgLTE4MGRlZyxcbiAgICAgICAgIzE0ODZjOCAwJSxcbiAgICAgICAgIzc1OWE3ZCA0MiUsXG4gICAgICAgICNmZGI1MTUgMTAwJVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgfVxuICB9XG5cbiAgJi5zbGl2ZXIge1xuICAgIGhlaWdodDogNzNweDtcbiAgfVxufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICYuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7XG4gIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6MWVtO1xuICBbZGlyPSdydGwnXSAmIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNsaWNrLWFycm93IHtcbiAgd2lkdGg6IDU1cHg7XG4gIGhlaWdodDogNTVweDtcbiAgbWFyZ2luOiAwIC0xcHggMCAwO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDFweDtcbiAgICBsZWZ0OiAtNXB4O1xuXG4gICAgcGF0aCB7XG4gICAgICBmaWxsOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICAgIH1cbiAgfVxuXG4gICYuc2xpY2stcHJldiB7XG4gICAgc3ZnIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTBtcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA1MG1zO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzMwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSczMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSczMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMzAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzMwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczMDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSczNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzM1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzM1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMzVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc0MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNDAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC40cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzQwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc0MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC40cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNDUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzQ1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNDVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc0NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNDUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzQ1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc0NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjQ1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzUwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzUwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc1MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNTAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzUwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzU1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc1NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjU1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzU1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC41NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzYwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc2MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjZzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc2MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzYwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc2MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjZzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc2NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNjUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC42NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzY1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc2NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNjUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzY1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNjVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc3MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNzAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC43cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNzAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzcwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc3MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC43cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249Jzc1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNzVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc3NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Jzc1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc3NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjc1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nODAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzgwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuOHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzgwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc4MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nODAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzgwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuOHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249Jzg1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc4NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjg1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nODUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9Jzg1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc4NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC44NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzkwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc5MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjlzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc5MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nOTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzkwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc5MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjlzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc5NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nOTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC45NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Jzk1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc5NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nOTUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9Jzk1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuOTVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEwMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTAwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTAwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDFzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMDUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEwNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjA1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTA1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTA1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuMDVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzExMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjFzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzExMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTEwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS4xcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTE1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxMTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4xNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzExNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTE1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMTUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzExNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjE1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTIwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxMjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4ycztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTIwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEyMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTIwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuMnM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzEyNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTI1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMjVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzEyNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTI1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS4yNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzEzMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTMwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuM3M7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEzMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTMwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMzAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzEzMDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjNzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEzNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjM1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTM1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEzNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTM1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuMzVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxNDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE0MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjRzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE0MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTQwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS40cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTQ1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxNDUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS40NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE0NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTQ1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNDUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE0NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjQ1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTUwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxNTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS41cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTUwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE1MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTUwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzE1NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTU1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNTVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTU1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS41NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzE2MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTYwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNnM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE2MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTYwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNjAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE2MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjZzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxNjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE2NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjY1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTY1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNjUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE2NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTY1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuNjVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxNzAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE3MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjdzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNzAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE3MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTcwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS43cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTc1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxNzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS43NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE3NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTc1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNzUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE3NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjc1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTgwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxODAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS44cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTgwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxODAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE4MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTgwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuOHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzE4NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTg1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuODVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxODUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE4NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTg1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS44NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzE5MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMTkwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuOXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE5MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTkwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxOTAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE5MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjlzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxOTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE5NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjk1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTk1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxOTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE5NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTk1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuOTVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyMDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIwMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAycztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjAwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjAwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDJzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyMDUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIwNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjA1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjA1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjA1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuMDVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyMTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIxMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjFzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMTAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIxMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjEwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi4xcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjE1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyMTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4xNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIxNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjE1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMTUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIxNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjE1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjIwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyMjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4ycztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjIwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMjAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIyMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjIwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuMnM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzIyNTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjI1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuMjVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIyNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjI1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi4yNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzIzMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjMwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuM3M7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIzMDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjMwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyMzAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzIzMDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjNzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyMzUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIzNTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjM1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjM1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIzNTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjM1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuMzVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyNDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI0MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjRzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI0MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjQwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi40cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjQ1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyNDUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi40NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI0NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjQ1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNDUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI0NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjQ1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjUwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyNTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi41cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjUwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNTAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjUwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuNXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI1NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjU1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuNTVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjU1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi41NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI2MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjYwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuNnM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI2MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjYwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNjAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI2MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjZzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyNjUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI2NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjY1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjY1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNjUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI2NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjY1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuNjVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyNzAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI3MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjdzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNzAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI3MDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjcwMCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi43cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjc1MCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyNzUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi43NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI3NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjc1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNzUwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI3NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjc1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjgwMCddLFxuICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScyODAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi44cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjgwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyODAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI4MDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjgwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuOHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI4NTAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjg1MCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuODVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyODUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI4NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjg1MCddLmFvcy1hbmltYXRlLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMi44NXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzI5MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjkwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDIuOXM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI5MDAnXSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjkwMCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyOTAwJ10uYW9zLWFuaW1hdGUsXG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzI5MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjlzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyOTUwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI5NTAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjk1cztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjk1MCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyOTUwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI5NTAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjk1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIuOTVzO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSczMDAwJ10sXG4gIGJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzMwMDAnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzcztcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzAwMCddLFxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczMDAwJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzMwMDAnXS5hb3MtYW5pbWF0ZSxcbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMzAwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDNzO1xuICB9XG4gIFtkYXRhLWFvc10ge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nbGluZWFyJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdsaW5lYXInXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuMjUsIDAuNzUsIDAuNzUpO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZSddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZSddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbiddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbiddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2Utb3V0J10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1vdXQnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0J10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1iYWNrJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLWJhY2snXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNiwgLTAuMjgsIDAuNzM1LCAwLjA0NSk7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLW91dC1iYWNrJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLW91dC1iYWNrJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LWJhY2snXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LWJhY2snXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLXNpbmUnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tc2luZSddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMCwgMC43NDUsIDAuNzE1KTtcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2Utb3V0LXNpbmUnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2Utb3V0LXNpbmUnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLW91dC1zaW5lJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLW91dC1zaW5lJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ0NSwgMC4wNSwgMC41NSwgMC45NSk7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLXF1YWQnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tcXVhZCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQtcXVhZCddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQtcXVhZCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLW91dC1xdWFkJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLW91dC1xdWFkJ10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTtcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tY3ViaWMnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tY3ViaWMnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDg1LCAwLjY4LCAwLjUzKTtcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2Utb3V0LWN1YmljJ10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLW91dC1jdWJpYyddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG4gIH1cbiAgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLW91dC1jdWJpYyddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1vdXQtY3ViaWMnXSBbZGF0YS1hb3NdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1xdWFydCddLFxuICBib2R5W2RhdGEtYW9zLWVhc2luZz0nZWFzZS1pbi1xdWFydCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpO1xuICB9XG4gIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz0nZWFzZS1vdXQtcXVhcnQnXSxcbiAgYm9keVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2Utb3V0LXF1YXJ0J10gW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbiAgfVxuICBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9J2Vhc2UtaW4tb3V0LXF1YXJ0J10sXG4gIGJvZHlbZGF0YS1hb3MtZWFzaW5nPSdlYXNlLWluLW91dC1xdWFydCddIFtkYXRhLWFvc10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NTUsIDAuMDMsIDAuNTE1LCAwLjk1NSk7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiB7XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3NePSdmYWRlJ11bZGF0YS1hb3NePSdmYWRlJ10ge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3NePSdmYWRlJ11bZGF0YS1hb3NePSdmYWRlJ10uYW9zLWFuaW1hdGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmFkZS11cCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMHB4LCAwKTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZhZGUtZG93biddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwcHgsIDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwcHgsIDApO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmFkZS1yaWdodCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDAsIDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDAsIDApO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmFkZS1sZWZ0J10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAwLCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIDAsIDApO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmFkZS11cC1yaWdodCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDEwMHB4LCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAxMDBweCwgMCk7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSdmYWRlLXVwLWxlZnQnXSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIDEwMHB4LCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIDEwMHB4LCAwKTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZhZGUtZG93bi1yaWdodCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIC0xMDBweCwgMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgLTEwMHB4LCAwKTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZhZGUtZG93bi1sZWZ0J10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAtMTAwcHgsIDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgLTEwMHB4LCAwKTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3NePSd6b29tJ11bZGF0YS1hb3NePSd6b29tJ10ge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3NePSd6b29tJ11bZGF0YS1hb3NePSd6b29tJ10uYW9zLWFuaW1hdGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHNjYWxlKDEpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHNjYWxlKDEpO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nem9vbS1pbiddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nem9vbS1pbi11cCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCkgc2NhbGUoMC42KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwcHgsIDApIHNjYWxlKDAuNik7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLWluLWRvd24nXSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKSBzY2FsZSgwLjYpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwcHgsIDApIHNjYWxlKDAuNik7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLWluLXJpZ2h0J10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgMCwgMCkgc2NhbGUoMC42KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAwLCAwKSBzY2FsZSgwLjYpO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nem9vbS1pbi1sZWZ0J10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAwLCAwKSBzY2FsZSgwLjYpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMCwgMCkgc2NhbGUoMC42KTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J3pvb20tb3V0J10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLW91dC11cCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCkgc2NhbGUoMS4yKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwcHgsIDApIHNjYWxlKDEuMik7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLW91dC1kb3duJ10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDBweCwgMCkgc2NhbGUoMS4yKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKSBzY2FsZSgxLjIpO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nem9vbS1vdXQtcmlnaHQnXSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAwLCAwKSBzY2FsZSgxLjIpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDAsIDApIHNjYWxlKDEuMik7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSd6b29tLW91dC1sZWZ0J10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAwLCAwKSBzY2FsZSgxLjIpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMCwgMCkgc2NhbGUoMS4yKTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3NePSdzbGlkZSddW2RhdGEtYW9zXj0nc2xpZGUnXSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zXj0nc2xpZGUnXVtkYXRhLWFvc149J3NsaWRlJ10uYW9zLWFuaW1hdGUge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nc2xpZGUtdXAnXSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nc2xpZGUtZG93biddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J3NsaWRlLXJpZ2h0J10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nc2xpZGUtbGVmdCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zXj0nZmxpcCddW2RhdGEtYW9zXj0nZmxpcCddIHtcbiAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmxpcC1sZWZ0J10ge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgtMTAwZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKC0xMDBkZWcpO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmxpcC1sZWZ0J10uYW9zLWFuaW1hdGUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTtcbiAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDApO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmxpcC1yaWdodCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMTAwZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDEwMGRlZyk7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSdmbGlwLXJpZ2h0J10uYW9zLWFuaW1hdGUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTtcbiAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDApO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmxpcC11cCddIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoLTEwMGRlZyk7XG4gICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgtMTAwZGVnKTtcbiAgICB9XG4gICAgaHRtbDpub3QoLm5vLWpzKSBbZGF0YS1hb3M9J2ZsaXAtdXAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDApO1xuICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMCk7XG4gICAgfVxuICAgIGh0bWw6bm90KC5uby1qcykgW2RhdGEtYW9zPSdmbGlwLWRvd24nXSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDEwMGRlZyk7XG4gICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgxMDBkZWcpO1xuICAgIH1cbiAgICBodG1sOm5vdCgubm8tanMpIFtkYXRhLWFvcz0nZmxpcC1kb3duJ10uYW9zLWFuaW1hdGUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKTtcbiAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDApO1xuICAgIH1cbiAgfVxufVxuIiwiLypcbiAqIENvbnRhaW5lciBzdHlsZVxuICovXG4ucHMge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICB0b3VjaC1hY3Rpb246IGF1dG87XG4gIC1tcy10b3VjaC1hY3Rpb246IGF1dG87XG59XG5cbi8qXG4gKiBTY3JvbGxiYXIgcmFpbCBzdHlsZXNcbiAqL1xuLnBzX19yYWlsLXgge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgbGluZWFyLCBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gIGhlaWdodDogMTVweDtcbiAgLyogdGhlcmUgbXVzdCBiZSAnYm90dG9tJyBvciAndG9wJyBmb3IgcHNfX3JhaWwteCAqL1xuICBib3R0b206IDBweDtcbiAgLyogcGxlYXNlIGRvbid0IGNoYW5nZSAncG9zaXRpb24nICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnBzX19yYWlsLXkge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgbGluZWFyLCBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gIHdpZHRoOiAxNXB4O1xuICAvKiB0aGVyZSBtdXN0IGJlICdyaWdodCcgb3IgJ2xlZnQnIGZvciBwc19fcmFpbC15ICovXG4gIHJpZ2h0OiAwO1xuICAvKiBwbGVhc2UgZG9uJ3QgY2hhbmdlICdwb3NpdGlvbicgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ucHMtLWFjdGl2ZS14ID4gLnBzX19yYWlsLXgsXG4ucHMtLWFjdGl2ZS15ID4gLnBzX19yYWlsLXkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5wczpob3ZlciA+IC5wc19fcmFpbC14LFxuLnBzOmhvdmVyID4gLnBzX19yYWlsLXksXG4ucHMtLWZvY3VzID4gLnBzX19yYWlsLXgsXG4ucHMtLWZvY3VzID4gLnBzX19yYWlsLXksXG4ucHMtLXNjcm9sbGluZy14ID4gLnBzX19yYWlsLXgsXG4ucHMtLXNjcm9sbGluZy15ID4gLnBzX19yYWlsLXkge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5wcyAucHNfX3JhaWwteDpob3Zlcixcbi5wcyAucHNfX3JhaWwteTpob3Zlcixcbi5wcyAucHNfX3JhaWwteDpmb2N1cyxcbi5wcyAucHNfX3JhaWwteTpmb2N1cyxcbi5wcyAucHNfX3JhaWwteC5wcy0tY2xpY2tpbmcsXG4ucHMgLnBzX19yYWlsLXkucHMtLWNsaWNraW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4vKlxuICogU2Nyb2xsYmFyIHRodW1iIHN0eWxlc1xuICovXG4ucHNfX3RodW1iLXgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIGhlaWdodCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIGhlaWdodCAwLjJzIGVhc2UtaW4tb3V0O1xuICBoZWlnaHQ6IDZweDtcbiAgLyogdGhlcmUgbXVzdCBiZSAnYm90dG9tJyBmb3IgcHNfX3RodW1iLXggKi9cbiAgYm90dG9tOiAycHg7XG4gIC8qIHBsZWFzZSBkb24ndCBjaGFuZ2UgJ3Bvc2l0aW9uJyAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5wc19fdGh1bWIteSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGxpbmVhciwgd2lkdGggMC4ycyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgbGluZWFyLCB3aWR0aCAwLjJzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogNnB4O1xuICAvKiB0aGVyZSBtdXN0IGJlICdyaWdodCcgZm9yIHBzX190aHVtYi15ICovXG4gIHJpZ2h0OiAycHg7XG4gIC8qIHBsZWFzZSBkb24ndCBjaGFuZ2UgJ3Bvc2l0aW9uJyAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5wc19fcmFpbC14OmhvdmVyID4gLnBzX190aHVtYi14LFxuLnBzX19yYWlsLXg6Zm9jdXMgPiAucHNfX3RodW1iLXgsXG4ucHNfX3JhaWwteC5wcy0tY2xpY2tpbmcgLnBzX190aHVtYi14IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbiAgaGVpZ2h0OiAxMXB4O1xufVxuXG4ucHNfX3JhaWwteTpob3ZlciA+IC5wc19fdGh1bWIteSxcbi5wc19fcmFpbC15OmZvY3VzID4gLnBzX190aHVtYi15LFxuLnBzX19yYWlsLXkucHMtLWNsaWNraW5nIC5wc19fdGh1bWIteSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG4gIHdpZHRoOiAxMXB4O1xufVxuXG4vKiBNUyBzdXBwb3J0cyAqL1xuQHN1cHBvcnRzICgtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmUpIHtcbiAgLnBzIHtcbiAgICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5wcyB7XG4gICAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuIiwiYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uaGFzLWJ1dHRvbiB7XG4gIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gKiAzIDAgJGdsb2JhbC1tYXJnaW47XG59XG5cbi5zaXRlLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDJweCAyNXB4IDA7XG4gIGhlaWdodDogNTBweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogJHdoaXRlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAxLjE4cHg7XG4gIGZvbnQtc2l6ZTogNjUlO1xuICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4obWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKSwgNSUpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyAnO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyAkcG9wO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTMwZGVnKSB0cmFuc2xhdGUoLTEzMCUsIDApO1xuICB9XG5cbiAgc3ZnIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xuXG4gICAgcGF0aCB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgfVxuICB9XG5cbiAgc3BhbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuXG4gIC8vIGNvbG9yc1xuICAmLm9yYW5nZSB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBvcmFuZ2UpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4obWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBvcmFuZ2UpLCA1JSk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtcGx1cyB7XG4gICAgc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgICB9XG4gIH1cblxuICAmLmhhcy1hcnJvdyB7XG4gICAgc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIG1hcmdpbjogMCAwIDAgMTBweDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICBwYXRoIHtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYucmVhZG1vcmUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBiIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXgtd2lkdGg6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzICRwb3A7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm5ha2VkIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB5ZWxsb3cpO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBzdmcgcGF0aCB7XG4gICAgICBmaWxsOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHllbGxvdyk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICBzdmcgcGF0aCB7XG4gICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5ib3JkZXJlZC1vcmFuZ2Uge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgb3JhbmdlKTtcbiAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBvcmFuZ2UpO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgJi5pY29uLW9ubHkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIHBhdGgge1xuICAgICAgICAgIGZpbGw6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgb3JhbmdlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYm9yZGVyZWQteWVsbG93IHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHllbGxvdyk7XG4gICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICYuaWNvbi1vbmx5IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHllbGxvdyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJvcmRlcmVkLWdyZXkge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICM5ZDk4OTI7XG4gICAgY29sb3I6ICM5ZDk4OTI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAmLmljb24tb25seSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgcGF0aCB7XG4gICAgICAgICAgZmlsbDogIzlkOTg5MjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYm9yZGVyZWQtYmx1ZSB7XG4gICAgYm9yZGVyOiAycHggc29saWQgbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICYuaWNvbi1vbmx5IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIudmVydGFycm93IHtcbiAgd2lkdGg6IDE5cHg7XG4gIGhlaWdodDogMjdweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gKiAyIGF1dG87XG4gIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgeD1cIjBweFwiIHk9XCIwcHhcIiB2aWV3Qm94PVwiMCAwIDE4LjkgNDdcIj48cGF0aCBkPVwiTTkuNywwbDAsNDUuOGgtMUw4LjcsMEw5LjcsMHpcIiBmaWxsPVwiIzE0ODZjOFwiLz48cGF0aCBkPVwiTTE4LjIsMzcuM2wtOSw5IE05LjIsNDYuM2wtOC41LTguNVwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiIzE0ODZjOFwiIHN0cm9rZS1saW5lY2FwPVwic3F1YXJlXCIvPjwvc3ZnPicpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGhlaWdodDogNDdweDtcbiAgfVxuXG4gICYuYWJzb2x1dGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbjogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tICBDYXJkIEhvbGRlciAgLS0tLS0tLS0tLSovXG4uaGFzLWNhcmRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAzJTtcbiAgcGFkZGluZy1yaWdodDogMyU7XG59XG5cbi8qLS0tLS0tLS0tLSAgQ2FyZCBHbG9iYWxzICAtLS0tLS0tLS0tKi9cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZsZXg6IDAgMSAxMDAlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICBmbGV4OiAwIDEgNDglO1xuXG4gICAgJjpudGgtb2YtdHlwZShvZGQpOm5vdCgucG9zdHMtY2FyZCwgLmNhcmQtaW4tbmV3cykge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoZXZlbik6bm90KC5wb3N0cy1jYXJkLCAuY2FyZC1pbi1uZXdzKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZsZXg6IDAgMSAzMiU7XG5cbiAgICAmOm50aC1vZi10eXBlKDNuLTEpOm5vdCguY2FyZC1pbi1uZXdzKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMiU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgIH1cbiAgfVxuXG4gIC8vIHNob3cgJ3JlYWRtb3JlJyB3aGVuIGhvdmVyaW5nXG4gICY6aG92ZXIge1xuICAgIC5pbWFnZTo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG4gICAgLmltYWdlOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAucmVhZG1vcmUge1xuICAgICAgICBiIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2F0bGluZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjMmMyYzI7XG4gICAgLy8gcGFkZGluZy1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogMS41O1xuICAgIGZvbnQtZmFtaWx5OiAnQXJub1Bybyc7XG4gIH1cblxuICAubGFiZWwge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAwO1xuICB9XG5cbiAgLmRhdGUge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2E3YTdhNztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogNTAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICB9XG5cbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICB9XG4gIH1cblxuICAucmVhZG1vcmUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDVweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICB9XG4gIH1cblxuICAuaW1hZ2UgKyAucmVhZG1vcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB9XG5cbiAgaHIge1xuICAgIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gYXV0byAkZ2xvYmFsLW1hcmdpbiAwO1xuICAgIHdpZHRoOiAzMHB4O1xuICB9XG5cbiAgLmNhcmQtbWV0YSB7XG4gICAgZm9udC1zaXplOiA3MCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLXRvcDphdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogLjg1ZW07XG5cbiAgICBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYmx1ZSk7XG4gICAgfVxuICAgICY6OmJlZm9yZXtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6MzBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDowO1xuICAgICAgbGVmdDowO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgIH1cbiAgfVxuXG4gIC5pbWFnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxuXG4gICAgYSxcbiAgICAubm8taW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gdW5kZXJsYXkgZm9yIGhvdmVyXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGZpbGwtcnVsZT1cIlwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIj48cGF0aCBmaWxsPVwid2hpdGVcIiBkPVwiTTIxLjg4MyAxMmwtNy41MjcgNi4yMzUuNjQ0Ljc2NSA5LTcuNTIxLTktNy40NzktLjY0NS43NjQgNy41MjkgNi4yMzZoLTIxLjg4NHYxaDIxLjg4M3pcIj48L3BhdGg+PC9zdmc+Jyk7XG4gICAgICBwYWRkaW5nOi41ZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuY2FyZC1ibHVlLWxhYmVscyB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAwO1xuXG4gICAgLmxhYmVsIHtcbiAgICAgIHBhZGRpbmc6IDlweCAxMHB4IDZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luOiAwIDVweCA1cHggMDtcbiAgICB9XG4gIH1cblxuICAmLmNhcmQtbmV3cy1ob21lIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2l0ZS1idXR0b24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gICYuY2FyZC10d2VldCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIH1cblxuICAmLmNhcmQtbWlzYyB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxleDogMCAxIDMwJTtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gdmFyaWF0aW9uc1xuICAmLmNvbnRhaW5zLW5vLWltYWdlIHtcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDEyMCUgKiAxLjQ7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTMwJSAqIDEuNDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDE2MCUgKiAxLjQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5yZXNvdXJjZS1jYXJkIHtcbiAgfVxuXG4gICYudGF4b25vbXktY2FyZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWltcG9ydGFudDtcblxuICAgIC5pbnNpZGUge1xuICAgICAgbWluLWhlaWdodDogMjUwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgaDMge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiA3MCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZXZlbnQtY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiA0O1xuICAgIH1cblxuICAgIC5pbWFnZSB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXg6IDAgMSAzMiU7XG4gICAgICAgIC8vIHdpZHRoOiAzMiU7XG4gICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZXZlbnQtaW5mbyB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbGV4OiAwIDEgMzIlO1xuICAgICAgICB3aWR0aDogMzIlO1xuICAgICAgfVxuXG4gICAgICAubGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNtYWxsLWxhYmVsLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZXZlbnQtd3JpdGV1cCB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiA4MCU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXg6IDAgMSAzMiU7XG4gICAgICAgIHdpZHRoOiAzMiU7XG4gICAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuY2FyZWVyLWNhcmQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDMgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZXZlbnQtaW5mbyB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbGV4OiAwIDEgMzclO1xuICAgICAgICB3aWR0aDogMzclO1xuICAgICAgfVxuXG4gICAgICAubGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNtYWxsLWxhYmVsLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZXZlbnQtd3JpdGV1cCB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiA4MCU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXg6IDAgMSA2MCU7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmluaXRpYXRpdmUtY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgLmltYWdlIHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZmxleDogMCAxIDQwJTtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5pdGlhdGl2ZS1pbmZvIHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXg6IDAgMSA2MCU7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNSU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG9yYW5nZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG4gIH1cblxuICAmLmNhcmQtaW4tdGF4IHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAqIDI7XG4gICAgICBmbGV4OiAwIDEgNDclO1xuICAgICAgd2lkdGg6IDQ3JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgICAgIGZsZXg6IDAgMSAzMCU7XG4gICAgICB3aWR0aDogMzAlO1xuICAgIH1cblxuICAgIC5sYWJlbCB7XG4gICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxNjAlO1xuICAgIH1cbiAgfVxuXG4gICYuY2FyZC1pbi1uZXdzIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAzO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogNDtcbiAgICB9XG5cbiAgICAuaW5zaWRlIHtcbiAgICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGFiZWwge1xuICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDE2MCU7XG4gICAgfVxuXG4gICAgLnBvc3QtZGF0ZSB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiA3MCU7XG4gICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cbn1cblxuI21lZGl1bSB7XG4gICNtZWRpdW0tbG9hZGluZyB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLSAgU21hbGwgQ2FyZHMgIC0tLS0tLS0tLS0qL1xuXG4uc21hbGwtY2FyZHMgLmNhcmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsZXg6IDAgMSAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gIC5pbWFnZSB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmNhcmQtYmx1ZS1sYWJlbHMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiA5MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE3MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgaHIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogOTBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE3MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5jYXJkLW1ldGEge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiA5MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTcwcHg7XG4gICAgfVxuICB9XG59XG4iLCIuZmxpcC1jYXJkIHtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZmxleDogMCAxIDQ4JTtcbiAgcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIG1hcmdpbi1sZWZ0OiAxJTtcbiAgbWFyZ2luLXJpZ2h0OiAxJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZmxleDogMCAxIDMwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNSU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjUlO1xuICB9XG5cbiAgJjpob3ZlciAuaW5zaWRlLFxuICAmOmZvY3VzIC5pbnNpZGUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xuICB9XG5cbiAgLmluc2lkZSB7XG4gICAgdHJhbnNpdGlvbjogMC42cztcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiAzODVweDtcbiAgICB9XG4gIH1cblxuICAuZnJvbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYmx1ZSk7XG4gICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICogMiAkZ2xvYmFsLXBhZGRpbmcgJGdsb2JhbC1wYWRkaW5nO1xuICAgIGhlaWdodDogMjUwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlWSgwKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogMTBweDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGxpbmVhcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgKiAzICRnbG9iYWwtcGFkZGluZyAqIDIgJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgICAgIGhlaWdodDogMzg1cHg7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5iYWNrIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XG4gICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICogMiAkZ2xvYmFsLXBhZGRpbmcgJGdsb2JhbC1wYWRkaW5nO1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgKiAzICRnbG9iYWwtcGFkZGluZyAqIDIgJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgICAgIGhlaWdodDogMzg1cHg7XG4gICAgfVxuICB9XG5cbiAgLmljb24ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG8gJGdsb2JhbC1tYXJnaW47XG4gIH1cblxuICBoNCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG4gICAgICBmb250LXNpemU6IDE2MCU7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0gIE5hdnkgQmx1ZSAgLS0tLS0tLS0tLSovXG4uYmx1ZS1jYXJkIHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZmxleDogMCAxIDQ4JTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAqIDIgJGdsb2JhbC1wYWRkaW5nICRnbG9iYWwtcGFkZGluZztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgbGluZWFyO1xuICBoZWlnaHQ6IDMzMHB4O1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyAnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGxpbmVhcjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmbGV4OiAwIDEgMzAlO1xuICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAqIDMgJGdsb2JhbC1wYWRkaW5nICogMiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuICAgIGhlaWdodDogMzg1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNSU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjUlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICB0b3A6IDIwcHg7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4obWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KSwgNSUpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgfVxuICB9XG5cbiAgLmluc2lkZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5pY29uIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvICRnbG9iYWwtbWFyZ2luO1xuICB9XG5cbiAgaDQge1xuICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luO1xuICAgIGZvbnQtc2l6ZTogMjI1JTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1JTtcbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuIiwiLmNhcmQtdHdlZXQge1xuICAjdHdlZXQge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luIDA7XG4gICAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgUm9ib3RvLCBcIlNlZ29lIFVJXCIsIENhbGlicmksIHNhbnMtc2VyaWY7XG4gICAgcGFkZGluZzogNXB4O1xuXG4gIH1cbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgI3R3ZWV0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE2MCwyMDAsMjIwLC4xMik7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gICN0d2VldENvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICB9XG5cbiAgLkljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDcyJTIwNzIlMjIlM0UlM0NwYXRoJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjBkJTNEJTIyTTAlMjAwaDcydjcySDB6JTIyJTJGJTNFJTNDcGF0aCUyMGNsYXNzJTNEJTIyaWNvbiUyMiUyMGZpbGwlM0QlMjIlMjNlMWU4ZWQlMjIlMjBkJTNEJTIyTTY4LjgxMiUyMDE1LjE0Yy0yLjM0OCUyMDEuMDQtNC44NyUyMDEuNzQ0LTcuNTIlMjAyLjA2JTIwMi43MDQtMS42MiUyMDQuNzgtNC4xODYlMjA1Ljc1Ny03LjI0My0yLjUzJTIwMS41LTUuMzMlMjAyLjU5Mi04LjMxNCUyMDMuMTc2QzU2LjM1JTIwMTAuNTklMjA1Mi45NDglMjA5JTIwNDkuMTgyJTIwOWMtNy4yMyUyMDAtMTMuMDkyJTIwNS44Ni0xMy4wOTIlMjAxMy4wOTMlMjAwJTIwMS4wMjYuMTE4JTIwMi4wMi4zMzglMjAyLjk4QzI1LjU0MyUyMDI0LjUyNyUyMDE1LjklMjAxOS4zMTglMjA5LjQ0JTIwMTEuMzk2Yy0xLjEyNSUyMDEuOTM2LTEuNzclMjA0LjE4NC0xLjc3JTIwNi41OCUyMDAlMjA0LjU0MyUyMDIuMzEyJTIwOC41NTIlMjA1LjgyNCUyMDEwLjktMi4xNDYtLjA3LTQuMTY1LS42NTgtNS45My0xLjY0LS4wMDIuMDU2LS4wMDIuMTEtLjAwMi4xNjMlMjAwJTIwNi4zNDUlMjA0LjUxMyUyMDExLjYzOCUyMDEwLjUwNCUyMDEyLjg0LTEuMS4yOTgtMi4yNTYuNDU3LTMuNDUuNDU3LS44NDUlMjAwLTEuNjY2LS4wNzgtMi40NjQtLjIzJTIwMS42NjclMjA1LjIlMjA2LjUlMjA4Ljk4NSUyMDEyLjIzJTIwOS4wOS00LjQ4MiUyMDMuNTEtMTAuMTMlMjA1LjYwNS0xNi4yNiUyMDUuNjA1LTEuMDU1JTIwMC0yLjA5Ni0uMDYtMy4xMjItLjE4NCUyMDUuNzk0JTIwMy43MTclMjAxMi42NzYlMjA1Ljg4MiUyMDIwLjA2NyUyMDUuODgyJTIwMjQuMDgzJTIwMCUyMDM3LjI1LTE5Ljk1JTIwMzcuMjUtMzcuMjUlMjAwLS41NjUtLjAxMy0xLjEzMy0uMDM4LTEuNjkzJTIwMi41NTgtMS44NDclMjA0Ljc3OC00LjE1JTIwNi41MzItNi43NzR6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgICB3aWR0aDogMS4xZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMS4xZW07XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICB9XG5cblxuICAudHdlZXRMb2dvIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA0MHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIH1cblxuICAudHdlZXQtZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDoxMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgfVxuXG4gICAgLnR3ZWV0LW1ldGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBcbiAgICAgIGE6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgIH1cblxuICAgICAgPiBkaXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBvcmFuZ2UpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG5cbiAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgIGZpbGw6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgb3JhbmdlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogNzAlO1xuICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgLyAxLjcgJGdsb2JhbC1wYWRkaW5nIC8gMiAkZ2xvYmFsLXBhZGRpbmcgLyAyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICRnbG9iYWwtcGFkZGluZyAqIDEuNSAkZ2xvYmFsLXBhZGRpbmcgKiAwLjc1O1xuICB9XG5cbiAgJi5zbWFsbGVyLWxhYmVsIHtcbiAgICBwYWRkaW5nOiA5cHggMTBweCA2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luOiAwIDVweCA1cHggMDtcbiAgfVxufVxuIiwiLm5vLWltYWdlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG5cbiAgc3ZnIHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIHdpZHRoOiA2MCU7XG4gICAgaGVpZ2h0OiA2MCU7XG4gIH1cbn1cbiIsImZvb3RlciNmb290ZXIge1xuICBwYWRkaW5nOiA1MHB4IDUlIDA7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSksIDEwJSk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IDEwMHB4IDEwJSA1MHB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICBoNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogNDtcbiAgICB9XG4gIH1cblxuICAuYmxvY2sge1xuICAgIGZsZXg6IDAgMSAzMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG5cbiAgLmJsb2NrLW5ld3NsZXR0ZXIge1xuICAgIGZvcm0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgZmxleDogMCAxIDYwcHg7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYmxvY2stbmV3cyB7XG4gICAgYS5zaXRlLWJ1dHRvbiB7XG4gICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG4iLCIjY29ycG9yYXRlIHtcbiAgcGFkZGluZzogNTBweCA1JTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IDEwMHB4IDEwJSA1MHB4O1xuICB9XG5cbiAgLmNvcnAtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC5sb2dvcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgfVxuXG4gICAgICAjY2VnYS1sb2dvIHtcbiAgICAgICAgd2lkdGg6IDE2NXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjYmVya2VsZXktbG9nbyB7XG4gICAgICAgIHdpZHRoOiA5N3B4O1xuICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM7XG5cbiAgICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAyLjA1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHllbGxvdyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsY2FwcyB7XG4gICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDkwJTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjRweDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsInVsLnNvY2lhbHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogNDBweDtcblxuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjE1cyBlYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiI21lbnUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjAwO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UtaW4tb3V0O1xuXG4gIC5tZW51LWluICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyAnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAubWVudS1pbiAmIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmluc2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA0NzBweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA1NC43NXB4KTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHllbGxvdyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNzNweCAqIDAuNzU7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygycmVtICsgNzNweCAqIDAuNzUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICogNDtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDJyZW0gKyA3M3B4KTtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDczcHgpO1xuICAgICAgdG9wOiA3M3B4O1xuICAgIH1cblxuICAgIC5tZW51LWluICYge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xuICAgIH1cbiAgfVxuXG4gICNuYXYge1xuICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgKiAyIDA7XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgIC8vIEBleHRlbmQgLnNtYWxsY2FwcztcblxuICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuMDVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYm90dG9tbGlua3Mge1xuICAgICNzZWNvbmRhcnluYXYge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAyLjA1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgZm9udC1zaXplOiA3MCU7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc29jaWFscyB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBtYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cblxuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgZmlsbDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNwYWdlLWludHJvIHtcbiAgLmluc2lkZSB7XG4gICAgbWF4LXdpZHRoOiA3NTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmLmltcGFjdC1pbnRybyAuaW5zaWRlIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgfVxuXG4gIGgyLFxuICBoMyxcbiAgaDQge1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICBAZXh0ZW5kIGgzO1xuICB9XG5cbiAgcCxcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gICAgfVxuICB9XG5cbiAgdWwsXG4gIG9sIHtcbiAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luICogMiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICB1bCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206ICRnbG9iYWwtcGFkZGluZztcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICB3aWR0aDogNXB4O1xuICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0ycHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgIGJhY2tncm91bmQ6ICNjY2M7XG4gICAgfVxuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAmOjphZnRlcixcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gaWNvbiAtIGZvciB0YXhvbm9taWVzXG4gIFtkYXRhLXN2Z10ge1xuICAgIHdpZHRoOiAxMDhweDtcbiAgICBoZWlnaHQ6IDEwNnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvICRnbG9iYWwtbWFyZ2luO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwOHB4O1xuICAgIGJhY2tncm91bmQ6ICNkM2U4ZTk7XG5cbiAgICBlbGxpcHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW46IDAgYXV0byAkZ2xvYmFsLW1hcmdpbiAqIDM7XG4gICAgfVxuICB9XG59XG4iLCIjcGFnZS1hbmNob3ItbmF2ICsgZGl2LFxuI2NhdGVnb3J5LW5hdiArIGRpdiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLXRvcDogNzBweDtcbiAgfVxufVxuXG4jcGFnZS1hbmNob3ItbmF2LFxuI2NhdGVnb3J5LW5hdiB7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAzJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMjgwcHg7XG5cbiAgICAmLnN0dWNrIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogNzNweDtcbiAgICB9XG4gIH1cblxuICBidXR0b24sXG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiAgICBsZXR0ZXItc3BhY2luZzogMS4ycHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDcwJTtcbiAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHllbGxvdyk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAqIDEuNSAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRnbG9iYWwtbWFyZ2luO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZ2xvYmFsLW1hcmdpbjtcbiAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5idWlsZC1jb250ZW50X2FuZF9iYWNrZ3JvdW5kX2ltYWdlIHtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG8gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbSAhaW1wb3J0YW50O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAyNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnNpZGUge1xuICAgIG1heC13aWR0aDogNjUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAkZ2xvYmFsLXBhZGRpbmcgKiA0O1xuXG4gICAgaW1nIHtcbiAgICAgIG1hcmdpbi10b3A6ICRnbG9iYWwtcGFkZGluZyAqIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJGdsb2JhbC1wYWRkaW5nICogMztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IDkwJTtcbiAgfVxuXG4gICYjYnVpbGQtMSB7XG4gICAgaDIge1xuICAgICAgQGV4dGVuZCBoMztcbiAgICB9XG4gIH1cblxuICAvLyBhYm91dCBwYWdlXG4gIC5wYWdlLWlkLTMxICYge1xuICAgICYjYnVpbGQtNSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbSAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlICsgNTBweCk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB5ZWxsb3cpO1xuICAgICAgICAgIHRvcDogLTIwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMTUwcHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmI2J1aWxkLTYge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b20gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyAyIGNvbHVtblxuICAmLmNvbC0yIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gICAgICBwYWRkaW5nLXRvcDogMTUwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTUwcHg7XG4gICAgfVxuXG4gICAgLmNvbHVtbi0xLFxuICAgIC5jb2x1bW4tMiB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZsZXg6IDAgMSA0NSU7XG4gICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbHVtbi0yIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gKiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuXG4gIHAsXG4gIGg0IHtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuICAgIGZvbnQtZmFtaWx5OiAnQXJubyBQcm8nO1xuICB9XG5cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogMjAwJTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICB3aWR0aDogNzVweCAqIDAuNTtcbiAgICBoZWlnaHQ6IDUwcHggKiAwLjU7XG4gICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHZpZXdCb3g9XCIwIDAgNzUgNTBcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PHBhdGggZD1cIk0yNDAuODA2MzYzLDM0MDcuNTQ3MDkgQzI0MC44MDYzNjMsMzQxMS4yODQwMiAyMzkuNDA3MjMyLDM0MTQuNDYwMzggMjM2LjYwODkyOSwzNDE3LjA3NjIzIEMyMzMuODEwNjI1LDM0MTkuNjkyMDkgMjMwLjQ0NTE0OCwzNDIxIDIyNi41MTIzOTcsMzQyMSBDMjIwLjc2NDUzMSwzNDIxIDIxNi4wNzU1NTIsMzQxOS4wMTk0NSAyMTIuNDQ1MzIsMzQxNS4wNTgzIEMyMDguODE1MDg5LDM0MTEuMDk3MTQgMjA3LDM0MDYuMDUyMzUgMjA3LDMzOTkuOTIzNzcgQzIwNywzMzg4Ljg2MjQzIDIxMS4zODY0NjQsMzM4MC45NDAyMyAyMjAuMTU5NTI0LDMzNzYuMTU2OTUgQzIyNi41MTI0MjksMzM3Mi43MTg5NyAyMzEuNTc5NTUyLDMzNzEgMjM1LjM2MTA0MywzMzcxIEMyMzcuMDI0ODk5LDMzNzEgMjM3Ljg1NjgxNSwzMzcxLjU5NzkgMjM3Ljg1NjgxNSwzMzcyLjc5MzcyIEMyMzcuODU2ODE1LDMzNzMuODQwMDcgMjM2Ljk0OTI3LDMzNzQuNTg3NDQgMjM1LjEzNDE1NCwzMzc1LjAzNTg3IEMyMjIuNzMwODYzLDMzNzguMzI0MzggMjE2LjUyOTMxLDMzODQuNjAyMzUgMjE2LjUyOTMxLDMzOTMuODY5OTYgQzIxNi41MjkzMSwzMzk3Ljc1NjM3IDIxNy41ODgxMTIsMzQwMS4xMTk1NyAyMTkuNzA1NzQ3LDM0MDMuOTU5NjQgQzIyMC4wMDgyNjYsMzM5OC44Nzc0IDIyMy4xODQ2NzEsMzM5Ni4zMzYzMiAyMjkuMjM1MDU4LDMzOTYuMzM2MzIgQzIzMi41NjI3NywzMzk2LjMzNjMyIDIzNS4zMjMyMTcsMzM5Ny40MjAwMiAyMzcuNTE2NDgyLDMzOTkuNTg3NDQgQzIzOS43MDk3NDcsMzQwMS43NTQ4NyAyNDAuODA2MzYzLDM0MDQuNDA4MDYgMjQwLjgwNjM2MywzNDA3LjU0NzA5IFogTTI4MiwzMzkyLjA3NjIzIEMyODIsMzQwMi45ODgxIDI3Ny42MTM1MzYsMzQxMC45MTAyOSAyNjguODQwNDc2LDM0MTUuODQzMDUgQzI2Mi43OTAwOSwzNDE5LjI4MTAzIDI1Ny43MjI5NjgsMzQyMSAyNTMuNjM4OTU3LDM0MjEgQzI1MS45NzUxMDEsMzQyMSAyNTEuMTQzMTg1LDM0MjAuNDAyMSAyNTEuMTQzMTg1LDM0MTkuMjA2MjggQzI1MS4xNDMxODUsMzQxOC4xNTk5MyAyNTIuMDUwNzMsMzQxNy40MTI1NiAyNTMuODY1ODQ2LDM0MTYuOTY0MTMgQzI2MC44MjM3OSwzNDE1LjAyMDkyIDI2NS42NjQwMjYsMzQxMi43MDQwNSAyNjguMzg2Njk5LDM0MTAuMDEzNDUgQzI3MS4xMDkzNzMsMzQwNy4zMjI4NiAyNzIuNDcwNjksMzQwMy40MzY1IDI3Mi40NzA2OSwzMzk4LjM1NDI2IEMyNzIuNDcwNjksMzM5NC4zMTgzNyAyNzEuNDg3NTE3LDMzOTAuODgwNDMgMjY5LjUyMTE0MSwzMzg4LjA0MDM2IEMyNjkuNTIxMTQxLDMzOTMuMTIyNiAyNjYuMjY5MTA3LDMzOTUuNjYzNjggMjU5Ljc2NDk0MiwzMzk1LjY2MzY4IEMyNTYuNDM3MjMsMzM5NS42NjM2OCAyNTMuNjc2NzgzLDMzOTQuNTc5OTggMjUxLjQ4MzUxOCwzMzkyLjQxMjU2IEMyNDkuMjkwMjUzLDMzOTAuMjQ1MTMgMjQ4LjE5MzYzNywzMzg3LjU5MTk0IDI0OC4xOTM2MzcsMzM4NC40NTI5MSBDMjQ4LjE5MzYzNywzMzgwLjcxNTk4IDI0OS41OTI3NjgsMzM3Ny41Mzk2MiAyNTIuMzkxMDcxLDMzNzQuOTIzNzcgQzI1NS4xODkzNzUsMzM3Mi4zMDc5MSAyNTguNjMwNDgsMzM3MSAyNjIuNzE0NDkxLDMzNzEgQzI2OC4zMTEwOTgsMzM3MSAyNzIuOTI0NDQ4LDMzNzIuOTgwNTUgMjc2LjU1NDY4LDMzNzYuOTQxNyBDMjgwLjE4NDkxMSwzMzgwLjkwMjg2IDI4MiwzMzg1Ljk0NzY1IDI4MiwzMzkyLjA3NjIzIFpcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTIwNy4wMDAwMDAsIC0zMzcxLjAwMDAwMClcIiBmaWxsPVwiIzAwMzI2MlwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIi8+PC9zdmc+JylcbiAgICAgIDAgMCBuby1yZXBlYXQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDQ7XG4gICAgICB3aWR0aDogNzVweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5idWlsZC1sb2dvX3Nob3djYXNlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYuYmx1ZSB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgfVxuICAmLm5hdnkge1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gIH1cbiAgJi55ZWxsb3cge1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuICAgIH1cbiAgfVxuICAmLm9yYW5nZSB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBvcmFuZ2UpO1xuXG4gICAgaDIge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmctdG9wOiAyMDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjAwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIC5wYXJ0bmVyLWxvZ29zIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDgycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucGFydG5lci1sb2dvcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAzO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogNDtcbiAgICB9XG4gIH1cbn1cbiIsIi5idWlsZC1maXhlZF93aWR0aF9zbGlkZXIge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyAnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDgwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZDRlZWY1IHVybCgnLi4vaW1hZ2VzL2FwcHJvYWNoLXJlcGVhdC5qcGcnKSByZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNTBweCAxNTBweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAwO1xuICB9XG5cbiAgLy8gZW5nYWdlIHBhZ2VcbiAgLnBhZ2UtaWQtMTQwICYge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZSB1cmwoJy4uL2ltYWdlcy9lbmdhZ2UtZmllbGQucG5nJykgcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgfVxuXG4gICYgKyAuYnVpbGQtYmFubmVyX3NlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICB9XG4gIH1cblxuICAmLm5vLWNvbnRyb2xzIHtcbiAgICAuc2xpZGUtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogJGdsb2JhbC1wYWRkaW5nICogMiAhaW1wb3J0YW50O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGdsb2JhbC1wYWRkaW5nICogMyAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmcgKiA0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIG1heC13aWR0aDogOTUwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gJGdsb2JhbC1tYXJnaW4gKiAyIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW46IDAgYXV0byAkZ2xvYmFsLW1hcmdpbiAqIDQgMDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgJi5jZW50ZXJfaGVhZGluZyBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIC5pbnNpZGUge1xuICAgIG1heC13aWR0aDogNzU1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5zbGlkZS13cmFwcGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmOWY3Zjc7XG4gICAgICBwYWRkaW5nOiAwICRnbG9iYWwtcGFkZGluZyAqIDIgJGdsb2JhbC1wYWRkaW5nICogMjtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMCAkZ2xvYmFsLXBhZGRpbmcgKiAzICRnbG9iYWwtcGFkZGluZyAqIDM7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCAkZ2xvYmFsLXBhZGRpbmcgKiA0ICRnbG9iYWwtcGFkZGluZyAqIDQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2ZpeGVkLXNsaWRlci1jb250cm9scyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDAgMCAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuICAgICAgbWFyZ2luOiAwIC0xcmVtO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgZmxleDogMCAxIDI1JTtcbiAgICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMjVweDtcbiAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGdsb2JhbC1wYWRkaW5nICogMztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRnbG9iYWwtcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGdsb2JhbC1wYWRkaW5nICogNDtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcblxuICAgICAgICBbZGF0YS1zdmddIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICBzdHJva2U6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcbiAgICAgICAgICAgIGZpbGw6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBidXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJi5oYXMtc21hbGwtaGVhZGluZyB7XG4gICAgICAgICAgLnNsaWRlLWNvbnRyb2wtaGVhZGluZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gLyAzO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgW2RhdGEtc3ZnXSB7XG4gICAgICAgIG9wYWNpdHk6IDAuMjtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDVweDtcbiAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDY1cHg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA2NXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNmaXhlZC1zbGlkZXItYXJyb3dzIHtcbiAgICBwYWRkaW5nLXRvcDogJGdsb2JhbC1wYWRkaW5nO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIH1cbiAgICAvKlxuICAgIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogNTVweDtcbiAgICAgIGhlaWdodDogNTVweDtcbiAgICAgIG1hcmdpbjogMCAtMXB4IDAgMDtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgbGVmdDogLTVweDtcblxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICBmaWxsOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuc2xpY2stcHJldiB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSAqL1xuICB9XG5cbiAgLmFwcHJvYWNoLXNsaWRlIHtcbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDkwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi5idWlsZC1iYW5uZXJfc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLmJhY2tncm91bmQge1xuICAgIHBhZGRpbmc6IDUwcHggOCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IDEwMHB4IDUlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAxNTBweCAxMCU7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IHtcbiAgICAuaW5zaWRlIHtcbiAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAwIDA7XG4gICAgfVxuICB9XG4gICYuYWxpZ24tcmlnaHQge1xuICAgIC5pbnNpZGUge1xuICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgICB9XG4gICAgLndhdGVybWFyayB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgJi5pbnNldC1ib3JkZXJzIC5iYWNrZ3JvdW5kIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBvcmFuZ2UpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBsaW5lYXI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLndhdGVybWFyayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAzNSU7XG4gICAgaGVpZ2h0OiA4MCU7XG4gICAgYm90dG9tOiAtMTUlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICBoNCB7XG4gICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcbiAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbjtcbiAgICBmb250LXNpemU6IDIwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IDI1MCU7XG4gICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiAzMzAlO1xuICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gKiAzO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbn1cbiIsIi5idWlsZC1pbWFnZV9hbmRfY29udGVudCB7XG4gICYuZmx1c2gtaW1hZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgaDIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMlO1xuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQgLmNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tbGVmdCAuY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgfVxuICAgICAgLmltYWdlIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgNSU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgNSU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuICAgICAgLmltYWdlIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgNSU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCA1JSAwIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJsb2NrcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgLmltYWdlLFxuICAgIC5jb250ZW50IHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZmxleDogMCAxIDQ1JTtcbiAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgLmhhcy1idXR0b24ge1xuICAgICAgICAvLyBtYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgIH1cbiAgfVxufVxuIiwiLmJ1aWxkLTRfY29sdW1uX3NsaWRlciB7XG4gIHBhZGRpbmc6IDA7XG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzJTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICB9XG5cbiAgLmluc2lkZSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICNkNGVlZjU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWF4LXdpZHRoOiAxMDUwcHg7XG4gICAgfVxuICB9XG5cbiAgLmZvdXItY29sdW1uLXNsaWRlci1jb250cm9scyxcbiAgLmV2ZW50LWZvdXItY29sdW1uLXNsaWRlci1jb250cm9scyB7XG4gICAgcGFkZGluZy1ib3R0b206ICRnbG9iYWwtcGFkZGluZyAqIDI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB0b3A6IDUwJTtcblxuICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yNXB4O1xuICAgICAgfVxuXG4gICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm91ci1jb2x1bW4tc2xpZGVyIHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1hcmdpbi1sZWZ0OiA1JTtcblxuICAgIC5mb3VyLWNvbC1zbGlkZSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luO1xuICAgICAgfVxuXG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKDEgYnkgMSk7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiA2NSU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjE4cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNjUlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiA3MCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLyBXQVJOSU5HOiBXaWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiA2LjRcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvOiBkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8ge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQoKS4gZm91bmRhdGlvbi1mbGV4LXZpZGVvKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbn1cblxuQG1peGluIGZsZXgtdmlkZW8oJHJhdGlvOiAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpbykge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSByZXNwb25zaXZlLWVtYmVkKCkuIGZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW8pO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTYpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMiA6IHBvdygxMCwgJHByZWMpO1xuICAgICRleHBvbmVudDogcm91bmQoJGV4cG9uZW50ICogJHByZWMyKTtcbiAgICAkZGVub21pbmF0b3I6IGdjZCgkZXhwb25lbnQsICRwcmVjMik7XG4gICAgQHJldHVybiBudGgtcm9vdChwb3coJGJhc2UsICRleHBvbmVudCAvICRkZW5vbWluYXRvciksICRwcmVjMiAvICRkZW5vbWluYXRvciwgJHByZWMpO1xuICB9XG5cbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHBvbmVudCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogJGJhc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRleHBvbmVudCA8IDEge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gbnRoLXJvb3QoJG51bSwgJG46IDIsICRwcmVjOiAxMikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvTnRoX3Jvb3QjSmF2YVNjcmlwdFxuICAkeDogMTtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRwcmVjIHtcbiAgICAkeDogMSAvICRuICogKCgkbiAtIDEpICogJHggKyAoJG51bSAvIHBvdygkeCwgJG4gLSAxKSkpO1xuICB9XG5cbiAgQHJldHVybiAkeDtcbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIGZvciBhIGdpdmVuIHJhdGlvLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhdGlvIC0gUmF0aW8gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0LCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG4vLy8gQHJldHVybiB7TnVtYmVyfSBBIHBlcmNlbnRhZ2UgdmFsdWUgZm9yIHRoZSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHdpZHRoIG9mIGEgcmVzcG9uc2l2ZSBjb250YWluZXIuXG5AZnVuY3Rpb24gcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG4iLCIuYnVpbGQtcGxhaW5fY29udGVudCB7XG5cdC8vIFJlc2V0IGZvbnQgc2l6ZSBmb3IgcGFyZW50IGVsZW1lbnQgc29cblx0Ly8gZm9udCBwZXJjZW50YWdlIHNpemVzIGZvciBoZWFkZXJzL2NvbnRlbnRcblx0Ly8gYXJlIGlubGluZSB3aXRoIHNpbmdsZSBhcnRpY2xlcyBoZWFkZXJzLlxuXHRmb250LXNpemU6IDgwJTtcblx0cGFkZGluZy10b3A6IDUwcHg7XG5cdC8vIHBhZGRpbmctYm90dG9tOiAwO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0cGFkZGluZy10b3A6IDBweDtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRwYWRkaW5nLXRvcDogMHB4O1xuXHR9XG5cblx0Lmluc2lkZSB7XG5cdFx0bWF4LXdpZHRoOiA5NTBweDtcblx0XHRwYWRkaW5nLWxlZnQ6IDMlO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDMlO1xuXG5cdFx0aDIsXG5cdFx0aDMsXG5cdFx0aDQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuXHRcdH1cblxuXHRcdGgxIHtcblx0XHRcdGZvbnQtc2l6ZTogMzUwJTtcblx0XHR9XG5cblx0XHRoMiB7XG5cdFx0XHRmb250LXNpemU6IDMwMCU7XG5cdFx0fVxuXG5cdFx0aDMge1xuXHRcdFx0Zm9udC1zaXplOiAyNTAlO1xuXHRcdH1cblxuXHRcdGg0IHtcblx0XHRcdGZvbnQtc2l6ZTogMjAwJTtcblx0XHR9XG5cblx0XHRoNSB7XG5cdFx0XHRmb250LXNpemU6IDE1MCU7XG5cdFx0fVxuXG5cdFx0aDYge1xuXHRcdFx0Zm9udC1zaXplOiAxMDAlO1xuXHRcdH1cblxuXG5cdFx0cCArIGgyLFxuXHRcdHAgKyBoMyxcblx0XHRwICsgaDQsXG5cdFx0cCArIGg1LFxuXHRcdHAgKyBoNiB7XG5cdFx0XHRtYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cdFx0fVxuXG5cdFx0dWwsXG5cdFx0b2wge1xuXHRcdFx0bWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAqIDIgMCAkZ2xvYmFsLW1hcmdpbiAqIDIgJGdsb2JhbC1tYXJnaW4gKiAyO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cdH1cbn1cbiIsIiNzaGFyaW5nLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogNTBweCAzJSAzMHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHllbGxvdyk7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMzJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogNzAlO1xuICB9XG5cbiAgYSB7XG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIH1cblxuICAmICsgI2V2ZW50LXBhcnRuZXJzLFxuICAmICsgI2V2ZW50LXNwZWFrZXJzIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4iLCIubWV0YS1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuXG4gIGg1IHtcbiAgICBmb250LXNpemU6IDkwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAyLjA1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4zOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gICAgcGFkZGluZy1ib3R0b206ICRnbG9iYWwtcGFkZGluZztcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgfVxuXG4gIHAsXG4gIGxpIHtcbiAgICBmb250LXNpemU6IDg1JTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYmx1ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJi5mcmVlX3RleHQge1xuICAgIHAsXG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIiNwYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAwLjVlbTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGEsXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgICBwYWRkaW5nLXRvcDogMXB4O1xuICAgIGhlaWdodDogM2VtO1xuICAgIG1pbi13aWR0aDozZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1jb2xvcjtcbiAgICBjb2xvcjokYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgcGFkZGluZzowIC43ZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAmOmhvdmVye1xuICAgICAgY29sb3I6ICRidXR0b24tY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICAgICYuY3VycmVudHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiRidXR0b24tY29sb3I7XG4gICAgfVxuICAgICYuZG90c3tcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgIH1cblxuXG4gICAgLy8gc3BhbiB7XG4gICAgLy8gICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICAgIC8vIH1cbiAgfVxufVxuIiwiI2xhdW5jaHBhZCB7XG4gIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbGlnaHRibHVlKTtcbiAgcGFkZGluZzogNTBweCAzJTtcblxuICAucmVzb3VyY2VzLWxhdW5jaHBhZCB7XG4gICAgbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gKiA0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luICogODtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogMTIwcHggNSU7XG5cbiAgICAuYmx1ZS1jYXJkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmJsdWUtY2FyZCB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxODAlO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuY2VudGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgcCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjM4cHg7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXgtd2lkdGg6IDIyMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIjd2hvd2VhcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9ibHVlbm9pc2UuanBnJykgcmVwZWF0O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAudmVydGFycm93IHtcbiAgICB0b3A6ICRnbG9iYWwtbWFyZ2luICogMjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEzMHB4KTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgeWVsbG93KTtcbiAgICAgIHRvcDogNTBweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1heC13aWR0aDogMTE1MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgfVxuICB9XG5cbiAgI21hcCB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDUlO1xuICAgICAgcGFkZGluZy1yaWdodDogNSU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNSU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNSU7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICAgICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDM7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwJTtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gKiA0O1xuICAgICAgfVxuICAgIH1cblxuICAgIGg2IHtcbiAgICAgIEBleHRlbmQgLnNtYWxsY2FwcztcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuIiwiI3VwZGF0ZXMge1xuICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9ibHVlbm9pc2UuanBnJykgcmVwZWF0O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvcGFkZHkuanBnJykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDA7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICB9XG5cbiAgLmluc2lkZSB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgKiAyICRnbG9iYWwtcGFkZGluZyAqIDIgJGdsb2JhbC1wYWRkaW5nO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAqIDMgJGdsb2JhbC1wYWRkaW5nICogMyAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLmNhcmQgLmltYWdlIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgfVxuICB9XG5cbiAgLnNwb3RsaWdodCAuaW1hZ2Uge1xuICAgIG1hcmdpbjogMCBhdXRvIDQ3cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uL2ltYWdlcy9tYXAucG5nKSBuby1yZXBlYXQgY2VudGVyIHRvcDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMmMyYzI7XG4gIH1cblxuICAuc3BvdGxpZ2h0IC5zcG90bGlnaHRDb250ZW50IHtcbiAgICBtYXJnaW46IDBweCBhdXRvIDE1cHg7IFxuICAgIGhlaWdodDogMTM4cHg7XG4gIH1cblxuICAuc3BvdGxpZ2h0IC5zcG90bGlnaHRCaW9MaW5re1xuICAgIHdpZHRoOiAyNDBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbn1cbiIsIiNvdXItc2VjdG9ycyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuaW50cm8ge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiA0O1xuICAgIH1cbiAgfVxufVxuXG4udGhlLXNlY3RvcnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy1ib3R0b206ICRnbG9iYWwtcGFkZGluZyAqIDI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmctYm90dG9tOiAkZ2xvYmFsLXBhZGRpbmcgKiA0O1xuICB9XG59XG4iLCIkc2VhcmNoLWJ1dHRvbi1zaXplOiA2MHB4O1xuI3Blb3BsZS1maWx0ZXIge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbiNwZW9wbGUtcGFnZSB7XG4gIGJhY2tncm91bmQ6ICNmMWVmZWY7XG4gIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAzJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IDgwcHggNSU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogMTIwcHggMTAlO1xuICB9XG59XG5cbiNwZW9wbGUtcGFnZS5ub2ZpbHRlcnMgIHtcbiAgYmFja2dyb3VuZDogI2YxZWZlZjtcbiAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nIDMlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogMHB4IDUlO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IDBweCAxMCU7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tICBGb3JtICAtLS0tLS0tLS0tKi9cbi8vIGZvciBzb21lIHJlYXNvbiB0aGUgZ2xvYmFsIHNlYXJjaCBzdHlsZXMgaGF2ZSBiZWVuIHNldCBoZXJlIGluIHBlb3BsZS5zY3NzLlxuXG4uc2VhcmNoLWZpbHRlci1mb3JtIHtcbiAgLnNlYXJjaC10ZXh0cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAuc2VhcmNoLXRleHQge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgIH1cbiAgfVxuICAuc2VhcmNoLXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICBmbGV4OiAwIDEgODBweDtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgaGVpZ2h0OiAkc2VhcmNoLWJ1dHRvbi1zaXplO1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuXG4gICAgICAgIHBhdGgge1xuICAgICAgICAgIHN0cm9rZTogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlYXJjaC1maWx0ZXJzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQ6IGF1dG8gLyAxZnI7XG4gICAgZ2FwOiAxZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgZ3JpZDogYXV0byAvIDFmciAxZnI7XG4gICAgICBnYXA6IDJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBncmlkOiBhdXRvIC8gMWZyIDFmciAxZnIgMWZyO1xuICAgICAgZ2FwOiAyZW07XG4gICAgfVxuICAgID4uc2VhcmNoLXRleHQge1xuICAgICAgZ3JpZC1hcmVhOiAxIC8gMSAvIDEgLyAtMTtcbiAgICB9XG5cbiAgICBzZWxlY3QsXG4gICAgZGl2IHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5oYXMtc2VsZWN0aW9uIHtcbiAgICAgIHNlbGVjdCxpbnB1dHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiRidXR0b24tY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWFyY2gtZmlsdGVycyB7XG5cbiAgICBzZWxlY3Qge1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGhlaWdodDogJHNlYXJjaC1idXR0b24tc2l6ZTtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cbiAgfVxufVxuLnNlYXJjaC1maWx0ZXJze1xuICA+ICoge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAuc2VhcmNoLWZpbHRlcnMgc2VsZWN0IHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gIC5oYXMtc2VsZWN0aW9uIHtcbiAgICAucmVzZXQtZmlsdGVyLWJ1dHRvbntcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgJi5oYXMtc2VsZWN0aW9uID4gLnJlc2V0LWZpbHRlci1idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuICA+LnJlc2V0LWZpbHRlci1idXR0b257XG4gICAgZ3JpZC1hcmVhOiAtMyAvIDEgLyAxIC8gLTE7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAxZW07XG4gIH1cbn1cbi5yZXNldC1maWx0ZXItYnV0dG9ue1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZToyZW07XG4gIHBhZGRpbmc6MWVtO1xuICB3aWR0aDogJHNlYXJjaC1idXR0b24tc2l6ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6ICRzZWFyY2gtYnV0dG9uLXNpemUgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICBjb2xvcjokYnV0dG9uLWNvbG9yO1xuICBmbGV4OiAwIDEgMWVtICFpbXBvcnRhbnQ7XG4gICY6aG92ZXJ7XG4gICAgY29sb3I6ICRidXR0b24tY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG59XG4uc2VhcmNoLWZpbHRlci1mb3Jte1xuICBiYWNrZ3JvdW5kOiAjZjFlZmVmO1xuICBwYWRkaW5nOiA1MHB4IDMlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiA4MHB4IDMlIDA7XG4gIH1cbiAgLnNlYXJjaC1maWx0ZXJzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQ6IGF1dG8gLyAxZnI7XG4gICAgZ2FwOiAyZW07XG4gIH1cbiAgLnNlYXJjaC1maWx0ZXJze1xuICAgID4gKiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuc2VhcmNoLWZpbHRlcnMgc2VsZWN0IHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICAgIC5oYXMtc2VsZWN0aW9uIHtcbiAgICAgIC5yZXNldC1maWx0ZXItYnV0dG9ue1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIGRlZmF1bHQgbGF5b3V0IGlzIDQtY29sdW1uIGF0IFwibGFyZ2VcIiBhbmQgMi1jb2x1bW4gYXQgXCJtZWRpdW1cIlxuICAuc2VhcmNoLWZpbHRlcnMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIGdyaWQ6IGF1dG8gLyAxZnIgMWZyO1xuICAgICAgPi5zZWFyY2gtdGV4dCB7XG4gICAgICAgIGdyaWQtYXJlYTogMS9hdXRvLzEvYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBncmlkOiBhdXRvIC8gMWZyIDFmciAxZnIgMWZyO1xuICAgIH1cbiAgICA+LnNlYXJjaC10ZXh0IHtcbiAgICAgIGdyaWQtYXJlYTogMS8xLzEvLTE7XG4gICAgfVxuICB9XG4gICYuc2VhcmNoLTMtc3BhbntcbiAgICAuc2VhcmNoLWZpbHRlcnMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICA+LnNlYXJjaC10ZXh0IHtcbiAgICAgICAgICBncmlkLWFyZWE6IDEvYXV0by8xL2F1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBncmlkOiBhdXRvIC8gMWZyIDFmciAxZnI7XG4gICAgICAgIGdhcDogMmVtO1xuICAgICAgICA+LnNlYXJjaC10ZXh0IHtcbiAgICAgICAgICBncmlkLWFyZWE6IDEvMS8xLy0xO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYjZmVsbG93cy1maWx0ZXJ7XG4gICAgLnNlYXJjaC1maWx0ZXJze1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGdyaWQ6IGF1dG8gLyAxZnIgMWZyIDFmcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tICBQZW9wbGUgTGlzdCAgLS0tLS0tLS0tLSovXG4jcGVvcGxlLWxpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICogMiAwO1xuICBnYXA6ICRnbG9iYWwtcGFkZGluZyAqIDMgJGdsb2JhbC1wYWRkaW5nO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgKiA0IDA7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICBnYXA6ICRnbG9iYWwtcGFkZGluZyAqIDMgJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgKiA1IDA7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgZ2FwOiAkZ2xvYmFsLXBhZGRpbmcgKiAzICRnbG9iYWwtcGFkZGluZyAqIDI7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnIgMWZyO1xuICAgIGdhcDogJGdsb2JhbC1wYWRkaW5nICogMyAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuICB9XG5cbiAgJi50YWJsZS1zdHlsZSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuaDQueWVhci10aXRsZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gIG1hcmdpbjogMCAwO1xuICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgJGdsb2JhbC1wYWRkaW5nICRnbG9iYWwtcGFkZGluZyAqIDAuODtcbiAgZmxleDogMCAxIDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDEyMCU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYS1wZXJzb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmEtcGVyc29uLXBob3RvIHtcbiAgICBoZWlnaHQ6IGNhbGMoKDk0dncgLSAjeyRnbG9iYWwtcGFkZGluZ30gKiAxKSAvIDIpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICAgIGhlaWdodDogY2FsYygoOTB2dyAtICN7JGdsb2JhbC1wYWRkaW5nfSAqIDIpIC8gMyk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogY2FsYygoODB2dyAtICN7JGdsb2JhbC1wYWRkaW5nfSAqIDYpIC8gNCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgaGVpZ2h0OiBjYWxjKCg4MHZ3IC0gI3skZ2xvYmFsLXBhZGRpbmd9ICogOCkgLyA1KTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICB9XG5cbiAgICAubm8taW1hZ2Uge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC8vIHVuZGVybGF5IGZvciBob3ZlclxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KVxuICAgICAgICB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgdmlld0JveD1cIjAgMCAyNCAyNFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiPjxwYXRoIGZpbGw9XCIjZmZmXCIgZD1cIk0yMS44ODMgMTJsLTcuNTI3IDYuMjM1LjY0NC43NjUgOS03LjUyMS05LTcuNDc5LS42NDUuNzY0IDcuNTI5IDYuMjM2aC0yMS44ODR2MWgyMS44ODN6XCIvPjwvc3ZnPicpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAuYS1wZXJzb24tcGhvdG8ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgfVxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoNSB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMThweDtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luO1xuICB9XG5cbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzNmM2YzZjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4zOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cblxuICAudGFibGUtc3R5bGUgJiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG5cbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCAkZ2xvYmFsLW1hcmdpbiAwIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgfVxuICB9XG59XG5cbltkYXRhLXJldmVhbF0ge1xuICB3aWR0aDogOTAlO1xuICBtYXgtd2lkdGg6IDYwMHB4O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6ICRnbG9iYWwtcGFkZGluZyAqIDI7XG4gIG1hcmdpbi1sZWZ0OiA1JTtcbiAgbWFyZ2luLWJvdHRvbTogNSU7XG4gIGJvcmRlcjogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBbZGF0YS1jbG9zZV0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgIHBhdGgge1xuICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgcGFkZGluZzogNSU7XG4gICAgcGFkZGluZy1ib3R0b206ICRnbG9iYWwtcGFkZGluZztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiA4JTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm1vZGFsLXBob3RvIHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbC1kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGdsb2JhbC1wYWRkaW5nO1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG9yYW5nZSk7XG4gICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjM4cHg7XG4gICAgfVxuXG4gICAgcC5lbWFpbCB7XG4gICAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luIDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICB9XG4gICAgYS53ZWJzaXRlIHtcbiAgICAgIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gMCAwO1xuICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgfVxuICAgIGEud2Vic2l0ZTpob3ZlciB7XG4gICAgICBvcGFjaXR5OjAuODtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1JTtcbiAgICBmb250LXNpemU6IDkwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGdsb2JhbC1wYWRkaW5nICogMjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDglO1xuICAgICAgcGFkZGluZy1yaWdodDogOCU7XG4gICAgfVxuXG4gICAgLmV4dHJhIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuICAgICAgaDYge1xuICAgICAgICBmb250LXNpemU6IDkwJTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgb3JhbmdlKTtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gLyAyO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4yOHB4O1xuICAgICAgfVxuXG4gICAgICBoNiArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5yZXNlYXJjaC1wcm9qZWN0cyB7XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCA1cHg7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNjb250YWN0LXBhZ2UtZm9ybSB7XG4gIGJhY2tncm91bmQ6ICNkNGVlZjUgdXJsKCcuLi9pbWFnZXMvY29udGFjdC1yZXBlYXQuanBnJykgcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDE1MHB4IDE1MHB4O1xuICBwYWRkaW5nOiAzJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogMTIwcHggNSUgMDtcbiAgfVxuXG4gIC5pbnNpZGUge1xuICAgIGJhY2tncm91bmQ6ICNkM2U4ZTk7XG4gICAgbWF4LXdpZHRoOiA3NTBweDtcbiAgICBwYWRkaW5nOiAzJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDUlO1xuICAgIH1cbiAgfVxufVxuXG5bZGF0YS1tYXBdIHtcbiAgaGVpZ2h0OiAzMDBweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgaGVpZ2h0OiA0NTBweDtcbiAgfVxufVxuXG4uY29udGFjdC1pbmZvcm1hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy10b3A6ICRnbG9iYWwtcGFkZGluZyAqIDI7XG4gIHBhZGRpbmctYm90dG9tOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmcgKiA0O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAubnVtYmVycyxcbiAgLmFkZHJlc3Mge1xuICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgc3Ryb25nIHtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxleDogMCAxIDQ1JTtcbiAgICAgIHdpZHRoOiA0NSU7XG4gICAgfVxuICB9XG5cbiAgLm51bWJlcnMgPiBkaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDExMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICBsaW5lLWhlaWdodDogMi4xO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyNXB4O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gICAgfVxuXG4gICAgLmljb24ge1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogNHB4O1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgLmFkZHJlc3Mge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nLXRvcDogJGdsb2JhbC1wYWRkaW5nICogNDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgPiBkaXYge1xuICAgICAgcGFkZGluZy1ib3R0b206ICRnbG9iYWwtcGFkZGluZztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICA+IGRpdiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRnbG9iYWwtcGFkZGluZyAqIDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiA3OHB4O1xuICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIH1cbiAgfVxufVxuIiwiXG4jZXZlbnRzLXNlYXJjaCB7XG4gIC5zZWFyY2gtZmlsdGVycyB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIHNlbGVjdCxcbiAgICBkaXYge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgIH1cbiAgfVxufVxuXG4jZXZlbnRzLWxvb3Age1xuICBiYWNrZ3JvdW5kOiAjZjFlZmVmO1xuXG4gIC5zaW5nbGUtZXZlbnQgJiB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMjIwJTtcbiAgfVxuXG4gIC5pbnNpZGUge1xuICAgIHBhZGRpbmc6IDUwcHggMyU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZzogODBweCAzJTtcbiAgICB9XG5cbiAgICAuY2FyZCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG4ucmVzZXQtZmlsdGVyLWJ1dHRvbiB7XG4gID4gaTpmaXJzdC1jaGlsZHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gID4gaTpsYXN0LWNoaWxke1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufVxuLnBsZWFzZS13YWl0IC5yZXNldC1maWx0ZXItYnV0dG9ue1xuICA+IGk6Zmlyc3QtY2hpbGR7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gID4gaTpsYXN0LWNoaWxke1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbn1cbiIsIiNyZXNlYXJjaC1zZWFyY2gsXG4jcGVvcGxlLWZpbHRlciB7XG4gIC5zZWFyY2gtZmlsdGVycyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgZ3JpZDogYXV0byAvIDFmciAxZnI7XG4gICAgICBnYXA6IDJlbTtcbiAgICAgID4uc2VhcmNoLXRleHQge1xuICAgICAgICBncmlkLWFyZWE6IDEvYXV0by8xL2F1dG87XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgZ3JpZDogYXV0byAvIDFmciAxZnIgMWZyIDFmcjtcbiAgICAgIGdhcDogMmVtO1xuICAgICAgPi5zZWFyY2gtdGV4dCB7XG4gICAgICAgIGdyaWQtYXJlYTogMSAvIDEgLyAxIC8gLTI7IC8vIHJlc2VhcmNoIGhhcyA1IHNlbGVjdHMgc28gbWFrZSByb29tIGluIGZpcnN0IHJvdyBmb3Igb25lIG9mIHRoZW1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiNyZXNlYXJjaC1sb29wIHtcbiAgYmFja2dyb3VuZDogI2YxZWZlZjtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuXG4gIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAyMjAlO1xuICB9XG5cbiAgLmluc2lkZSB7XG4gICAgcGFkZGluZzogNTBweCAzJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAwIDUlIDUwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogODBweCAwIDUwcHg7XG4gICAgfVxuICB9XG5cbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogMjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDM7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiA0O1xuICAgIH1cbiAgfVxufVxuIiwiI3NpbmdsZS1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiAxMTUwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMyU7XG4gIHBhZGRpbmctcmlnaHQ6IDMlO1xuXG4gICYuZnVsbC13aWR0aCB7XG4gICAgLnNpbmdsZS1jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBmbGV4OiAwIDEgMTAwJSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIGgxIHtcbiAgICBtYXJnaW46ICRnbG9iYWwtbWFyZ2luICogMiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gKiA0IDAgJGdsb2JhbC1tYXJnaW4gKiAzO1xuICAgIH1cbiAgfVxuXG4gIC5zaW5nbGUtcG9zdC1tZXRhIHtcbiAgICBwYWRkaW5nOiAwIDAgJGdsb2JhbC1wYWRkaW5nO1xuICAgIC8vIGZvbnQtc2l6ZTogODAlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogI2E3YTdhNztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgJGdsb2JhbC1wYWRkaW5nICogMjtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgJi5sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGdsb2JhbC1tYXJnaW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmV2ZW50LXR5cGUge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBibHVlKTtcbiAgICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgICB9XG5cbiAgICAgICYuZXZlbnQtZGF0ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLnNpbmdsZS1tYWluIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cblxuXG4gICAgLnNpbmdsZS1jb250ZW50IHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXg6IDAgMSA3NSU7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGgxLFxuICAgICAgaDIsXG4gICAgICBoMyxcbiAgICAgIGg0LFxuICAgICAgaDUsXG4gICAgICBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgICAgIH1cblxuICAgICAgICAmICsgcCxcbiAgICAgICAgJiArIHVsIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1wYWRkaW5nO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRnbG9iYWwtcGFkZGluZztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtcGFkZGluZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDM1MCU7XG4gICAgICB9XG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzAwJTtcbiAgICAgIH1cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyNTAlO1xuICAgICAgfVxuICAgICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDIwMCU7XG4gICAgICB9XG4gICAgICBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTUwJTtcbiAgICAgIH1cbiAgICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDEuODtcbiAgICAgIH1cblxuICAgICAgPiBoMTpmaXJzdC1vZi10eXBlLFxuICAgICAgPiBoMjpmaXJzdC1vZi10eXBlLFxuICAgICAgPiBoMzpmaXJzdC1vZi10eXBlLFxuICAgICAgPiBoNDpmaXJzdC1vZi10eXBlLFxuICAgICAgPiBoNTpmaXJzdC1vZi10eXBlLFxuICAgICAgPiBoNjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cblxuICAgICAgZmlndXJlIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogMjtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiA0O1xuXG4gICAgICAgICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRnbG9iYWwtbWFyZ2luICogMjtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIHAge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2luZ2xlLXNpZGViYXIge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbGV4OiAwIDEgMjUlO1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cblxuICAgICAgLmluamVjdGVkLWltYWdlIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gKiAzO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tZXRhLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMzhweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkZ2xvYmFsLXBhZGRpbmc7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuICAgICAgfVxuXG4gICAgICBwLFxuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDg1JTtcbiAgICAgIH1cblxuICAgICAgLmV2ZW50LWJ1dHRvbnMge1xuICAgICAgICBtYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cbiAgICAgICAgLnNpdGUtYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnAuYnJlYWRjcnVtYnMge1xuICBmb250LXNpemU6IDgwJTtcbiAgY29sb3I6ICNhN2E3YTc7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gMCAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAqIDIgMCAwO1xuICB9XG5cbiAgLnNlcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgYSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2E3YTdhNztcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0gIFNwZWFrZXJzICAtLS0tLS0tLS0tKi9cbiNldmVudC1zcGVha2VycyB7XG4gIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luICogNDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDQ7XG4gIH1cblxuICAuaW5zaWRlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjFlZmVmO1xuICAgIG1heC13aWR0aDogMTE1MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICB9XG5cbiAgaDUge1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICB9XG5cbiAgLmltYWdlLFxuICAubm8taW1hZ2Uge1xuICAgIC8vIGhlaWdodDogMjUwcHg7XG5cbiAgICBpbWcge1xuICAgICAgLy8gaGVpZ2h0OiAyNTBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0gIFBhcnRuZXJzICAtLS0tLS0tLS0tKi9cbiNldmVudC1wYXJ0bmVycyB7XG4gIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luICogNDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDQ7XG4gIH1cblxuICAuaW5zaWRlIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICBtYXgtd2lkdGg6IDExNTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogNTBweCAzJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBvcmFuZ2UpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYXJ0bmVyLWxvZ29zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6MmVtO1xuXG4gICAgLmltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgICBwYWRkaW5nOiAyJTtcbiAgICAgIGZsZXg6IDAgMCAyODBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBnYXA6JGdsb2JhbC1tYXJnaW4gKiAyO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiA3MCU7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAwIDA7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIC8vIHdpZHRoOiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDE1MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvdXItY29sdW1uLXNsaWRlciB7XG4gICAgbWF4LXdpZHRoOiAxMTUwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0gIEV2ZW50IFJlc291cmNlcyAgLS0tLS0tLS0tLSovXG4jZXZlbnQtcmVzb3VyY2VzIHtcbiAgcGFkZGluZzogNTBweCAzJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IDUwcHggNSUgMTAwcHg7XG4gIH1cblxuICAuaW5zaWRlIHtcbiAgICBtYXgtd2lkdGg6IDExNTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgJi5oYXMtY2FyZHN7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ2FwOiAyZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICB9XG4gICAgICAuY2FyZCB7XG4gICAgICAgIG1hcmdpbjowICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxufVxuXG4gIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAyMjAlO1xuICB9XG5cbiAgLmhhcy1jYXJkcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogNDtcbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tICBSZWdpc3RlciBNb2RhbCAgLS0tLS0tLS0tLSovXG4jcmVnaXN0ZXItbW9kYWwge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDA7XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG5cbiAgLmdmb3JtX3dyYXBwZXIge1xuICAgIGlucHV0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLSAgSW1wYWN0IFBhZ2VzICAtLS0tLS0tLS0tKi9cblxuLnNpbmdsZS1pbXBhY3QgI3NpbmdsZS1jb250ZW50IC5zaW5nbGUtbWFpbiB7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIC5zaW5nbGUtY29udGVudCBmaWd1cmUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIiNzZWN0b3ItaW5mbyB7XG4gIHBhZGRpbmctbGVmdDogMyU7XG4gIHBhZGRpbmctcmlnaHQ6IDMlO1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICB9XG5cbiAgaW1nLmxlYWQtaW1hZ2Uge1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0gIFNlY3RvciBJbmZvICAtLS0tLS0tLS0tKi9cbi5zZWN0b3ItaW5mb3JtYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDgwJTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5zZWN0b3Itd3JpdGV1cCB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxleDogMCAxIDc1JTtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1JTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbjtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAyO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogNDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2VjdG9yLW1ldGEge1xuICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZsZXg6IDAgMSAyNSU7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgLnNlY3Rvci1idXR0b25zIHtcbiAgICAgIG1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luICogMjtcblxuICAgICAgLnNpdGUtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0gIFNlY3Rpb25zICAtLS0tLS0tLS0tKi9cbi50YXhvbm9teS1zZWN0aW9uIHtcbiAgcGFkZGluZzogNTBweCAzJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5pbnNpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5pbnNpZGUgPiBoMyB7XG4gICAgZm9udC1zaXplOiAxODAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAyMjAlO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogODBweCAzJTtcbiAgfVxuXG4gIC5zaW5nbGUtcG9zdCAmIHtcbiAgICBjZW50ZXIge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgfVxuICB9XG5cbiAgJi50YXhvbm9teS1zZWN0aW9uLWdyZXkge1xuICAgIGJhY2tncm91bmQ6ICNmMWVmZWY7XG4gIH1cblxuICAuY2FyZCBoMyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgIH1cbiAgfVxuXG4gIC5zZWN0b3Itc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDQ7XG4gICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlY3Rvci1zbGlkZXItY29udHJvbHMge1xuICAgIHBhZGRpbmctYm90dG9tOiAkZ2xvYmFsLXBhZGRpbmcgKiAyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAuc2xpY2stYXJyb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxMzAwcHgpIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDE0MDBweCkge1xuICAgICAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLSAgSW5pdGlhdGl2ZSAgLS0tLS0tLS0tLSovXG4udGF4b25vbXktc2VjdGlvbi1pbml0aWF0aXZlcyB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICAuaW5zaWRlID4gaDMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAuaW5pdGlhdGl2ZS1saXN0aW5ncyB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxleDogMCAxIDc1JTtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgfVxuXG4gICAgLmNhcmQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRheC1pbml0aWF0aXZlIHtcbiAgI3BhZ2UtaW50cm8ge1xuICAgIFtkYXRhLXN2Z10ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLnRheC10aGVtZXMge1xuICAudGF4b25vbXktc2VjdGlvbi1pbml0aWF0aXZlcyB7XG4gICAgLmNhcmQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5pbml0aWF0aXZlLWludHJvIHtcbiAgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAqIDI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gKiAzO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICogNDtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIH1cbn1cblxuLnRheG9ub215LXNlY3Rpb24tbmV3cyB7XG4gIC5oYXMtY2FyZHMge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgLmNhcmQge1xuICAgICAgbWFyZ2luOiAxLjUlO1xuICAgIH1cbiAgfVxufVxuIiwiI2dyZXktc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmMWVmZWY7XG4gIHBhZGRpbmc6IDUwcHggMyU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IDgwcHggMyU7XG4gIH1cbn1cblxuI2NvbnRlbnQtbG9vcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuIiwiLnBhZ2UtaWQtNjA4IHtcbiAgI3BhZ2UtaW50cm8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTUwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgNTBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNTBweDtcbiAgICB9XG4gIH1cblxuICAjb3VyLXNlY3RvcnMge1xuICAgIGJhY2tncm91bmQ6ICNlZmVhZTc7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gICAgfVxuICB9XG5cbiAgI291ci10aGVtZXMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgbmF2eSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA4MCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAuZmxpcC1jYXJkIHtcbiAgICAgIC5mcm9udCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBvcmFuZ2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgaDQsXG4gICAgICAgIGEsXG4gICAgICAgIC5zaXRlLWJ1dHRvbiB7XG4gICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgb3JhbmdlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jd29yay1iYW5uZXIge1xuICBiYWNrZ3JvdW5kOiAjZDNlOGU5O1xuXG4gIC5iYWNrZ3JvdW5kIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gKiAyIGF1dG87XG4gIH1cblxuICAud2F0ZXJtYXJrIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDYwJTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gIC5vcC1sYWItbG9nbyB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDM2MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuXG4gIGgyLFxuICBwLFxuICBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gIH1cblxuICAuc2l0ZS1idXR0b24ge1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIG5hdnkpO1xuXG4gICAgc3ZnIHBhdGgge1xuICAgICAgZmlsbDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBuYXZ5KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5wYWdlLWlkLTE0MCB7XG4gIC8vIGludHJvXG4gICNidWlsZC0xIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG8gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTUlO1xuICB9XG5cbiAgLy8gcGFydG5lciBvbiBsZWFybmluZyBhZ2VuZGFcbiAgI2J1aWxkLTIge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b20gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLy8gbW92ZSBpbm5vdmF0aW9uIGludG8gYWN0aW9uXG4gICNidWlsZC01IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDglO1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1JTtcbiAgICB9XG5cbiAgICAuaW5zaWRlIHtcbiAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAwIDA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGNvbGxhYm9yYXRlIGluIHRoZSBmaWVsZFxuICAjYnVpbGQtMyB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDM1JTtcbiAgfVxuXG4gIC8vIHNoYXJlIGRhdGEgYW5kIHRlY2hub2xvZ3lcbiAgI2J1aWxkLTQge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b20gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gICAgICAvLyBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZS1pZC0xNDAgLmxhcmdlX2ltYWdlX3RvYyB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogI2Y5ZjdmODtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIHdpZHRoOiAxMDYlO1xuICBtYXJnaW4tbGVmdDogLTMlO1xuICBtYXJnaW4tcmlnaHQ6IC0zJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDUwcHg7XG4gIH1cblxuICBkaXYge1xuICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZzogMzBweCAwIDEwcHg7XG4gICAgICBmbGV4OiAwIDEgMjIlO1xuICAgICAgd2lkdGg6IDIyJTtcbiAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAwO1xuICAgIH1cblxuICAgIGg1LFxuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMzhweDtcbiAgICAgIGNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHllbGxvdyk7XG5cbiAgICAgIGg1LFxuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGJsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiI3BhcnRuZXJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogNTBweCA1JTtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAucGFydG5lci1ibG9jayB7XG4gICAgZmxleDogMCAxIDUwJTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMyU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICogMjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICAgICAgbWF4LWhlaWdodDogNTBweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMjlweDtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIG1hcmdpbjogJGdsb2JhbC1tYXJnaW4gMCAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZsZXg6IDAgMSAzMyU7XG4gICAgICB3aWR0aDogMzMlO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleDogMCAxIDIwJTtcbiAgICAgIHdpZHRoOiAyMCU7XG4gICAgfVxuICB9XG59XG4iXX0= */
