@charset "UTF-8";
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.woff2?s4dsoynxzz") format("woff2"), url("../fonts/icomoon.ttf?s4dsoynxzz") format("truetype"), url("../fonts/icomoon.woff?s4dsoynxzz") format("woff"), url("../fonts/icomoon.svg?s4dsoynxzz#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }

.icomoon-icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-email:before {
  content: "";
  color: #6d6d6d; }

.icon-fb:before {
  content: "";
  color: #fff; }

.icon-home-2:before {
  content: ""; }

.icon-print:before {
  content: ""; }

.icon-whatsapp2:before {
  content: "";
  color: #6d6d6d; }

.icon-x:before {
  content: "";
  color: #fff; }

.icon-twitter-x:before {
  content: ""; }

.icon-printer1:before {
  content: ""; }

.icon-home:before {
  content: ""; }

.icon-instagram1:before {
  content: ""; }

.icon-snapchat-ghost:before {
  content: ""; }

.icon-youtube:before {
  content: ""; }

.icon-camera:before {
  content: ""; }

.icon-whatsapp:before {
  content: ""; }

.icon-sphere:before {
  content: ""; }

.icon-telegram:before {
  content: ""; }

.icon-printer:before {
  content: ""; }

.icon-linkedin:before {
  content: ""; }

.icon-google-plus:before {
  content: ""; }

.icon-pinterest:before {
  content: ""; }

.icon-instagram:before {
  content: ""; }

.icon-whatsapp1:before {
  content: ""; }

.icon-dislike:before {
  content: ""; }

.icon-like:before {
  content: ""; }

.icon-envelope:before {
  content: ""; }

.icon-comment:before {
  content: ""; }

.icon-uk-flag:before {
  content: ""; }

.icon-us-flag:before {
  content: ""; }

.icon-google:before {
  content: ""; }

.icon-twitter:before {
  content: ""; }

.icon-facebook:before {
  content: ""; }

.icon-arrow-down2:before {
  content: ""; }

.icon-arrow-left2:before {
  content: ""; }

.icon-arrow-right2:before {
  content: ""; }

.icon-arrow-up2:before {
  content: ""; }

.icon-arrow-down:before {
  content: ""; }

.icon-arrow-left:before {
  content: ""; }

.icon-arrow-up:before {
  content: ""; }

.icon-arrow-right:before {
  content: ""; }

.icon-play:before {
  content: ""; }

.icon-close:before {
  content: ""; }

.icon-user:before {
  content: ""; }

.icon-hamburger:before {
  content: ""; }

.icon-search:before {
  content: ""; }

.icon-sound-wave:before {
  content: ""; }

@font-face {
  font-family: 'DroidArabicKufi';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/DroidKufi-Regular.woff2") format("woff2"), url("../fonts/DroidKufi-Regular.woff") format("woff"), url("../fonts/DroidKufi-Regular.ttf") format("truetype"); }

@font-face {
  font-family: 'DroidArabicKufi';
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/DroidKufi-Bold.woff2") format("woff2"), url("../fonts/DroidKufi-Bold.woff") format("woff"), url("../fonts/DroidKufi-Bold.ttf") format("truetype"); }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-Bold.woff2") format("woff2"), url("../fonts/AbdoMaster-Bold.woff") format("woff"), url("../fonts/AbdoMaster-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-ExtraBold.woff2") format("woff2"), url("../fonts/AbdoMaster-ExtraBold.woff") format("woff"), url("../fonts/AbdoMaster-ExtraBold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-ExtraLight.woff2") format("woff2"), url("../fonts/AbdoMaster-ExtraLight.woff") format("woff"), url("../fonts/AbdoMaster-ExtraLight.ttf") format("truetype");
  font-weight: 200;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master outline';
  src: url("../fonts/AbdoMasteroutline.woff2") format("woff2"), url("../fonts/AbdoMasteroutline.woff") format("woff"), url("../fonts/AbdoMasteroutline.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master Book';
  src: url("../fonts/AbdoMaster-Book.woff2") format("woff2"), url("../fonts/AbdoMaster-Book.woff") format("woff"), url("../fonts/AbdoMaster-Book.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-Black.woff2") format("woff2"), url("../fonts/AbdoMaster-Black.woff") format("woff"), url("../fonts/AbdoMaster-Black.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-DemiBold.woff2") format("woff2"), url("../fonts/AbdoMaster-DemiBold.woff") format("woff"), url("../fonts/AbdoMaster-DemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master Normal';
  src: url("../fonts/AbdoMaster-Normal.woff2") format("woff2"), url("../fonts/AbdoMaster-Normal.woff") format("woff"), url("../fonts/AbdoMaster-Normal.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-Light.woff2") format("woff2"), url("../fonts/AbdoMaster-Light.woff") format("woff"), url("../fonts/AbdoMaster-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-Heavy.woff2") format("woff2"), url("../fonts/AbdoMaster-Heavy.woff") format("woff"), url("../fonts/AbdoMaster-Heavy.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-Medium.woff2") format("woff2"), url("../fonts/AbdoMaster-Medium.woff") format("woff"), url("../fonts/AbdoMaster-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-Thin.woff2") format("woff2"), url("../fonts/AbdoMaster-Thin.woff") format("woff"), url("../fonts/AbdoMaster-Thin.ttf") format("truetype");
  font-weight: 100;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-SemiBold.woff2") format("woff2"), url("../fonts/AbdoMaster-SemiBold.woff") format("woff"), url("../fonts/AbdoMaster-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Abdo Master';
  src: url("../fonts/AbdoMaster-Regular.woff2") format("woff2"), url("../fonts/AbdoMaster-Regular.woff") format("woff"), url("../fonts/AbdoMaster-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  font-family: "DroidArabicKufi", Tahoma, Helvetica, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #281E1E;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

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

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

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

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

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

pre {
  overflow: auto; }

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

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

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

.row {
  max-width: 61.5rem;
  margin-right: auto;
  margin-left: auto; }
  .row::before, .row::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .row::after {
    clear: both; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .row .row {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 48em) {
      .row .row {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .row .row {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .row .row.collapse {
      margin-right: 0;
      margin-left: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-right: auto;
      margin-left: auto; }
  .row:not(.expanded) .row {
    max-width: none; }
  .row.gutter-small > .column, .row.gutter-small > .columns {
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
  .row.gutter-medium > .column, .row.gutter-medium > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; }

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

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

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

.small-1 {
  width: 8.33333%; }

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

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

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

.small-2 {
  width: 16.66667%; }

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

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

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

.small-3 {
  width: 25%; }

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

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

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

.small-4 {
  width: 33.33333%; }

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

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

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

.small-5 {
  width: 41.66667%; }

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

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

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

.small-6 {
  width: 50%; }

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

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

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

.small-7 {
  width: 58.33333%; }

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

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

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

.small-8 {
  width: 66.66667%; }

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

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

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

.small-9 {
  width: 75%; }

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

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

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

.small-10 {
  width: 83.33333%; }

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

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

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

.small-11 {
  width: 91.66667%; }

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

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

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

.small-12 {
  width: 100%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.grid-container {
  padding-right: 0.3125rem;
  padding-left: 0.3125rem;
  max-width: 61.5rem;
  margin: 0 auto; }
  @media print, screen and (min-width: 48em) {
    .grid-container {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-container {
      padding-right: 0.5rem;
      padding-left: 0.5rem; } }
  .grid-container.fluid {
    padding-right: 0.3125rem;
    padding-left: 0.3125rem;
    max-width: 100%;
    margin: 0 auto; }
    @media print, screen and (min-width: 48em) {
      .grid-container.fluid {
        padding-right: 0.375rem;
        padding-left: 0.375rem; } }
    @media print, screen and (min-width: 64em) {
      .grid-container.fluid {
        padding-right: 0.5rem;
        padding-left: 0.5rem; } }
  .grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin: 0 auto; }

.grid-x {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.cell {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%; }
  .cell.auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .cell.shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }

.grid-x > .auto {
  width: auto; }

.grid-x > .shrink {
  width: auto; }

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }

@media print, screen and (min-width: 48em) {
  .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

.grid-x > .small-1 {
  width: 8.33333%; }

.grid-x > .small-2 {
  width: 16.66667%; }

.grid-x > .small-3 {
  width: 25%; }

.grid-x > .small-4 {
  width: 33.33333%; }

.grid-x > .small-5 {
  width: 41.66667%; }

.grid-x > .small-6 {
  width: 50%; }

.grid-x > .small-7 {
  width: 58.33333%; }

.grid-x > .small-8 {
  width: 66.66667%; }

.grid-x > .small-9 {
  width: 75%; }

.grid-x > .small-10 {
  width: 83.33333%; }

.grid-x > .small-11 {
  width: 91.66667%; }

.grid-x > .small-12 {
  width: 100%; }

@media print, screen and (min-width: 48em) {
  .grid-x > .medium-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .medium-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto; }
  .grid-x > .medium-1 {
    width: 8.33333%; }
  .grid-x > .medium-2 {
    width: 16.66667%; }
  .grid-x > .medium-3 {
    width: 25%; }
  .grid-x > .medium-4 {
    width: 33.33333%; }
  .grid-x > .medium-5 {
    width: 41.66667%; }
  .grid-x > .medium-6 {
    width: 50%; }
  .grid-x > .medium-7 {
    width: 58.33333%; }
  .grid-x > .medium-8 {
    width: 66.66667%; }
  .grid-x > .medium-9 {
    width: 75%; }
  .grid-x > .medium-10 {
    width: 83.33333%; }
  .grid-x > .medium-11 {
    width: 91.66667%; }
  .grid-x > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .large-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto; }
  .grid-x > .large-1 {
    width: 8.33333%; }
  .grid-x > .large-2 {
    width: 16.66667%; }
  .grid-x > .large-3 {
    width: 25%; }
  .grid-x > .large-4 {
    width: 33.33333%; }
  .grid-x > .large-5 {
    width: 41.66667%; }
  .grid-x > .large-6 {
    width: 50%; }
  .grid-x > .large-7 {
    width: 58.33333%; }
  .grid-x > .large-8 {
    width: 66.66667%; }
  .grid-x > .large-9 {
    width: 75%; }
  .grid-x > .large-10 {
    width: 83.33333%; }
  .grid-x > .large-11 {
    width: 91.66667%; }
  .grid-x > .large-12 {
    width: 100%; } }

.grid-margin-x:not(.grid-x) > .cell {
  width: auto; }

.grid-margin-y:not(.grid-y) > .cell {
  height: auto; }

.grid-margin-x {
  margin-left: -0.3125rem;
  margin-right: -0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-margin-x {
      margin-left: -0.375rem;
      margin-right: -0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x {
      margin-left: -0.5rem;
      margin-right: -0.5rem; } }
  .grid-margin-x > .cell {
    width: calc(100% - 0.625rem);
    margin-left: 0.3125rem;
    margin-right: 0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-margin-x > .cell {
      width: calc(100% - 0.75rem);
      margin-left: 0.375rem;
      margin-right: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1rem);
      margin-left: 0.5rem;
      margin-right: 0.5rem; } }
  .grid-margin-x > .auto {
    width: auto; }
  .grid-margin-x > .shrink {
    width: auto; }
  .grid-margin-x > .small-1 {
    width: calc(8.33333% - 0.625rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 0.625rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 0.625rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 0.625rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 0.625rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 0.625rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 0.625rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 0.625rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 0.625rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 0.625rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 0.625rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 0.625rem); }
  @media print, screen and (min-width: 48em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 0.75rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 0.75rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 0.75rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 0.75rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 0.75rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 0.75rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 0.75rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 0.75rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 0.75rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 0.75rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 0.75rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 0.75rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 0.75rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 0.75rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 0.75rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 0.75rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 0.75rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 0.75rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 0.75rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 0.75rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 0.75rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 0.75rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 0.75rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 0.75rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1rem); }
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 1rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 1rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 1rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 1rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 1rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 1rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 1rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 1rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 1rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 1rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 1rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 1rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.3125rem;
  margin-left: -0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.375rem;
      margin-left: -0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.5rem;
      margin-left: -0.5rem; } }

.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.3125rem;
  margin-left: -0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -0.375rem;
      margin-left: -0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -0.5rem;
      margin-left: -0.5rem; } }

.grid-padding-x > .cell {
  padding-right: 0.3125rem;
  padding-left: 0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-padding-x > .cell {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-x > .cell {
      padding-right: 0.5rem;
      padding-left: 0.5rem; } }

.small-up-1 > .cell {
  width: 100%; }

.small-up-2 > .cell {
  width: 50%; }

.small-up-3 > .cell {
  width: 33.33333%; }

.small-up-4 > .cell {
  width: 25%; }

.small-up-5 > .cell {
  width: 20%; }

.small-up-6 > .cell {
  width: 16.66667%; }

.small-up-7 > .cell {
  width: 14.28571%; }

.small-up-8 > .cell {
  width: 12.5%; }

@media print, screen and (min-width: 48em) {
  .medium-up-1 > .cell {
    width: 100%; }
  .medium-up-2 > .cell {
    width: 50%; }
  .medium-up-3 > .cell {
    width: 33.33333%; }
  .medium-up-4 > .cell {
    width: 25%; }
  .medium-up-5 > .cell {
    width: 20%; }
  .medium-up-6 > .cell {
    width: 16.66667%; }
  .medium-up-7 > .cell {
    width: 14.28571%; }
  .medium-up-8 > .cell {
    width: 12.5%; } }

@media print, screen and (min-width: 64em) {
  .large-up-1 > .cell {
    width: 100%; }
  .large-up-2 > .cell {
    width: 50%; }
  .large-up-3 > .cell {
    width: 33.33333%; }
  .large-up-4 > .cell {
    width: 25%; }
  .large-up-5 > .cell {
    width: 20%; }
  .large-up-6 > .cell {
    width: 16.66667%; }
  .large-up-7 > .cell {
    width: 14.28571%; }
  .large-up-8 > .cell {
    width: 12.5%; } }

.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 0.625rem); }

.grid-margin-x.small-up-2 > .cell {
  width: calc(50% - 0.625rem); }

.grid-margin-x.small-up-3 > .cell {
  width: calc(33.33333% - 0.625rem); }

.grid-margin-x.small-up-4 > .cell {
  width: calc(25% - 0.625rem); }

.grid-margin-x.small-up-5 > .cell {
  width: calc(20% - 0.625rem); }

.grid-margin-x.small-up-6 > .cell {
  width: calc(16.66667% - 0.625rem); }

.grid-margin-x.small-up-7 > .cell {
  width: calc(14.28571% - 0.625rem); }

.grid-margin-x.small-up-8 > .cell {
  width: calc(12.5% - 0.625rem); }

@media print, screen and (min-width: 48em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 0.625rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 0.625rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 0.625rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 0.625rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 0.625rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 0.625rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 0.625rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 0.625rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 0.75rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 0.75rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 0.75rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 0.75rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 0.75rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 0.75rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 0.75rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 0.75rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 0.625rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 0.75rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 0.625rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 0.75rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 0.625rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 0.75rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 0.625rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 0.75rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 0.625rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 0.75rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 0.625rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 0.75rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 0.625rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 0.75rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 0.625rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 0.75rem); }
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 1rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 1rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 1rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 1rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 1rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 1rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 1rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1rem); } }

.small-margin-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0; }
  .small-margin-collapse > .small-1 {
    width: 8.33333%; }
  .small-margin-collapse > .small-2 {
    width: 16.66667%; }
  .small-margin-collapse > .small-3 {
    width: 25%; }
  .small-margin-collapse > .small-4 {
    width: 33.33333%; }
  .small-margin-collapse > .small-5 {
    width: 41.66667%; }
  .small-margin-collapse > .small-6 {
    width: 50%; }
  .small-margin-collapse > .small-7 {
    width: 58.33333%; }
  .small-margin-collapse > .small-8 {
    width: 66.66667%; }
  .small-margin-collapse > .small-9 {
    width: 75%; }
  .small-margin-collapse > .small-10 {
    width: 83.33333%; }
  .small-margin-collapse > .small-11 {
    width: 91.66667%; }
  .small-margin-collapse > .small-12 {
    width: 100%; }
  @media print, screen and (min-width: 48em) {
    .small-margin-collapse > .medium-1 {
      width: 8.33333%; }
    .small-margin-collapse > .medium-2 {
      width: 16.66667%; }
    .small-margin-collapse > .medium-3 {
      width: 25%; }
    .small-margin-collapse > .medium-4 {
      width: 33.33333%; }
    .small-margin-collapse > .medium-5 {
      width: 41.66667%; }
    .small-margin-collapse > .medium-6 {
      width: 50%; }
    .small-margin-collapse > .medium-7 {
      width: 58.33333%; }
    .small-margin-collapse > .medium-8 {
      width: 66.66667%; }
    .small-margin-collapse > .medium-9 {
      width: 75%; }
    .small-margin-collapse > .medium-10 {
      width: 83.33333%; }
    .small-margin-collapse > .medium-11 {
      width: 91.66667%; }
    .small-margin-collapse > .medium-12 {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .small-margin-collapse > .large-1 {
      width: 8.33333%; }
    .small-margin-collapse > .large-2 {
      width: 16.66667%; }
    .small-margin-collapse > .large-3 {
      width: 25%; }
    .small-margin-collapse > .large-4 {
      width: 33.33333%; }
    .small-margin-collapse > .large-5 {
      width: 41.66667%; }
    .small-margin-collapse > .large-6 {
      width: 50%; }
    .small-margin-collapse > .large-7 {
      width: 58.33333%; }
    .small-margin-collapse > .large-8 {
      width: 66.66667%; }
    .small-margin-collapse > .large-9 {
      width: 75%; }
    .small-margin-collapse > .large-10 {
      width: 83.33333%; }
    .small-margin-collapse > .large-11 {
      width: 91.66667%; }
    .small-margin-collapse > .large-12 {
      width: 100%; } }

.small-padding-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0; }

@media print, screen and (min-width: 48em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 48em) {
  .medium-margin-collapse > .small-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .small-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .small-3 {
    width: 25%; }
  .medium-margin-collapse > .small-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .small-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .small-6 {
    width: 50%; }
  .medium-margin-collapse > .small-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .small-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .small-9 {
    width: 75%; }
  .medium-margin-collapse > .small-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .small-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .medium-3 {
    width: 25%; }
  .medium-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .medium-6 {
    width: 50%; }
  .medium-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .medium-9 {
    width: 75%; }
  .medium-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .large-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .large-3 {
    width: 25%; }
  .medium-margin-collapse > .large-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .large-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .large-6 {
    width: 50%; }
  .medium-margin-collapse > .large-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .large-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .large-9 {
    width: 75%; }
  .medium-margin-collapse > .large-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .large-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .large-12 {
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.33333%; }
  .large-margin-collapse > .small-2 {
    width: 16.66667%; }
  .large-margin-collapse > .small-3 {
    width: 25%; }
  .large-margin-collapse > .small-4 {
    width: 33.33333%; }
  .large-margin-collapse > .small-5 {
    width: 41.66667%; }
  .large-margin-collapse > .small-6 {
    width: 50%; }
  .large-margin-collapse > .small-7 {
    width: 58.33333%; }
  .large-margin-collapse > .small-8 {
    width: 66.66667%; }
  .large-margin-collapse > .small-9 {
    width: 75%; }
  .large-margin-collapse > .small-10 {
    width: 83.33333%; }
  .large-margin-collapse > .small-11 {
    width: 91.66667%; }
  .large-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .large-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .large-margin-collapse > .medium-3 {
    width: 25%; }
  .large-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .large-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .large-margin-collapse > .medium-6 {
    width: 50%; }
  .large-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .large-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .large-margin-collapse > .medium-9 {
    width: 75%; }
  .large-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .large-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .large-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.33333%; }
  .large-margin-collapse > .large-2 {
    width: 16.66667%; }
  .large-margin-collapse > .large-3 {
    width: 25%; }
  .large-margin-collapse > .large-4 {
    width: 33.33333%; }
  .large-margin-collapse > .large-5 {
    width: 41.66667%; }
  .large-margin-collapse > .large-6 {
    width: 50%; }
  .large-margin-collapse > .large-7 {
    width: 58.33333%; }
  .large-margin-collapse > .large-8 {
    width: 66.66667%; }
  .large-margin-collapse > .large-9 {
    width: 75%; }
  .large-margin-collapse > .large-10 {
    width: 83.33333%; }
  .large-margin-collapse > .large-11 {
    width: 91.66667%; }
  .large-margin-collapse > .large-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

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

.grid-margin-x > .small-offset-0 {
  margin-right: calc(0% + 0.3125rem); }

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

.grid-margin-x > .small-offset-1 {
  margin-right: calc(8.33333% + 0.3125rem); }

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

.grid-margin-x > .small-offset-2 {
  margin-right: calc(16.66667% + 0.3125rem); }

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

.grid-margin-x > .small-offset-3 {
  margin-right: calc(25% + 0.3125rem); }

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

.grid-margin-x > .small-offset-4 {
  margin-right: calc(33.33333% + 0.3125rem); }

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

.grid-margin-x > .small-offset-5 {
  margin-right: calc(41.66667% + 0.3125rem); }

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

.grid-margin-x > .small-offset-6 {
  margin-right: calc(50% + 0.3125rem); }

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

.grid-margin-x > .small-offset-7 {
  margin-right: calc(58.33333% + 0.3125rem); }

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

.grid-margin-x > .small-offset-8 {
  margin-right: calc(66.66667% + 0.3125rem); }

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

.grid-margin-x > .small-offset-9 {
  margin-right: calc(75% + 0.3125rem); }

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

.grid-margin-x > .small-offset-10 {
  margin-right: calc(83.33333% + 0.3125rem); }

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

.grid-margin-x > .small-offset-11 {
  margin-right: calc(91.66667% + 0.3125rem); }

@media print, screen and (min-width: 48em) {
  .medium-offset-0 {
    margin-right: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-right: calc(0% + 0.375rem); }
  .medium-offset-1 {
    margin-right: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-right: calc(8.33333% + 0.375rem); }
  .medium-offset-2 {
    margin-right: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-right: calc(16.66667% + 0.375rem); }
  .medium-offset-3 {
    margin-right: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-right: calc(25% + 0.375rem); }
  .medium-offset-4 {
    margin-right: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-right: calc(33.33333% + 0.375rem); }
  .medium-offset-5 {
    margin-right: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-right: calc(41.66667% + 0.375rem); }
  .medium-offset-6 {
    margin-right: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-right: calc(50% + 0.375rem); }
  .medium-offset-7 {
    margin-right: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-right: calc(58.33333% + 0.375rem); }
  .medium-offset-8 {
    margin-right: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-right: calc(66.66667% + 0.375rem); }
  .medium-offset-9 {
    margin-right: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-right: calc(75% + 0.375rem); }
  .medium-offset-10 {
    margin-right: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-right: calc(83.33333% + 0.375rem); }
  .medium-offset-11 {
    margin-right: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-right: calc(91.66667% + 0.375rem); } }

@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-right: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-right: calc(0% + 0.5rem); }
  .large-offset-1 {
    margin-right: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-right: calc(8.33333% + 0.5rem); }
  .large-offset-2 {
    margin-right: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-right: calc(16.66667% + 0.5rem); }
  .large-offset-3 {
    margin-right: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-right: calc(25% + 0.5rem); }
  .large-offset-4 {
    margin-right: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-right: calc(33.33333% + 0.5rem); }
  .large-offset-5 {
    margin-right: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-right: calc(41.66667% + 0.5rem); }
  .large-offset-6 {
    margin-right: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-right: calc(50% + 0.5rem); }
  .large-offset-7 {
    margin-right: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-right: calc(58.33333% + 0.5rem); }
  .large-offset-8 {
    margin-right: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-right: calc(66.66667% + 0.5rem); }
  .large-offset-9 {
    margin-right: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-right: calc(75% + 0.5rem); }
  .large-offset-10 {
    margin-right: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-right: calc(83.33333% + 0.5rem); }
  .large-offset-11 {
    margin-right: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-right: calc(91.66667% + 0.5rem); } }

.grid-y {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }
  .grid-y > .cell {
    width: auto; }
  .grid-y > .auto {
    height: auto; }
  .grid-y > .shrink {
    height: auto; }
  .grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; }
  @media print, screen and (min-width: 48em) {
    .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  .grid-y > .small-1 {
    height: 8.33333%; }
  .grid-y > .small-2 {
    height: 16.66667%; }
  .grid-y > .small-3 {
    height: 25%; }
  .grid-y > .small-4 {
    height: 33.33333%; }
  .grid-y > .small-5 {
    height: 41.66667%; }
  .grid-y > .small-6 {
    height: 50%; }
  .grid-y > .small-7 {
    height: 58.33333%; }
  .grid-y > .small-8 {
    height: 66.66667%; }
  .grid-y > .small-9 {
    height: 75%; }
  .grid-y > .small-10 {
    height: 83.33333%; }
  .grid-y > .small-11 {
    height: 91.66667%; }
  .grid-y > .small-12 {
    height: 100%; }
  @media print, screen and (min-width: 48em) {
    .grid-y > .medium-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .medium-shrink {
      height: auto; }
    .grid-y > .medium-1 {
      height: 8.33333%; }
    .grid-y > .medium-2 {
      height: 16.66667%; }
    .grid-y > .medium-3 {
      height: 25%; }
    .grid-y > .medium-4 {
      height: 33.33333%; }
    .grid-y > .medium-5 {
      height: 41.66667%; }
    .grid-y > .medium-6 {
      height: 50%; }
    .grid-y > .medium-7 {
      height: 58.33333%; }
    .grid-y > .medium-8 {
      height: 66.66667%; }
    .grid-y > .medium-9 {
      height: 75%; }
    .grid-y > .medium-10 {
      height: 83.33333%; }
    .grid-y > .medium-11 {
      height: 91.66667%; }
    .grid-y > .medium-12 {
      height: 100%; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .large-shrink {
      height: auto; }
    .grid-y > .large-1 {
      height: 8.33333%; }
    .grid-y > .large-2 {
      height: 16.66667%; }
    .grid-y > .large-3 {
      height: 25%; }
    .grid-y > .large-4 {
      height: 33.33333%; }
    .grid-y > .large-5 {
      height: 41.66667%; }
    .grid-y > .large-6 {
      height: 50%; }
    .grid-y > .large-7 {
      height: 58.33333%; }
    .grid-y > .large-8 {
      height: 66.66667%; }
    .grid-y > .large-9 {
      height: 75%; }
    .grid-y > .large-10 {
      height: 83.33333%; }
    .grid-y > .large-11 {
      height: 91.66667%; }
    .grid-y > .large-12 {
      height: 100%; } }

.grid-padding-y .grid-padding-y {
  margin-top: -0.3125rem;
  margin-bottom: -0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.375rem;
      margin-bottom: -0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.5rem;
      margin-bottom: -0.5rem; } }

.grid-padding-y > .cell {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-padding-y > .cell {
      padding-top: 0.375rem;
      padding-bottom: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-y > .cell {
      padding-top: 0.5rem;
      padding-bottom: 0.5rem; } }

.grid-margin-y {
  margin-top: -0.3125rem;
  margin-bottom: -0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-margin-y {
      margin-top: -0.375rem;
      margin-bottom: -0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y {
      margin-top: -0.5rem;
      margin-bottom: -0.5rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 0.625rem);
    margin-top: 0.3125rem;
    margin-bottom: 0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-margin-y > .cell {
      height: calc(100% - 0.75rem);
      margin-top: 0.375rem;
      margin-bottom: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1rem);
      margin-top: 0.5rem;
      margin-bottom: 0.5rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 0.625rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 0.625rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 0.625rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 0.625rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 0.625rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 0.625rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 0.625rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 0.625rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 0.625rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 0.625rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 0.625rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 0.625rem); }
  @media print, screen and (min-width: 48em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 0.75rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 0.75rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 0.75rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 0.75rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 0.75rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 0.75rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 0.75rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 0.75rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 0.75rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 0.75rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 0.75rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 0.75rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 0.75rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 0.75rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 0.75rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 0.75rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 0.75rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 0.75rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 0.75rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 0.75rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 0.75rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 0.75rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 0.75rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 0.75rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100vw; }

.cell .grid-frame {
  width: 100%; }

.cell-block {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-stype: -ms-autohiding-scrollbar; }

.cell-block-y {
  overflow-y: auto;
  max-height: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-stype: -ms-autohiding-scrollbar; }

.cell-block-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  max-height: 100%; }
  .cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; }

@media print, screen and (min-width: 48em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .medium-grid-frame {
    width: 100%; }
  .medium-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; }
  .medium-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .medium-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .medium-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 64em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .large-grid-frame {
    width: 100%; }
  .large-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; }
  .large-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .large-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .large-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh; }

@media print, screen and (min-width: 48em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

.cell .grid-y.grid-frame {
  height: 100%; }

@media print, screen and (min-width: 48em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%; } }

@media print, screen and (min-width: 64em) {
  .cell .grid-y.large-grid-frame {
    height: 100%; } }

.grid-margin-y {
  margin-top: -0.3125rem;
  margin-bottom: -0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-margin-y {
      margin-top: -0.375rem;
      margin-bottom: -0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y {
      margin-top: -0.5rem;
      margin-bottom: -0.5rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 0.625rem);
    margin-top: 0.3125rem;
    margin-bottom: 0.3125rem; }
  @media print, screen and (min-width: 48em) {
    .grid-margin-y > .cell {
      height: calc(100% - 0.75rem);
      margin-top: 0.375rem;
      margin-bottom: 0.375rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1rem);
      margin-top: 0.5rem;
      margin-bottom: 0.5rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 0.625rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 0.625rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 0.625rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 0.625rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 0.625rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 0.625rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 0.625rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 0.625rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 0.625rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 0.625rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 0.625rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 0.625rem); }
  @media print, screen and (min-width: 48em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 0.75rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 0.75rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 0.75rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 0.75rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 0.75rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 0.75rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 0.75rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 0.75rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 0.75rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 0.75rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 0.75rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 0.75rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 0.75rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 0.75rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 0.75rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 0.75rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 0.75rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 0.75rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 0.75rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 0.75rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 0.75rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 0.75rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 0.75rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 0.75rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1rem); } }

.grid-frame.grid-margin-y {
  height: calc(100vh + 0.625rem); }
  @media print, screen and (min-width: 48em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 0.75rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1rem); } }

@media print, screen and (min-width: 48em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 0.75rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 1rem); } }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

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

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

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

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

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "DroidArabicKufi", Tahoma, Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: 800;
  color: inherit;
  text-rendering: optimizeLegibility; }
  h1 small, .h1 small,
  h2 small, .h2 small,
  h3 small, .h3 small,
  h4 small, .h4 small,
  h5 small, .h5 small,
  h6 small, .h6 small {
    line-height: 0;
    color: #888888; }

h1, .h1 {
  font-size: 2rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.625rem; }

h2, .h2 {
  font-size: 1.75rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.625rem; }

h3, .h3 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.625rem; }

h4, .h4 {
  font-size: 1.25rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.625rem; }

h5, .h5 {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.625rem; }

h6, .h6 {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.625rem; }

@media print, screen and (min-width: 64em) {
  h1, .h1 {
    font-size: 2.375rem; }
  h2, .h2 {
    font-size: 2rem; }
  h3, .h3 {
    font-size: 1.625rem; }
  h4, .h4 {
    font-size: 1.375rem; }
  h5, .h5 {
    font-size: 1rem; }
  h6, .h6 {
    font-size: 0.875rem; } }

a {
  line-height: inherit;
  color: #ec1a2e;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #940c19; }
  a img {
    border: 0; }

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

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

li {
  font-size: inherit; }

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

ol {
  margin-right: 1.25rem; }

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

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

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-right: 1px solid #888888; }
  blockquote, blockquote p {
    line-height: 28px;
    color: #333333; }

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

abbr, abbr[title] {
  border-bottom: 1px dotted #000000;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #888888;
  background-color: #dadfe1;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #000000; }

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

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

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

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

ul.no-bullet, ol.no-bullet {
  margin-right: 0;
  list-style: none; }

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

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

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

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

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

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

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

@media print {
  * {
    background: transparent !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #333333;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

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

a.button:hover, a.button:focus {
  text-decoration: none; }

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

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

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

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #888888; }

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

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

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

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

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

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

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

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

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

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

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

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

.input-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .input-group > :first-child {
    border-radius: 0 0 0 0; }
  .input-group > :last-child > * {
    border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #888888;
  background: #dadfe1;
  color: #000000;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .input-group-label:first-child {
    border-left: 0; }
  .input-group-label:last-child {
    border-right: 0; }

.input-group-field {
  border-radius: 0;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  height: auto;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    height: auto;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1rem; }

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

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

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #888888; }
  .fieldset legend {
    margin: 0;
    margin-right: -0.1875rem;
    padding: 0 0.1875rem; }

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

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

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

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

.breadcrumbs {
  margin: 0 0 0.5rem 0;
  list-style: none; }
  .breadcrumbs::before, .breadcrumbs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: right;
    font-size: 14px;
    color: #000000;
    cursor: default; }
    .breadcrumbs li:not(:last-child)::after {
      position: relative;
      margin: 0 0.3rem;
      opacity: 1;
      content: "›";
      color: #281E1E; }
  .breadcrumbs a {
    color: #281E1E; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #888888;
    cursor: not-allowed; }

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

.card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 2rem;
  border: 0 solid #dadfe1;
  border-radius: 0;
  background: #ffffff;
  -webkit-box-shadow: none;
          box-shadow: none;
  overflow: hidden;
  color: #281E1E; }
  .card > :last-child {
    margin-bottom: 0; }

.card-divider {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem;
  background: #dadfe1; }
  .card-divider > :last-child {
    margin-bottom: 0; }

.card-section {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: 1rem; }
  .card-section > :last-child {
    margin-bottom: 0; }

.card-image {
  min-height: 1px; }

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

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.7rem 1rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.simple {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .menu.simple li + li {
      margin-right: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media print, screen and (min-width: 48em) {
    .menu.medium-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.medium-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.medium-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.medium-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.large-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.large-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.large-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  .menu.nested {
    margin-left: 0;
    margin-right: 1rem; }
  .menu.icons a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-left li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg {
      margin-left: 0.25rem; }
  .menu.icon-right li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg {
      margin-right: 0.25rem; }
  .menu.icon-top li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: #ec1a2e;
    color: #ffffff; }
  .menu .active > a {
    background: #ec1a2e;
    color: #ffffff; }
  .menu.align-right {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .menu.align-left li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .menu.align-left li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu.align-left.vertical li {
    display: block;
    text-align: left; }
    .menu.align-left.vertical li .submenu li {
      text-align: left; }
  .menu.align-left .nested {
    margin-left: 1rem;
    margin-right: 0; }
  .menu.align-center li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu.align-center li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.7rem 1rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .menu-centered > .menu li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu-centered > .menu li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }

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

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

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

.media-object {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 47.9375em) {
    .media-object.stack-for-small {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  @media screen and (max-width: 47.9375em) {
    .media-object.stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 0.625rem;
      -webkit-flex-basis: 100%;
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%;
      max-width: 100%; }
      .media-object.stack-for-small .media-object-section img {
        width: 100%; } }

.media-object-section {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }
  .media-object-section:first-child {
    padding-left: 0.625rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-right: 0.625rem; }
  .media-object-section > :last-child {
    margin-bottom: 0; }
  .media-object-section.main-section {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }

.pagination {
  margin-right: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-left: 0.0625rem;
    border-radius: 0;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media print, screen and (min-width: 48em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #000000; }
    .pagination a:hover,
    .pagination button:hover {
      background: #dadfe1; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #ec1a2e;
    color: #ffffff;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #888888;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #000000; }

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

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

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #f2f2f2;
    background-color: #ffffff; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold; }
  thead {
    background: #f9f9f9;
    color: #281E1E; }
  tfoot {
    background: #f2f2f2;
    color: #281E1E; }
  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: right; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f2f2f2; }
  table.unstriped tbody {
    background-color: #ffffff; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f2f2f2;
      background-color: #ffffff; }

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

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

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

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

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

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

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

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #ffffff;
  border-radius: 0;
  -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
  line-height: 0; }

a.thumbnail {
  -webkit-transition: -webkit-box-shadow 200ms ease-out;
  transition: -webkit-box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out, -webkit-box-shadow 200ms ease-out; }
  a.thumbnail:hover, a.thumbnail:focus {
    -webkit-box-shadow: 0 0 6px 1px rgba(236, 26, 46, 0.5);
            box-shadow: 0 0 6px 1px rgba(236, 26, 46, 0.5); }
  a.thumbnail image {
    -webkit-box-shadow: none;
            box-shadow: none; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

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

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

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

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

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

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

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

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

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

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

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0; }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
  -webkit-clip-path: none;
          clip-path: none; }

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

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

.align-right {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

.align-right.vertical.menu > li > a {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-top {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

.align-self-top {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start; }

.align-bottom {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.align-self-bottom {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end; }

.align-middle {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.align-self-middle {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center; }

.align-stretch {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.align-self-stretch {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch; }

.align-center-middle {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center; }

.small-order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.small-order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2; }

.small-order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3; }

.small-order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4; }

.small-order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5; }

.small-order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6; }

@media print, screen and (min-width: 48em) {
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.flex-child-grow {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.flex-child-shrink {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }

.flex-dir-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.flex-dir-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.flex-dir-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media print, screen and (min-width: 48em) {
  .medium-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.font-wide {
  letter-spacing: 0.25rem; }

.font-normal {
  font-weight: normal; }

.font-bold {
  font-weight: bold; }

.font-italic {
  font-style: italic !important; }

.margin-0 {
  margin-top: 0rem !important;
  margin-right: 0rem !important;
  margin-bottom: 0rem !important;
  margin-left: 0rem !important; }

.padding-0 {
  padding-top: 0rem !important;
  padding-right: 0rem !important;
  padding-bottom: 0rem !important;
  padding-left: 0rem !important; }

.margin-top-0 {
  margin-top: 0rem !important; }

.padding-top-0 {
  padding-top: 0rem !important; }

.margin-right-0 {
  margin-right: 0rem !important; }

.padding-right-0 {
  padding-right: 0rem !important; }

.margin-bottom-0 {
  margin-bottom: 0rem !important; }

.padding-bottom-0 {
  padding-bottom: 0rem !important; }

.margin-left-0 {
  margin-left: 0rem !important; }

.padding-left-0 {
  padding-left: 0rem !important; }

.margin-horizontal-0 {
  margin-right: 0rem !important;
  margin-left: 0rem !important; }

.padding-horizontal-0 {
  padding-right: 0rem !important;
  padding-left: 0rem !important; }

.margin-vertical-0 {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important; }

.padding-vertical-0 {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important; }

.margin-1 {
  margin-top: 1rem !important;
  margin-right: 1rem !important;
  margin-bottom: 1rem !important;
  margin-left: 1rem !important; }

.padding-1 {
  padding-top: 1rem !important;
  padding-right: 1rem !important;
  padding-bottom: 1rem !important;
  padding-left: 1rem !important; }

.margin-top-1 {
  margin-top: 1rem !important; }

.padding-top-1 {
  padding-top: 1rem !important; }

.margin-right-1 {
  margin-right: 1rem !important; }

.padding-right-1 {
  padding-right: 1rem !important; }

.margin-bottom-1 {
  margin-bottom: 1rem !important; }

.padding-bottom-1 {
  padding-bottom: 1rem !important; }

.margin-left-1 {
  margin-left: 1rem !important; }

.padding-left-1 {
  padding-left: 1rem !important; }

.margin-horizontal-1 {
  margin-right: 1rem !important;
  margin-left: 1rem !important; }

.padding-horizontal-1 {
  padding-right: 1rem !important;
  padding-left: 1rem !important; }

.margin-vertical-1 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important; }

.padding-vertical-1 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important; }

.margin-2 {
  margin-top: 2rem !important;
  margin-right: 2rem !important;
  margin-bottom: 2rem !important;
  margin-left: 2rem !important; }

.padding-2 {
  padding-top: 2rem !important;
  padding-right: 2rem !important;
  padding-bottom: 2rem !important;
  padding-left: 2rem !important; }

.margin-top-2 {
  margin-top: 2rem !important; }

.padding-top-2 {
  padding-top: 2rem !important; }

.margin-right-2 {
  margin-right: 2rem !important; }

.padding-right-2 {
  padding-right: 2rem !important; }

.margin-bottom-2 {
  margin-bottom: 2rem !important; }

.padding-bottom-2 {
  padding-bottom: 2rem !important; }

.margin-left-2 {
  margin-left: 2rem !important; }

.padding-left-2 {
  padding-left: 2rem !important; }

.margin-horizontal-2 {
  margin-right: 2rem !important;
  margin-left: 2rem !important; }

.padding-horizontal-2 {
  padding-right: 2rem !important;
  padding-left: 2rem !important; }

.margin-vertical-2 {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important; }

.padding-vertical-2 {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important; }

.margin-3 {
  margin-top: 3rem !important;
  margin-right: 3rem !important;
  margin-bottom: 3rem !important;
  margin-left: 3rem !important; }

.padding-3 {
  padding-top: 3rem !important;
  padding-right: 3rem !important;
  padding-bottom: 3rem !important;
  padding-left: 3rem !important; }

.margin-top-3 {
  margin-top: 3rem !important; }

.padding-top-3 {
  padding-top: 3rem !important; }

.margin-right-3 {
  margin-right: 3rem !important; }

.padding-right-3 {
  padding-right: 3rem !important; }

.margin-bottom-3 {
  margin-bottom: 3rem !important; }

.padding-bottom-3 {
  padding-bottom: 3rem !important; }

.margin-left-3 {
  margin-left: 3rem !important; }

.padding-left-3 {
  padding-left: 3rem !important; }

.margin-horizontal-3 {
  margin-right: 3rem !important;
  margin-left: 3rem !important; }

.padding-horizontal-3 {
  padding-right: 3rem !important;
  padding-left: 3rem !important; }

.margin-vertical-3 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important; }

.padding-vertical-3 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important; }

.separator-center {
  text-align: center !important; }
  .separator-center::before, .separator-center::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .separator-center::after {
    clear: both; }
  .separator-center::after {
    position: relative !important;
    width: 3rem;
    border-bottom: 0.125rem solid #ec1a2e;
    margin: 1rem auto 0; }

.separator-left {
  text-align: left !important; }
  .separator-left::before, .separator-left::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .separator-left::after {
    clear: both; }
  .separator-left::after {
    position: relative !important;
    width: 3rem;
    border-bottom: 0.125rem solid #ec1a2e;
    margin: 1rem auto 0;
    margin-left: 0 !important; }

.separator-right {
  text-align: right !important; }
  .separator-right::before, .separator-right::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .separator-right::after {
    clear: both; }
  .separator-right::after {
    position: relative !important;
    width: 3rem;
    border-bottom: 0.125rem solid #ec1a2e;
    margin: 1rem auto 0;
    margin-right: 0 !important; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 24px;
  width: 24px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  border-radius: 50%;
  background: black;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
  z-index: 1; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: black;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 0.75; }
  .slick-prev.slick-disabled,
  .slick-next.slick-disabled {
    background-color: transparent;
    border: 1px solid rgba(172, 172, 172, 0.5); }
    .slick-prev.slick-disabled:before,
    .slick-next.slick-disabled:before {
      color: rgba(172, 172, 172, 0.5);
      opacity: 1; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "icomoon";
    font-size: 14px;
    line-height: 1;
    color: white;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: 8px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: 8px; }
  .slick-prev:before {
    content: ""; }
    [dir="rtl"] .slick-prev:before {
      content: ""; }

.slick-next {
  right: 8px; }
  [dir="rtl"] .slick-next {
    left: 8px;
    right: auto; }
  .slick-next:before {
    content: ""; }
    [dir="rtl"] .slick-next:before {
      content: ""; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 0.75; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "icomoon";
        font-size: 20px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 1; }

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

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

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

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

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

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

.container-divider-right {
  border-bottom: 1px solid #dadfe1; }
  @media print, screen and (min-width: 48em) {
    .container-divider-right {
      border-right: 1px solid #dadfe1;
      border-bottom: 0; } }

.avatar {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  min-width: 40px; }
  .avatar.avatar-small {
    height: 25px;
    width: 25px;
    border-radius: 50%; }
  .avatar.avatar-large {
    height: 100px;
    width: 100px;
    border-radius: 50%; }

.mb0 {
  margin-bottom: 0rem !important; }

.mb1 {
  margin-bottom: 1rem !important; }

.mb2 {
  margin-bottom: 2rem !important; }

.mb3 {
  margin-bottom: 3rem !important; }

.type-sidelines {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: left; }
  .type-sidelines span {
    display: inline-block;
    position: relative;
    padding-right: 0.5em;
    padding-left: 0; }
    .type-sidelines span:before, .type-sidelines span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 9999px;
      top: 50%;
      border-top-style: solid;
      border-top-width: 2px;
      margin-top: -1px; }
    .type-sidelines span:before {
      right: 100%; }
    .type-sidelines span:after {
      left: 100%; }

.type-sidelines-dotted {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: left; }
  .type-sidelines-dotted span {
    display: inline-block;
    position: relative;
    padding-right: 0.5em;
    padding-left: 0; }
    .type-sidelines-dotted span:before, .type-sidelines-dotted span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 9999px;
      top: 50%;
      border-top-style: dotted;
      border-top-width: 2px;
      margin-top: -1px; }
    .type-sidelines-dotted span:before {
      right: 100%; }
    .type-sidelines-dotted span:after {
      left: 100%; }

.double {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: center; }
  .double span {
    display: inline-block;
    position: relative;
    padding-right: 0.5em;
    padding-left: 0.5em; }
    .double span:before, .double span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 9999px;
      top: 50%;
      border-top-style: solid;
      border-top-width: 2px;
      border-bottom-style: solid;
      border-bottom-width: 2px;
      height: 0.5em;
      margin-top: -0.25em; }
    .double span:before {
      right: 100%; }
    .double span:after {
      left: 100%; }

.custom {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: center; }
  .custom span {
    display: inline-block;
    position: relative;
    padding-right: 20px;
    padding-left: 20px; }
    .custom span:before, .custom span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 100%;
      top: 50%;
      border-top-style: dotted;
      border-top-width: 4px;
      border-top-color: #2980b9;
      margin-top: -2px; }
    .custom span:before {
      right: 100%; }
    .custom span:after {
      left: 100%; }

.custom-2 {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-align: center; }
  .custom-2 span {
    display: inline-block;
    position: relative;
    padding-right: 0.5em;
    padding-left: 0.5em; }
    .custom-2 span:before, .custom-2 span:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 9999px;
      top: 50%;
      border-top-style: solid;
      border-top-width: 4px;
      border-top-color: #27ae60;
      margin-top: -2px; }
    .custom-2 span:before {
      right: 100%; }
    .custom-2 span:after {
      left: 100%; }

.thing {
  z-index: 4000; }

.clearfix::before, .clearfix::after {
  display: table;
  content: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.clearfix::after {
  clear: both; }

.nav-container > ul {
  margin: 0;
  font-family: "DroidArabicKufi";
  font-size: 13px;
  font-weight: 500; }
  [dir="rtl"] .nav-container > ul {
    font-family: "DroidArabicKufi";
    font-size: 15px;
    font-weight: 800; }
  .urdu-theme .nav-container > ul {
    font-size: 21px; }
  .nav-container > ul > li.active > a:hover {
    color: white; }
  @media print, screen and (min-width: 64em) {
    .nav-container > ul > li:hover {
      background-color: #000000; } }
  @media print, screen and (min-width: 64em) {
    .nav-container > ul > li:hover > a {
      color: #ffffff; } }
  .nav-container > ul > li:hover > ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    visibility: visible;
    opacity: 1;
    -webkit-transition-delay: 0s;
    transition-delay: 0s; }
  .nav-container > ul > li:hover .sub-mega-menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    visibility: visible;
    opacity: 1;
    -webkit-transition-delay: 0s;
    transition-delay: 0s; }
  .nav-container > ul > li.active > a:after {
    display: block; }
  .nav-container > ul > li > a {
    padding: 11px 8px 11px 16px;
    text-transform: uppercase;
    color: #281E1E;
    display: block;
    white-space: nowrap;
    position: relative; }
    [dir="rtl"] .nav-container > ul > li > a {
      padding: 12px 16px 12px; }
    @media screen and (max-width: 47.9375em) {
      .nav-container > ul > li > a:hover, .nav-container > ul > li > a.active {
        border-bottom: 4px solid #ec1a2e; } }
    @media print, screen and (min-width: 48em) {
      .nav-container > ul > li > a:after {
        content: " ";
        height: 2px;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        background-color: #ec1a2e;
        display: none; } }
    .nav-container > ul > li > a:hover {
      color: #ec1a2e; }

.nav-container > ul > li > ul,
.nav-container > ul li > .sub-mega-menu {
  margin: 0;
  position: absolute;
  top: 100%;
  list-style: none;
  background-color: #000000;
  z-index: 200;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media screen and (max-width: 47.9375em) {
    .nav-container > ul > li > ul,
    .nav-container > ul li > .sub-mega-menu {
      display: none; } }
  .nav-container > ul > li > ul li a,
  .nav-container > ul li > .sub-mega-menu li a {
    display: block;
    color: #fff;
    position: relative; }
    .nav-container > ul > li > ul li a:after,
    .nav-container > ul li > .sub-mega-menu li a:after {
      content: " ";
      height: 2px;
      position: absolute;
      bottom: -1px;
      left: 0;
      width: 100%;
      background-color: #ec1a2e;
      display: none; }
    .nav-container > ul > li > ul li a:hover,
    .nav-container > ul li > .sub-mega-menu li a:hover {
      color: #ec1a2e; }
      .nav-container > ul > li > ul li a:hover:after,
      .nav-container > ul li > .sub-mega-menu li a:hover:after {
        display: block; }

.nav-container > ul > li > ul li {
  border-bottom: 1px solid #474747; }
  .nav-container > ul > li > ul li a {
    padding: 16px 22px;
    font-size: 14px;
    line-height: 16px; }

.nav-container > ul li > .sub-mega-menu li a {
  padding: 12px 0 10px 10px;
  font-size: 13px;
  line-height: 18px; }

.sub-mega-menu {
  display: none;
  padding: 20px; }

.menu-visible {
  background: #000000;
  padding-top: 0 !important; }
  @media print, screen and (min-width: 64em) {
    .menu-visible .ad-block-header {
      background-color: #000000; } }

.menu-visible #main-header {
  position: relative;
  height: 100%; }

.menu-visible #nav-panel {
  display: block; }

.menu-visible .subheader-block ul li.edition, .menu-visible .subheader-block ul li.search {
  display: block; }

.menu-visible main,
.menu-visible .main-header-inner,
.menu-visible #main-footer {
  display: none; }

.nav-panel-wrap {
  background-color: #000000;
  color: #ffffff; }
  @media screen and (max-width: 47.9375em) {
    .menu-visible .nav-panel-wrap {
      background-color: #ffffff;
      color: #000000;
      z-index: 9999999;
      position: relative; } }

#nav-panel {
  display: none;
  padding: 1rem; }
  @media print, screen and (min-width: 64em) {
    #nav-panel {
      width: 1100px;
      margin: auto; } }

.nav-panel ul {
  list-style: none;
  margin: 0;
  font-family: "DroidArabicKufi"; }
  @media screen and (max-width: 47.9375em) {
    .nav-panel ul {
      margin: 0 -1rem; } }
  @media screen and (max-width: 47.9375em) {
    .nav-panel ul ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 0 35px;
      -webkit-columns: 2;
      -moz-columns: 2;
      columns: 2;
      background-color: #e7e7e7; } }
  @media screen and (max-width: 47.9375em) {
    .nav-panel ul ul li:not(:last-child) {
      border-bottom: 1px solid #888888; } }
  .nav-panel ul ul li:not(:last-child) a {
    color: #000000; }

.nav-panel ul.topics > li:not(.expanded) {
  border-bottom: 1px solid #000000; }

.nav-panel ul.topics > li.expanded {
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  max-height: 600px;
  padding-top: 0;
  color: #ffffff; }
  .nav-panel ul.topics > li.expanded > a {
    background-color: #000000;
    color: #ffffff;
    border-bottom: 1px solid #cccccc;
    border-right: 2px solid #ec1a2e; }
    .nav-panel ul.topics > li.expanded > a:hover {
      color: #ec1a2e; }
    .menu-visible .nav-panel ul.topics > li.expanded > a {
      color: #ffffff; }
      .menu-visible .nav-panel ul.topics > li.expanded > a:hover {
        color: #ec1a2e; }

.nav-panel ul.topics > li {
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out; }
  .nav-panel ul.topics > li > ul li {
    position: relative; }
    .nav-panel ul.topics > li > ul li:before {
      position: absolute;
      font-family: "icomoon";
      top: 10px;
      color: #000000; }
      [dir="rtl"] .nav-panel ul.topics > li > ul li:before {
        left: 24px;
        content: ""; }
      [dir="ltr"] .nav-panel ul.topics > li > ul li:before {
        right: 0;
        content: ""; }
  .nav-panel ul.topics > li > ul a {
    color: #ffffff;
    display: block;
    font-weight: 700;
    font-size: 14px;
    line-height: 22px;
    padding: 6px 0; }
    [dir="rtl"] .nav-panel ul.topics > li > ul a {
      font-weight: 400; }
    @media screen and (max-width: 47.9375em) {
      .nav-panel ul.topics > li > ul a {
        padding: 13px 0;
        color: #000000; } }
    @media print, screen and (min-width: 48em) {
      .nav-panel ul.topics > li > ul a {
        font-size: 14px;
        font-weight: 300; } }

.nav-panel form.search {
  display: none; }

@media print, screen and (min-width: 64em) {
  .nav-panel .topics .toggle {
    display: none; } }

.nav-panel .topics .expanded .toggle span {
  -ms-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg); }

.nav-panel ul.topics > li {
  max-height: 40px;
  overflow: hidden;
  position: relative;
  border-bottom: 1px solid #ffffff; }
  .nav-panel ul.topics > li .toggle {
    content: "\e907";
    position: absolute;
    height: 100%;
    top: 0;
    left: 2px;
    width: 40%;
    text-align: left;
    cursor: pointer;
    z-index: 1;
    padding-right: 20px;
    padding-left: 20px; }
    .nav-panel ul.topics > li .toggle i {
      font-size: 1rem;
      line-height: 40px; }
    .nav-panel ul.topics > li .toggle:hover {
      color: #ec1a2e; }

.nav-panel ul.topics > li > a {
  color: #ffffff;
  display: block;
  font-weight: 500;
  font-size: 14px;
  line-height: 22px;
  padding: 9px 20px;
  text-transform: uppercase; }
  [dir="rtl"] .nav-panel ul.topics > li > a {
    font-weight: 800; }
  @media screen and (min-width: 48em) {
    .nav-panel ul.topics > li > a {
      font-size: 13px;
      padding: 9px 0; } }
  @media screen and (max-width: 47.9375em) {
    .menu-visible .nav-panel ul.topics > li > a {
      color: #000000; } }

.nav-panel ul.topics > li > a:hover {
  color: #ec1a2e; }

/*@media only screen and (max-width: 619px) {
  .nav-panel ul.topics > li > ul {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
  }
}

@media only screen and (min-width: 620px) and (max-width: 929px) {
  .nav-panel ul.topics > li > ul {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
  }
}*/
.nav-panel ul.topics > li > ul a:hover {
  color: #ec1a2e; }

.nav-panel .socials-area {
  font-size: 18px;
  line-height: 22px;
  padding: 13px 0; }

.nav-panel .socials-area li {
  display: inline-block;
  margin-left: 5px;
  margin-bottom: 10px; }

.nav-panel .socials-area h6 {
  margin-bottom: 0;
  margin-left: 10px;
  display: inline-block;
  vertical-align: middle;
  font-weight: 400;
  font-size: 1.125rem; }

.nav-panel .socials-area .socials-btns {
  display: inline-block;
  vertical-align: middle; }

.nav-panel .socials-area a:hover {
  background: #ec1a2e; }

.nav-panel .secButtons {
  list-style: none;
  margin-top: 15px;
  text-align: right; }

.nav-panel .secButtons li {
  display: inline-block;
  margin-left: 5px;
  margin-bottom: 10px; }

.subscribe-field {
  display: none; }
  @media screen and (max-width: 39.375em) {
    .subscribe-field {
      display: block;
      margin-bottom: 16px;
      font-size: 14px;
      font-weight: 500;
      text-transform: uppercase;
      font-family: "DroidArabicKufi"; }
      .subscribe-field strong {
        font-weight: 700; }
      .subscribe-field a {
        color: #281E1E; }
        .subscribe-field a:hover {
          color: #ec1a2e; } }

@media screen and (min-width: 48em) {
  .nav-panel > ul:after,
  .nav-panel > ul:before {
    content: "";
    display: table; }
  .nav-panel > ul:after {
    clear: both; }
  .nav-panel .socials-area {
    border-top: 1px solid #ffffff;
    color: #000; }
  .nav-panel .secButtons {
    text-align: left; }
  .nav-panel ul.topics > li {
    max-height: none;
    padding-bottom: 20px;
    float: right;
    width: 154px;
    margin: 0 20px;
    border: none; }
  .nav-panel ul.topics > li > a {
    border-bottom: 1px solid #ffffff;
    margin-bottom: 10px; }
  .nav-panel ul.topics > li:nth-child(6) {
    clear: right; } }

#notfound {
  position: relative;
  min-height: 450px; }

#notfound .notfound {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.notfound {
  max-width: 710px;
  width: 100%;
  padding-right: 190px;
  line-height: 1.4;
  font-family: "DroidArabicKufi"; }

.notfound .input-group {
  margin-bottom: 0; }

.notfound .notfound-404 {
  position: absolute;
  right: 0;
  top: 0;
  width: 150px;
  height: 150px; }

.notfound .notfound-404 h1 {
  color: #ec1a2e;
  font-size: 150px;
  margin: 0px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%; }

.notfound h2 {
  color: #292929;
  font-size: 28px;
  text-transform: uppercase;
  margin-top: 0; }

.notfound p {
  font-size: 1rem;
  margin-top: 0;
  margin-bottom: 15px;
  color: #333; }

.notfound a {
  font-size: 14px;
  text-decoration: none;
  text-transform: uppercase;
  background: #fff;
  display: inline-block;
  padding: 15px 30px;
  border-radius: 40px;
  color: #292929;
  -webkit-box-shadow: 0px 4px 15px -5px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 4px 15px -5px rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.2s all;
  transition: 0.2s all; }

.notfound a:hover {
  color: #fff;
  background-color: #ec1a2e; }

@media screen and (max-width: 47.9375em) {
  .notfound {
    text-align: center; }
  .notfound .notfound-404 {
    position: relative;
    width: 100%;
    margin-bottom: 15px; }
  .notfound {
    padding-right: 15px;
    padding-left: 15px; } }

body.shows-video {
  background-color: #000000;
  color: #ffffff; }
  body.shows-video a {
    color: #ffffff; }
  body.shows-video .section-title {
    color: #ffffff; }
  body.shows-video .logo-default {
    display: none; }
  body.shows-video .logo-white {
    display: block; }
  body.shows-video header#main-header {
    background-color: #000000; }
    body.shows-video header#main-header .nav-container > ul > li > a {
      color: #ffffff; }
      body.shows-video header#main-header .nav-container > ul > li > a:hover {
        color: #ec1a2e; }
  body.shows-video .ad-block-header {
    background-color: #000000; }

.shows {
  background-color: #000000;
  color: #ffffff; }
  .shows__banner {
    position: relative;
    height: 600px; }
    .shows__banner-img {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }
      .shows__banner-img img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover; }
    .shows__banner-info {
      position: absolute;
      z-index: 4;
      margin-top: 40px; }
      @media print, screen and (min-width: 48em) {
        .shows__banner-info {
          width: 40%; } }
    .shows__banner-title {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 20px;
      color: #ffffff; }
      .shows__banner-title h1 {
        font-size: 60px;
        line-height: 65px;
        font-weight: bold; }
      .shows__banner-title span {
        font-size: 90px;
        font-weight: bold;
        position: relative;
        padding-right: 20px;
        margin-right: 20px; }
        .shows__banner-title span:before {
          content: "";
          position: absolute;
          top: 0;
          bottom: 0;
          right: 0;
          background-color: #ffffff;
          width: 4px;
          height: 90%; }
    .shows__banner-desc p {
      color: #ffffff; }
  .shows__intro {
    padding: 30px;
    text-align: center; }
    @media screen and (max-width: 47.9375em) {
      .shows__intro {
        padding: 20px; } }
    .shows__intro p {
      font-size: 22px;
      font-weight: bold;
      color: #ffffff; }
      @media screen and (max-width: 47.9375em) {
        .shows__intro p {
          font-size: 18px; } }
  .shows .duration {
    color: #ffffff;
    margin-bottom: 0;
    position: absolute;
    bottom: 0.5rem;
    left: 0.5rem;
    font-size: 11px;
    background-color: #000000;
    padding: 4px 4px 3px;
    line-height: 1; }

.shows-featured__page-title {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 30px; }
  .shows-featured__page-title:after {
    display: block;
    content: "";
    position: absolute;
    width: 100%;
    top: 50%;
    height: 1px;
    background-color: rgba(179, 179, 179, 0.5); }
  .shows-featured__page-title h2 {
    font-size: 30px;
    padding: 0 10px;
    color: #ffffff;
    font-weight: bold;
    background-color: #000000;
    position: relative;
    z-index: 1;
    display: inline-block;
    margin-bottom: 0; }

.shows-featured .article-item-title h2 a {
  color: #ffffff; }

.shows-featured .article-item.media-video .article-item-img:before {
  background: rgba(236, 26, 46, 0.8);
  border-radius: 50%;
  cursor: pointer;
  text-align: center;
  content: "\e90b";
  position: absolute;
  font-family: "icomoon";
  width: 32px;
  height: 32px;
  line-height: 32px;
  font-size: 1.25rem;
  z-index: 1;
  top: -16px;
  text-indent: 3px;
  z-index: 4; }
  [dir="rtl"] .shows-featured .article-item.media-video .article-item-img:before {
    text-indent: -3px; }

.shows-featured .article-item.media-video .article-item-img a:before {
  background-color: black; }

.shows-featured .article-item.article-hero.media-video .article-item-img {
  height: auto; }
  .shows-featured .article-item.article-hero.media-video .article-item-img:before {
    left: 50%;
    top: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    font-size: 2rem;
    width: 56px;
    height: 56px;
    line-height: 56px; }

.shows-items {
  margin-top: 30px; }
  .shows-items .shows-item .article-item-title a {
    color: #ffffff;
    font-weight: normal; }
  .shows-items .shows-item .article-item-img:before {
    width: 23px;
    height: 23px;
    line-height: 23px;
    font-size: 16px;
    background: rgba(236, 26, 46, 0.5);
    color: #ffffff;
    border-radius: 50%;
    cursor: pointer;
    text-align: center;
    content: "\e90b";
    position: absolute;
    font-family: "icomoon";
    z-index: 1;
    bottom: 0;
    text-indent: -3px;
    margin: 0.5rem; }
  .shows-items__cta {
    margin-top: 30px;
    text-align: center; }
    .shows-items__cta .button {
      color: #ffffff; }

.shows-video {
  margin-top: 30px; }
  .shows-video__info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 20px; }
    .shows-video__info-count {
      font-size: 13px; }
  .shows-video__current .article-item-media {
    position: relative;
    min-height: 225px; }
    @media print, screen and (min-width: 48em) {
      .shows-video__current .article-item-media {
        width: 100%;
        min-height: 555px; } }
    .shows-video__current .article-item-media img {
      position: absolute;
      top: 0; }
  .shows-video__loader {
    border: 3px solid #e0e0e0;
    border-top: 3px solid #686868;
    border-radius: 50%;
    width: 70px;
    height: 70px;
    -webkit-animation: spin 2s linear infinite;
            animation: spin 2s linear infinite;
    left: 46%;
    top: 43%;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    position: absolute;
    z-index: 5; }
    @media screen and (max-width: 47.9375em) {
      .shows-video__loader {
        width: 30px;
        height: 30px; } }

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

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

@media screen and (max-width: 47.9375em) {
  .main-header-inner {
    position: relative;
    height: 40px; } }

@media screen and (max-width: 47.9375em) {
  .main-header__navbar {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 30px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; } }

@media print, screen and (min-width: 64em) {
  .main-header__navbar {
    width: 1250px;
    padding: 0 20px;
    margin: 0 auto; } }

@media screen and (max-width: 47.9375em) {
  .main-header__navbar .nav-container {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 15px;
    width: 100%;
    overflow-x: auto;
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */ }
    .main-header__navbar .nav-container::-webkit-scrollbar {
      display: none; } }

@media screen and (max-width: 47.9375em) {
  .main-header__navbar .nav-container > .menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; }
    .main-header__navbar .nav-container > .menu li {
      display: block;
      position: relative; } }

@media screen and (max-width: 47.9375em) {
  .search-block {
    display: none; } }

.search-form-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .search-form-block input[type="text"] {
    border-top: 0.5px solid #888;
    border-right: 0.5px solid #888;
    border-bottom: 0.5px solid #888;
    border-left: 0;
    margin-bottom: 0;
    width: 260px;
    height: 34px; }
  .search-form-block input[type="submit"] {
    font-family: "icomoon";
    font-size: 0.75rem;
    width: 34px;
    height: 34px;
    border: none;
    background-color: #ec1a2e;
    color: #ffffff;
    display: block;
    outline: 0;
    bottom: 0;
    cursor: pointer; }

#main-footer {
  margin: 2rem 0 0;
  padding: 24px;
  color: #281E1E;
  background: black;
  color: white; }
  @media screen and (max-width: 63.9375em) {
    [dir="rtl"] #main-footer {
      padding-bottom: 98px; } }
  .eng-theme #main-footer,
  .turkish-theme #main-footer {
    font-size: 14px; }
  #main-footer h6 {
    font-family: "DroidArabicKufi";
    font-weight: 500;
    font-size: inherit;
    text-transform: uppercase; }
    [dir="rtl"] #main-footer h6 {
      font-weight: 400;
      font-size: 14px;
      margin-bottom: 16px; }
  #main-footer ul.menu.vertical {
    font-family: "DroidArabicKufi";
    font-weight: 300;
    list-style: none;
    margin-right: 0;
    margin-bottom: 1rem; }
    [dir="rtl"] #main-footer ul.menu.vertical {
      font-weight: 400; }
    #main-footer ul.menu.vertical a {
      display: block;
      color: #ffffff;
      padding: 6px 0;
      line-height: 1.1; }
      #main-footer ul.menu.vertical a:hover {
        color: #ec1a2e; }
  [dir="rtl"] #main-footer .social-btn {
    width: 30px;
    height: 30px; }
    [dir="rtl"] #main-footer .social-btn i {
      font-size: 14px; }

.main-footer-before {
  margin-bottom: 1.5rem; }

@media print, screen and (min-width: 64em) {
  [dir="rtl"] .main-footer-inner__grid > .cell:not(:first-child):not(:last-child) {
    border-left: 0.5px solid #e7e7e7; } }

.main-footer-inner > ul {
  list-style: none;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%; }
  @media (min-width: 768px) {
    .main-footer-inner > ul {
      grid-template-columns: 1fr 1fr 1fr 1fr; } }
  @media (min-width: 1000px) {
    .main-footer-inner > ul {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  .main-footer-inner > ul > li {
    width: 100%;
    margin-bottom: 20px; }
    .main-footer-inner > ul > li:nth-of-type(4) {
      -webkit-box-ordinal-group: 6;
      -webkit-order: 5;
          -ms-flex-order: 5;
              order: 5; }
    @media (min-width: 768px) {
      .main-footer-inner > ul > li {
        grid-row: span 2;
        width: auto; } }
    @media (min-width: 768px) {
      .main-footer-inner > ul > li:nth-of-type(2), .main-footer-inner > ul > li:nth-of-type(3) {
        grid-row: span 1;
        -ms-grid-row-span: 1; }
      .main-footer-inner > ul > li:nth-of-type(3) {
        -webkit-box-ordinal-group: 6;
        -webkit-order: 5;
            -ms-flex-order: 5;
                order: 5; }
      .main-footer-inner > ul > li:nth-of-type(4) {
        -webkit-box-ordinal-group: 1;
        -webkit-order: 0;
            -ms-flex-order: 0;
                order: 0; } }
    @media (min-width: 1000px) {
      .main-footer-inner > ul > li {
        width: 50%;
        margin-bottom: 20px;
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 145px;
            -ms-flex: 1 0 145px;
                flex: 1 0 145px; }
        .main-footer-inner > ul > li:nth-of-type(3) {
          -webkit-box-ordinal-group: 1;
          -webkit-order: 0;
              -ms-flex-order: 0;
                  order: 0; } }
    .main-footer-inner > ul > li:first-of-type {
      grid-row: span 2;
      -ms-grid-row-span: 2; }

.main-footer-after {
  padding: 0.5rem 0;
  line-height: 1.5; }

@media screen and (max-width: 63.9375em) {
  .logo-footer {
    margin-bottom: 16px; } }

.logo-footer img {
  height: 80px; }

li .logo-footer {
  margin-bottom: 1.5rem; }

.footer-links {
  margin-right: 0;
  margin-bottom: 2rem;
  margin-top: -7px;
  list-style: none;
  clear: right;
  -webkit-columns: 2;
  -moz-columns: 2;
  columns: 2;
  -webkit-column-gap: 0;
  -moz-column-gap: 0;
  column-gap: 0; }
  @media screen and (max-width: 63.9375em) {
    .footer-links {
      padding-top: 2rem; } }
  .footer-links a {
    font-size: 14px;
    line-height: 32px;
    display: block;
    color: #281E1E; }
    .footer-links a:hover {
      color: #ec1a2e; }
  @media only screen and (min-width: 450px) {
    .footer-links {
      -webkit-columns: 3;
      -moz-columns: 3;
      columns: 3;
      -webkit-column-gap: 20px;
      -moz-column-gap: 20px;
      column-gap: 20px; } }
  @media print, screen and (min-width: 48em) {
    .footer-links {
      clear: none;
      -webkit-columns: 2;
      -moz-columns: 2;
      columns: 2; } }
  @media print, screen and (min-width: 64em) {
    .footer-links {
      float: right;
      width: auto;
      clear: none;
      -webkit-columns: 3;
      -moz-columns: 3;
      columns: 3;
      -webkit-column-gap: 40px;
      -moz-column-gap: 40px;
      column-gap: 40px; } }

.footer-menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
  position: relative; }
  @media screen and (max-width: 63.9375em) {
    .footer-menu {
      margin-top: 36px;
      padding-top: 12px; }
      [dir="rtl"] .footer-menu {
        gap: 16px; } }
  @media screen and (max-width: 63.9375em) {
    .footer-menu:before {
      content: "";
      background-color: #e7e7e7;
      height: 0.5px;
      width: 50%;
      position: absolute;
      top: 0; } }
  .footer-menu a {
    font-size: 14px;
    line-height: 22px;
    display: block;
    color: #ffffff; }
    @media screen and (max-width: 63.9375em) {
      [dir="rtl"] .footer-menu a {
        padding-top: 0;
        padding-bottom: 0; } }
    .footer-menu a:hover {
      color: #ec1a2e; }

.copyright {
  text-align: center;
  padding: 0 1rem;
  font-size: 14px;
  color: #888888;
  margin-top: 40px; }
  @media screen and (max-width: 63.9375em) {
    .copyright {
      text-align: right; } }
  @media print, screen and (min-width: 64em) {
    .copyright {
      margin-top: 89px; } }

.footer-extra-links {
  font-size: 12px; }
  .footer-extra-links a {
    padding: 0 0.75rem;
    color: #ffffff;
    border-left: 1px solid #ffffff; }
    .footer-extra-links a:hover {
      text-decoration: underline; }

@media only screen {
  .no-spacer {
    margin: 0 !important; }
  .no-top-spacer {
    margin-top: 0 !important;
    padding-top: 0 !important; }
  .no-bottom-spacer {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important; }
  .no-left-spacer {
    margin-left: 0 !important;
    padding-left: 0 !important; }
  .no-right-spacer {
    margin-right: 0 !important;
    padding-right: 0 !important; }
  .top-spacer--xl {
    margin-top: 3rem !important; }
  .top-spacer--l {
    margin-top: 2.5rem !important; }
  .top-spacer--m {
    margin-top: 2rem !important; }
  .top-spacer {
    margin-top: 1.5rem !important; }
  .top-spacer--s {
    margin-top: 1rem !important; }
  .top-spacer--xs {
    margin-top: 0.5rem !important; }
  .bottom-spacer--xl {
    margin-bottom: 3rem !important; }
  .bottom-spacer--l {
    margin-bottom: 2.5rem !important; }
  .bottom-spacer--m {
    margin-bottom: 2rem !important; }
  .bottom-spacer {
    margin-bottom: 1.5rem !important; }
  .bottom-spacer--s {
    margin-bottom: 16px !important; }
  .bottom-spacer--xs {
    margin-bottom: 0.5rem !important; } }

.small-up-1 .column:last-child:last-child:last-child, .small-up-1 .columns:last-child:last-child:last-child,
.small-up-1 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-2 .column:last-child:last-child:last-child, .small-up-2 .columns:last-child:last-child:last-child,
.small-up-2 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-3 .column:last-child:last-child:last-child, .small-up-3 .columns:last-child:last-child:last-child,
.small-up-3 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-4 .column:last-child:last-child:last-child, .small-up-4 .columns:last-child:last-child:last-child,
.small-up-4 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-5 .column:last-child:last-child:last-child, .small-up-5 .columns:last-child:last-child:last-child,
.small-up-5 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-6 .column:last-child:last-child:last-child, .small-up-6 .columns:last-child:last-child:last-child,
.small-up-6 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-7 .column:last-child:last-child:last-child, .small-up-7 .columns:last-child:last-child:last-child,
.small-up-7 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-8 .column:last-child:last-child:last-child, .small-up-8 .columns:last-child:last-child:last-child,
.small-up-8 .columns:last-child:last-child:last-child {
  float: right; }

@media print, screen and (min-width: 48em) {
  .medium-up-1 .column:last-child:last-child:last-child, .medium-up-1 .columns:last-child:last-child:last-child,
  .medium-up-1 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-2 .column:last-child:last-child:last-child, .medium-up-2 .columns:last-child:last-child:last-child,
  .medium-up-2 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-3 .column:last-child:last-child:last-child, .medium-up-3 .columns:last-child:last-child:last-child,
  .medium-up-3 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-4 .column:last-child:last-child:last-child, .medium-up-4 .columns:last-child:last-child:last-child,
  .medium-up-4 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-5 .column:last-child:last-child:last-child, .medium-up-5 .columns:last-child:last-child:last-child,
  .medium-up-5 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-6 .column:last-child:last-child:last-child, .medium-up-6 .columns:last-child:last-child:last-child,
  .medium-up-6 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-7 .column:last-child:last-child:last-child, .medium-up-7 .columns:last-child:last-child:last-child,
  .medium-up-7 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-8 .column:last-child:last-child:last-child, .medium-up-8 .columns:last-child:last-child:last-child,
  .medium-up-8 .columns:last-child:last-child:last-child {
    float: right; } }

@media print, screen and (min-width: 64em) {
  .large-up-1 .column:last-child:last-child:last-child, .large-up-1 .columns:last-child:last-child:last-child,
  .large-up-1 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-2 .column:last-child:last-child:last-child, .large-up-2 .columns:last-child:last-child:last-child,
  .large-up-2 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-3 .column:last-child:last-child:last-child, .large-up-3 .columns:last-child:last-child:last-child,
  .large-up-3 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-4 .column:last-child:last-child:last-child, .large-up-4 .columns:last-child:last-child:last-child,
  .large-up-4 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-5 .column:last-child:last-child:last-child, .large-up-5 .columns:last-child:last-child:last-child,
  .large-up-5 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-6 .column:last-child:last-child:last-child, .large-up-6 .columns:last-child:last-child:last-child,
  .large-up-6 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-7 .column:last-child:last-child:last-child, .large-up-7 .columns:last-child:last-child:last-child,
  .large-up-7 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-8 .column:last-child:last-child:last-child, .large-up-8 .columns:last-child:last-child:last-child,
  .large-up-8 .columns:last-child:last-child:last-child {
    float: right; } }

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding-top: 69px; }
  @media print, screen and (min-width: 64em) {
    body {
      padding-top: 115px; } }
  [dir="rtl"] body {
    padding-top: 0; }
  body.persian-simple {
    padding: 0; }

.card.card-item.card-podcast {
  height: calc(100% - 2rem); }

.gutters-1x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  .gutters-1x > .cell {
    padding-right: 0.625rem;
    padding-left: 0.625rem; }

.gutters-2x {
  margin-right: -1.25rem;
  margin-left: -1.25rem; }
  .gutters-2x > .cell {
    padding-right: 1.25rem;
    padding-left: 1.25rem; }

.gutters-margin-1x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  .gutters-margin-1x .cell {
    margin-right: 0.625rem;
    margin-left: 0.625rem; }

.gutters-margin-2x .cell {
  margin-right: 1.25rem;
  margin-left: 1.25rem; }

/*@include breakpoint(large) {
  [dir="rtl"] {
    .large-uncentered, .large-push-0, .large-pull-0 {
      float: $opposite-direction;
      margin-right: 0;
      margin-left: 0;
      position: static;
    }
  }
}*/
.vertical-center {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.center-element {
  position: absolute;
  right: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.round {
  border-radius: 1000px; }

.use-loader {
  height: 360px;
  overflow: hidden;
  background: url(../img/ajax-loader.gif) no-repeat center center transparent; }
  .use-loader > div {
    opacity: 0;
    visibility: hidden;
    height: 400px; }

.use-loader.slick-initialized.slick-loaded {
  background: none;
  height: auto;
  overflow: visible; }
  .use-loader.slick-initialized.slick-loaded > div {
    height: auto; }
  .use-loader.slick-initialized.slick-loaded.slider-nav {
    background: #000000; }

.use-loader.slick-initialized.slick-loaded .slick-list,
.use-loader.slick-initialized.slick-loaded button {
  opacity: 1;
  visibility: visible;
  -webkit-transition: all 0.25s ease-in;
  transition: all 0.25s ease-in; }

.round {
  border-radius: 1000px;
  overflow: hidden; }

/*
.input-group.with-radius > *:first-child {
  border-radius: 0 5px 5px 0;
}

.input-group.with-radius > *:last-child > * {
  border-radius: 5px 0 0 5px;
}
*/
.show-for-printable-area {
  display: none; }

input.radius,
.input-group > input:first-child {
  border-radius: 4px; }

.search-form input.input-group-field {
  border-radius: 4px !important; }

textarea {
  height: 10rem; }

.arial-heading {
  font-family: Arial, sans-serif; }

.font-primary {
  font-family: "DroidArabicKufi"; }

.font-secondary {
  font-family: "DroidArabicKufi"; }

a {
  -webkit-transition: color 0.25s ease 0s, background-color 0.25s ease 0s, opacity 0.25s ease 0s;
  transition: color 0.25s ease 0s, background-color 0.25s ease 0s, opacity 0.25s ease 0s; }

h1,
h2,
h3,
h4 {
  line-height: 1.2; }
  [dir="rtl"] h1, [dir="rtl"]
  h2, [dir="rtl"]
  h3, [dir="rtl"]
  h4 {
    line-height: 1.4; }
  .urdu-theme h1, .urdu-theme
  h2, .urdu-theme
  h3, .urdu-theme
  h4 {
    line-height: 1.2; }

/*
.off-canvas {
  height: 100%;
}

.js-off-canvas-exit {
  z-index: 10;
}
*/
/*[dir="rtl"] .close-button {
  left: auto;
  right: 1rem;
}*/
/*.placeholder {
  font-size: 0.875rem;
  color: #aaa;
}*/
p {
  font-size: 16px; }

figure {
  margin: 0 0 0.5rem; }
  figure.round {
    overflow: hidden; }

.leaderboard-ad {
  font-size: 0;
  line-height: 0;
  margin: 0;
  padding: 0; }

button.radius,
.button.radius {
  border-radius: 5px; }

button.secondary:hover,
.button.secondary:hover {
  background-color: #ec1a2e; }

button.gray,
.button.gray {
  background-color: #d6d6d6;
  color: #000000; }
  button.gray:hover,
  .button.gray:hover {
    background-color: #281E1E;
    color: #ffffff; }

/* ------ navigation, panel and sticky header ------ START ------ */
#sticky-header {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: -100px;
  width: 100%;
  z-index: 100;
  -webkit-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
  background-color: #ffffff; }
  #sticky-header.stuck-header {
    visibility: visible;
    opacity: 1;
    top: 0;
    display: block;
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 2px;
            box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 2px;
    -webkit-box-shadow: 0 1px 10px 0 #cccccc;
            box-shadow: 0 1px 10px 0 #cccccc;
    /*~ .canvas-panel {
      top: 40px;
    }*/ }

.sticky-header-spacer {
  display: none;
  height: auto;
  visibility: hidden; }

.toggle-nav-panel {
  position: relative;
  z-index: 1;
  font-size: 1.75rem;
  cursor: pointer;
  color: #281E1E;
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  height: 100%;
  padding: 0 1.5rem; }
  .toggle-nav-panel:hover {
    color: #ec1a2e; }

/* ------ navigation, panel and sticky header ------ END ------ */
.container {
  position: relative;
  width: 100%;
  margin: 0 auto;
  overflow-x: clip; }

main,
header,
footer {
  position: relative; }

main {
  margin: 0 auto 3rem; }
  .persian-simple main {
    padding: 0; }
  @media screen and (max-width: 47.9375em) {
    main .grid-container {
      padding-left: 1rem;
      padding-right: 1rem; } }
  @media screen and (min-width: 48em) and (max-width: 63.9375em) {
    main .grid-container {
      padding-left: 0.75rem;
      padding-right: 0.75rem;
      max-width: 768px; } }

.mobile-webview {
  padding: 0; }
  [dir="rtl"] .mobile-webview {
    padding: 0; }
  .mobile-webview main {
    padding: 0;
    margin: 0; }
    [dir="rtl"] .mobile-webview main {
      padding: 0;
      margin: 0; }
  .mobile-webview .entry-header.has-avatar .entry-title h1,
  .mobile-webview .entry-meta-field.entry-meta-author > a {
    font-style: normal; }

@media print, screen and (min-width: 64em) {
  .static-column-wrap {
    width: 640px; } }

.equalise-columns .content-wrap, .equalise-columns
.static-column-wrap {
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 64em) {
    .equalise-columns .content-wrap, .equalise-columns
    .static-column-wrap {
      margin-bottom: 0;
      height: 100%; } }

header#main-header {
  background-color: #ffffff;
  z-index: 5000000;
  right: 0;
  width: 100%;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); }

.dropdown-toggle {
  vertical-align: middle;
  cursor: pointer;
  line-height: 36px;
  height: 100%;
  font-weight: 500;
  padding: 0 22px; }
  .dropdown-toggle:hover, .dropdown-toggle:focus {
    color: #ec1a2e; }

.dropdown-menu {
  list-style: none;
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 178px;
  background-color: #ffffff;
  border-color: rgba(218, 223, 225, 0.5);
  border-style: solid;
  border-width: 1px 0 1px 1px; }
  [dir="rtl"] .dropdown-menu {
    border-width: 1px 1px 1px 0; }
  .dropdown-menu li {
    line-height: 1; }
    .dropdown-menu li:hover:after {
      content: " ";
      width: 5px;
      position: absolute;
      bottom: 0;
      left: 0;
      height: 100%;
      background-color: #ec1a2e;
      display: none; }
    .dropdown-menu li:last-child {
      font-family: Tahoma;
      font-size: 16px; }
    .dropdown-menu li a {
      color: #281E1E;
      font-size: 16px;
      display: block;
      padding: 16px 0 16px 24px; }
      [dir="rtl"] .dropdown-menu li a {
        padding: 16px 24px 16px 0; }
      .dropdown-menu li a i {
        font-size: 1.25rem;
        margin-left: 1rem; }
      .dropdown-menu li a:hover {
        color: #ec1a2e; }
  .dropdown-menu.open {
    display: block; }

.check-icon {
  padding: 0 0.25rem; }

.search-form {
  background: rgba(0, 0, 0, 0.7);
  display: none;
  clear: both;
  padding: 15px 25px 15px 18px;
  position: fixed;
  width: 100%;
  z-index: 1;
  left: 0; }
  @media screen and (max-width: 47.9375em) {
    .search-form {
      padding: 12px; } }
  .search-form > div {
    position: relative; }
  .search-form.open {
    display: block; }
  @media print, screen and (min-width: 48em) {
    .search-form {
      width: 50%; } }
  .search-form .search-form-inner {
    position: relative; }
  .search-form .form-field,
  .search-form .form-item.form-type-textfield {
    margin: 0;
    padding: 0; }
    .search-form .form-field input,
    .search-form .form-item.form-type-textfield input {
      width: 100%;
      border: 0;
      line-height: 1;
      padding: 6px;
      height: 34px;
      font-size: 14px; }
  .search-form .button,
  .search-form input[type="submit"] {
    font-family: "icomoon";
    font-size: 20px;
    width: 34px;
    height: 34px;
    border: none;
    background-color: #ec1a2e;
    color: #ffffff;
    position: absolute;
    left: 0;
    display: block;
    outline: 0;
    bottom: 0;
    line-height: 1;
    text-align: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }

.main-header-before {
  border-bottom: 1px solid rgba(218, 223, 225, 0.7); }
  @media screen and (max-width: 47.9375em) {
    [dir="rtl"] .main-header-before {
      border-top: 1px solid #212121; } }
  .main-header-before__inner {
    width: 100%; }
    @media screen and (max-width: 47.9375em) {
      [dir="rtl"] .main-header-before__inner {
        width: auto; } }
    @media screen and (min-width: 48em) {
      .main-header-before__inner {
        padding: 0 20px;
        margin: 0 auto;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; } }
    @media print, screen and (min-width: 64em) {
      .main-header-before__inner {
        width: 1250px; } }

.mag-meta {
  padding-top: 0.5rem; }

.subheader-block1 {
  height: 100%; }
  .subheader-block1 > ul {
    font-family: "DroidArabicKufi";
    height: 100%; }
    .eng-theme .subheader-block1 > ul,
    .turkish-theme .subheader-block1 > ul {
      font-size: 13px; }
    .subheader-block1 > ul > li {
      position: relative; }
      .subheader-block1 > ul > li:last-child {
        border: 0; }
      .subheader-block1 > ul > li:after {
        content: " ";
        height: 2px;
        position: absolute;
        bottom: 0;
        right: 0;
        width: 100%;
        background-color: #ec1a2e;
        display: none; }
      .subheader-block1 > ul > li:hover:after {
        display: block; }
      @media screen and (max-width: 47.9375em) {
        .subheader-block1 > ul > li.account, .subheader-block1 > ul > li.edition {
          display: none; } }
      .subheader-block1 > ul > li > a {
        text-transform: uppercase;
        display: block;
        padding: 0;
        height: 100%; }
        .subheader-block1 > ul > li > a .button {
          padding: 0; }
      .subheader-block1 > ul > li.subscription {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        text-transform: uppercase; }
        @media screen and (max-width: 39.375em) {
          .subheader-block1 > ul > li.subscription {
            display: none; } }
        .subheader-block1 > ul > li.subscription:after {
          display: none; }
        .subheader-block1 > ul > li.subscription a {
          height: auto;
          color: #281E1E;
          padding: 0 1.25rem 0 0; }
          [dir="rtl"] .subheader-block1 > ul > li.subscription a {
            padding: 0 0 0 1.25rem; }
          .subheader-block1 > ul > li.subscription a:hover {
            color: #ec1a2e; }
          .subheader-block1 > ul > li.subscription a strong {
            padding-right: 6px; }
      .main-header-before .subheader-block1 > ul > li.quick-search {
        /*@include breakpoint(small only) {
            display: none;
          }*/ }
        @media print, screen and (min-width: 64em) {
          .main-header-before .subheader-block1 > ul > li.quick-search {
            display: none; } }
      .subheader-block1 > ul > li.quick-search i {
        vertical-align: middle;
        font-size: 1.25rem; }
      .subheader-block1 > ul > li.edition button {
        padding: 0 1.625rem; }
      .subheader-block1 > ul > li.edition i {
        vertical-align: middle;
        font-size: 1.5rem; }
      .subheader-block1 > ul > li.account i {
        vertical-align: middle;
        font-size: 1.5rem; }

.subheader-block {
  height: 100%; }
  .subheader-block > ul {
    font-family: "DroidArabicKufi";
    height: 100%; }
    .eng-theme .subheader-block > ul,
    .turkish-theme .subheader-block > ul {
      font-size: 13px; }
    .subheader-block > ul > li {
      position: relative;
      border-left: 1px solid rgba(218, 223, 225, 0.7); }
      .subheader-block > ul > li:last-child {
        border: 0; }
      .subheader-block > ul > li:after {
        content: " ";
        height: 2px;
        position: absolute;
        bottom: 0;
        right: 0;
        width: 100%;
        background-color: #ec1a2e;
        display: none; }
      .subheader-block > ul > li:hover:after {
        display: block; }
      @media screen and (max-width: 47.9375em) {
        .subheader-block > ul > li.account, .subheader-block > ul > li.edition {
          display: none; } }
      .subheader-block > ul > li > a {
        text-transform: uppercase;
        display: block;
        padding: 0;
        height: 100%; }
        .subheader-block > ul > li > a .button {
          padding: 0; }
      .subheader-block > ul > li.subscription {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        text-transform: uppercase; }
        @media screen and (max-width: 39.375em) {
          .subheader-block > ul > li.subscription {
            display: none; } }
        .subheader-block > ul > li.subscription:after {
          display: none; }
        .subheader-block > ul > li.subscription a {
          height: auto;
          color: #281E1E;
          padding: 0 1.25rem 0 0; }
          [dir="rtl"] .subheader-block > ul > li.subscription a {
            padding: 0 0 0 1.25rem; }
          .subheader-block > ul > li.subscription a:hover {
            color: #ec1a2e; }
          .subheader-block > ul > li.subscription a strong {
            padding-right: 6px; }
      .subheader-block > ul > li.quick-search .dropdown-toggle {
        color: #000000; }
        .subheader-block > ul > li.quick-search .dropdown-toggle:hover, .subheader-block > ul > li.quick-search .dropdown-toggle:focus {
          color: #ec1a2e; }
      .main-header-before .subheader-block > ul > li.quick-search {
        /*@include breakpoint(small only) {
            display: none;
          }*/ }
        @media print, screen and (min-width: 64em) {
          .main-header-before .subheader-block > ul > li.quick-search {
            display: none; } }
      .subheader-block > ul > li.quick-search i {
        vertical-align: middle;
        font-size: 1.25rem; }
      .subheader-block > ul > li.edition button {
        padding: 0 1.625rem; }
      .subheader-block > ul > li.edition i {
        vertical-align: middle;
        font-size: 1.5rem; }
      .subheader-block > ul > li.account i {
        vertical-align: middle;
        font-size: 1.5rem; }

.logo {
  margin: 12px 0;
  padding-right: 16px; }
  .logo img {
    height: 27px; }
    [dir="rtl"] .logo img,
    .turkish-theme .logo img {
      height: 44px; }
  @media print, screen and (min-width: 64em) {
    .logo img {
      height: 34px; }
      [dir="rtl"] .logo img,
      .turkish-theme .logo img {
        height: 54px; } }

.logo-white {
  display: none; }

@media screen and (min-width: 21.875em) {
  .logo-txt {
    margin-right: 0.25rem; } }

.holder-area {
  position: relative; }
  header .holder-area,
  .subheader-block .holder-area {
    height: 30px;
    width: 34px;
    display: inline-block;
    vertical-align: middle; }

.current-time,
.current-issue-number {
  font-family: Arial;
  font-size: 14px; }

.entry-comments {
  margin-bottom: 2rem; }
  .entry-comments .box-title {
    margin-bottom: 0.5rem; }
    .entry-comments .box-title h3,
    .entry-comments .box-title h4 {
      color: #281E1E; }
  .entry-comments a {
    color: #000000; }
    .entry-comments a:hover {
      color: #ec1a2e !important; }

.comments-container {
  background-color: #f2f2f2;
  border: 2px solid #cccccc;
  padding: 0 0.5rem 0.5rem;
  margin-bottom: 2rem;
  margin-top: 1.5rem; }

.comments-head {
  text-align: center;
  position: relative;
  margin-top: -22px !important;
  margin-bottom: 1rem; }
  .comments-head a {
    display: block; }
  .comments-head i {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 1.5rem;
    color: #ffffff;
    background: #ec1a2e;
    border-radius: 50%; }
  .comments-head h4,
  .comments-head h5 {
    color: #000000;
    margin: 1rem 0 0; }

.comments-inner {
  display: none;
  background: #f5f5f5;
  border: 1px solid #dadfe1;
  padding: 0.9375rem;
  color: #707070; }
  .comments-inner .subheader {
    margin-bottom: 1.25rem; }
  .comments-inner button {
    margin-bottom: 0; }
  .comments-inner label {
    margin-bottom: 0; }

.custom-icon-minus:before {
  content: "-";
  font-family: verdana;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.1; }

.grid-items.style-v2 .article-item {
  padding: 1rem 0;
  border-top: 1px solid #dadfe1;
  border-bottom: 1px dashed #bfbfbf; }

.grid-items.has-bottom-border .article-item {
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #281E1E; }

.grid-items-wrapper {
  margin-bottom: 1rem; }

.fill-content {
  display: block;
  height: 0;
  max-height: 100%;
  max-width: 100%;
  min-height: 100%;
  min-width: 100%;
  width: 0;
  margin: auto;
  -o-object-fit: cover;
     object-fit: cover; }
  .fill-content.abs-element {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  .article-item-img .fill-content,
  .entry-media-inner-img .fill-content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }

.sizer {
  display: block;
  padding-top: 66.6667%;
  /*.entry-media-inner-img & {
    padding-top: 40%;
  }*/ }
  .entry-media .sizer {
    padding-top: 75%; }
  .with-square-sizer .sizer {
    padding-top: 100%; }
  .node-type-cartoons .sizer,
  .page-cartoons .sizer,
  .article-block-cartoon .sizer {
    padding-top: 72%; }

.article-item {
  position: relative; }
  .article-item.article-hero {
    height: 100%; }
    .block-wrapper .article-item.article-hero {
      margin-bottom: 0.5rem; }
    @media print, screen and (min-width: 48em) {
      .article-item.article-hero {
        margin-bottom: -6px; }
        .article-item.article-hero .article-item-img {
          height: 100%; } }
    .article-item.article-hero .article-item-content > :not(.category-field) a {
      display: block; }
    .article-item.article-hero.media-video .abs-bottom-element, .article-item.article-hero.media-audio .abs-bottom-element {
      padding-top: 24px; }
      .article-item.article-hero.media-video .abs-bottom-element:before, .article-item.article-hero.media-audio .abs-bottom-element:before {
        background: rgba(236, 26, 46, 0.8);
        border-radius: 50%;
        cursor: pointer;
        text-align: center;
        content: "\e90b";
        position: absolute;
        font-family: "icomoon";
        width: 32px;
        height: 32px;
        line-height: 32px;
        font-size: 1.25rem;
        z-index: 1;
        top: -16px;
        text-indent: 3px; }
        [dir="rtl"] .article-item.article-hero.media-video .abs-bottom-element:before, [dir="rtl"] .article-item.article-hero.media-audio .abs-bottom-element:before {
          text-indent: -3px; }
        @media print, screen and (min-width: 48em) {
          .splash-row > .grid-x > .cell.large-8 > .article-item.article-hero.media-video .abs-bottom-element:before, .splash-row > .grid-x > .cell.large-8 > .article-item.article-hero.media-audio .abs-bottom-element:before {
            text-indent: 6px;
            font-size: 2rem;
            top: -28px;
            margin: 0;
            width: 56px;
            height: 56px;
            line-height: 56px; }
            [dir="rtl"] .splash-row > .grid-x > .cell.large-8 > .article-item.article-hero.media-video .abs-bottom-element:before, [dir="rtl"] .splash-row > .grid-x > .cell.large-8 > .article-item.article-hero.media-audio .abs-bottom-element:before {
              text-indent: -6px; } }
    .article-item.article-hero.media-audio .abs-bottom-element:before {
      content: "\e91e"; }
    @media screen and (max-width: 47.9375em) {
      .splash-row .article-item.article-hero {
        margin-bottom: 0.5rem; } }
  .articles-list .article-item.article-hero {
    margin-bottom: 0; }
    @media print, screen and (min-width: 64em) {
      .articles-list .article-item.article-hero .article-item-img {
        height: 260px; } }
  @media screen and (max-width: 63.9375em) {
    .article-item.video-grid-story.img-as-bg .article-item-img {
      position: relative;
      padding-top: 56.25%; } }
  @media print, screen and (min-width: 64em) {
    .article-item.video-grid-story.img-as-bg {
      height: 360px; } }
  @media screen and (max-width: 63.9375em) {
    .article-item.full-grid-story.related-content h2 {
      font-size: 21px; } }
  .article-item.full-grid-story .article-item-category {
    margin-top: -27px;
    margin-bottom: 1rem; }
  @media screen and (max-width: 47.9375em) {
    .article-item.full-grid-story.img-as-bg .article-item-img {
      position: relative;
      padding-top: 56.25%; } }
  @media screen and (min-width: 48em) and (max-width: 63.9375em) {
    .article-item.full-grid-story.img-as-bg {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-flow: column wrap;
          -ms-flex-flow: column wrap;
              flex-flow: column wrap; }
      .article-item.full-grid-story.img-as-bg .article-item-img {
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 0px;
            -ms-flex: 1 1 0px;
                flex: 1 1 0px;
        width: auto; }
      .article-item.full-grid-story.img-as-bg .article-item-content {
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 0px;
            -ms-flex: 1 1 0px;
                flex: 1 1 0px;
        width: auto; } }
  @media print, screen and (min-width: 48em) {
    .article-item.full-grid-story.img-as-bg {
      height: 600px; } }
  .article-item.half-grid-story {
    padding-bottom: 0.625rem;
    border-bottom: 1px solid #dadfe1; }
    @media screen and (max-width: 47.9375em) {
      .article-item.half-grid-story.img-as-bg .article-item-img {
        position: relative;
        padding-top: 56.25%; } }
    @media print, screen and (min-width: 48em) {
      .article-item.half-grid-story.img-as-bg {
        height: 290px; } }
    @media screen and (min-width: 48em) and (max-width: 63.9375em) {
      .grid-items.medium-up-3 .article-item.half-grid-story.img-as-bg {
        height: 230px; } }
  @media print, screen and (min-width: 48em) {
    .article-item.small-grid-story.img-as-bg {
      height: 230px; } }
  @media print, screen and (min-width: 48em) {
    .article-item.card-grid-story.img-as-bg {
      height: 600px; } }
  .article-item.card-grid-story .article-item-content {
    padding: 0.5rem 1.25rem;
    border: 1px solid #dadfe1; }
  .article-item.half-card-grid-story {
    margin-bottom: 0;
    height: 100%;
    border: 1px solid #d6d6d6; }
    .article-item.half-card-grid-story.img-as-bg .article-item-img {
      position: relative;
      padding-top: 56.25%; }
    .article-item.half-card-grid-story .article-item-content {
      padding: 0.5rem 0.75rem 1rem; }
  .article-item.small-grid-story .article-item-category, .article-item.half-grid-story .article-item-category, .article-item.card-grid-story .article-item-category, .article-item.half-card-grid-story .article-item-category {
    margin-top: -19px; }
  .grid-items .article-item {
    max-width: 360px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 2rem; }
  .article-item .duration {
    position: absolute;
    bottom: 0.5rem;
    left: 0.5rem;
    font-size: 11px;
    background-color: #000000;
    padding: 4px 4px 3px;
    line-height: 1; }
  .article-item.article-video-hero .article-item-img:before {
    background: rgba(236, 26, 46, 0.8);
    border-radius: 50%;
    cursor: pointer;
    text-align: center;
    content: "\e90b";
    position: absolute;
    font-family: "icomoon";
    width: 50px;
    height: 50px;
    line-height: 48px;
    font-size: 2rem;
    z-index: 1;
    text-indent: 3px;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    margin: 0 auto; }
    [dir="rtl"] .article-item.article-video-hero .article-item-img:before {
      text-indent: -3px; }
  .article-item.article-video .article-item-img:before {
    background: rgba(236, 26, 46, 0.8);
    border-radius: 50%;
    cursor: pointer;
    text-align: center;
    content: "\e90b";
    position: absolute;
    font-family: "icomoon";
    width: 32px;
    height: 32px;
    line-height: 32px;
    font-size: 1.25rem;
    z-index: 1;
    text-indent: 3px;
    bottom: 0.5rem;
    right: 0.5rem; }
    [dir="rtl"] .article-item.article-video .article-item-img:before {
      text-indent: -3px; }

.half-card-grid-stories .cell {
  margin-bottom: 2rem; }

.article-item-inner {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0; }

.img-as-bg .article-item-img {
  background-color: #000000;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  display: block;
  position: relative;
  height: 100%; }
  .img-as-bg .article-item-img > a {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1; }

.article-item-img {
  position: relative; }
  .horoscopes-articles .article-item-img {
    margin-bottom: 0.5rem; }
  .card .article-item-img {
    margin-bottom: 0; }
  .article-item-img a:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: transparent;
    -webkit-transition: color 0.25s ease 0s, background-color 0.25s ease 0s, opacity 0.25s ease 0s;
    transition: color 0.25s ease 0s, background-color 0.25s ease 0s, opacity 0.25s ease 0s; }
  .article-item-img a:hover:after, .article-item-img a.hovered-img:after {
    background-color: rgba(0, 0, 0, 0.1); }

.article-item-content {
  padding-top: 0.5rem; }

.article-item-title a {
  color: #281E1E; }
  .article-item-title a:hover {
    color: #ec1a2e; }

@media print, screen and (min-width: 64em) {
  .video-grid-story .article-item-title h2 {
    font-size: 2.5rem; } }

.playlist .article-item-title h6 {
  font-size: 14px;
  font-weight: 600; }

.half-card-grid-story .article-item-title .article-item-content h4 {
  font-size: 1.25rem; }

.object-item .article-item-title h6 {
  margin-bottom: 0;
  letter-spacing: 0.22px;
  font-weight: 500; }
  .eng-theme .object-item .article-item-title h6,
  .turkish-theme .object-item .article-item-title h6 {
    font-size: 15px; }
  [dir="rtl"] .object-item .article-item-title h6 {
    font-weight: 800; }
  @media print, screen and (min-width: 48em) {
    .eng-theme .splash-row .object-item .article-item-title h6,
    .turkish-theme .splash-row .object-item .article-item-title h6 {
      font-size: 14px; } }

.block-wrapper .article-item-title h6 {
  font-weight: 300; }

.article-item-title .media-prefix {
  color: #ec1a2e;
  margin-left: 0.4rem; }

.article-item-author {
  margin-top: 8px;
  font-size: 14px;
  font-weight: 700;
  font-style: italic;
  color: #ec1a2e; }
  .urdu-theme .article-item-author {
    font-style: normal; }
  @media screen and (max-width: 63.9375em) {
    .articles-list.cards .article-item-author {
      display: none; } }

.urdu-theme p {
  font-size: 1.5rem; }

.article-item-author1 {
  margin-top: 0.3rem;
  font-size: 14px;
  font-weight: 700;
  font-style: italic;
  color: #337e81; }
  .urdu-theme .article-item-author1 {
    font-style: normal; }
  @media screen and (max-width: 63.9375em) {
    .articles-list.cards .article-item-author1 {
      display: none; } }

.article-item-category {
  position: relative;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 0.5rem;
  z-index: 1; }
  .article-item-category a {
    line-height: 16px;
    display: inline-block;
    padding: 2px 8px;
    text-transform: uppercase;
    background-color: #ec1a2e;
    color: #ffffff; }
    .article-item-category a:hover {
      background-color: #000000;
      color: #ffffff; }

.article-item-labels {
  position: absolute;
  top: 0;
  left: 0;
  height: auto;
  z-index: 1;
  font-family: "DroidArabicKufi";
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 8px;
  color: #ffffff;
  letter-spacing: 0.26px;
  line-height: normal;
  text-shadow: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 10px; }
  [dir="rtl"] .article-item-labels {
    right: 0;
    left: initial; }
  .flex-dir-column-reverse .article-item-labels {
    right: initial;
    left: 0; }
  .eng-theme .article-item-labels,
  .turkish-theme .article-item-labels {
    font-size: 11px; }
  .article-item-labels a {
    background: #ec1a2e;
    padding: 4px 8px 2px;
    color: #ffffff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .article-item-labels a:hover {
      background-color: #ffffff;
      color: #ec1a2e; }

.live-blog {
  background: #fffd38;
  color: #000;
  padding: 4px 8px 2px;
  display: inline-block; }

.lead {
  padding-top: 16px; }
  .lead p {
    font-family: "DroidArabicKufi";
    margin-bottom: 0; }
    .eng-theme .lead p,
    .turkish-theme .lead p {
      font-size: 14px; }
    @media print, screen and (min-width: 64em) {
      .eng-theme .article-hero .abs-bottom-element .lead p,
      .turkish-theme .article-hero .abs-bottom-element .lead p {
        font-size: 16px; } }

.abs-bottom-element {
  background: rgba(0, 0, 0, 0.7);
  color: #ffffff;
  display: block;
  width: 100%;
  margin: 0;
  padding: 16px;
  position: absolute;
  bottom: 0;
  right: 0; }
  .abs-bottom-element a {
    position: relative;
    z-index: 1;
    color: #ffffff; }
    .abs-bottom-element a:hover {
      color: #ec1a2e; }
  @media screen and (max-width: 47.9375em) {
    .splash-row .abs-bottom-element {
      position: relative; } }
  .abs-bottom-element .article-item-title h4,
  .abs-bottom-element .article-item-title h5,
  .abs-bottom-element .article-item-title h6 {
    margin-bottom: 0; }
  .video-grid-story .abs-bottom-element {
    padding: 1.5rem; }
    @media print, screen and (min-width: 64em) {
      .video-grid-story .abs-bottom-element {
        padding-top: 80px; } }

.abs-bottom-element1 {
  padding: 0.75rem;
  position: relative;
  background: rgba(0, 0, 0, 0.7);
  color: #ffffff;
  display: block;
  width: 100%;
  margin: 0;
  top: 0rem;
  -webkit-backdrop-filter: blur(7px);
          backdrop-filter: blur(7px); }
  .abs-bottom-element1 a {
    position: relative;
    z-index: 1;
    color: #ffffff; }
    .abs-bottom-element1 a:hover {
      color: #ec1a2e; }
  @media print, screen and (min-width: 48em) {
    .abs-bottom-element1 {
      padding: 1.5rem;
      position: absolute;
      bottom: 0;
      right: 0; } }
  .abs-bottom-element1 .article-item-title h4,
  .abs-bottom-element1 .article-item-title h5,
  .abs-bottom-element1 .article-item-title h6 {
    margin-bottom: 0; }
  .video-grid-story .abs-bottom-element1 {
    padding: 1.5rem; }
    @media print, screen and (min-width: 64em) {
      .video-grid-story .abs-bottom-element1 {
        padding-top: 80px; } }

.play-icon {
  font-size: 1.25rem;
  padding: 8px 6px 8px 10px;
  background: rgba(236, 26, 46, 0.8);
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  right: 10px;
  position: absolute;
  top: 10px;
  line-height: 1;
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .play-icon {
      font-size: 2rem;
      padding: 12px 10px 12px 16px; } }
  .full-grid-story .play-icon,
  .card-grid-story .play-icon {
    font-size: 4rem;
    padding: 16px 14px 16px 22px; }
  .object-item .play-icon {
    font-size: 20px;
    padding: 7px 6px 7px 9px;
    top: 7px;
    right: 7px; }
  .playlist .play-icon {
    background: rgba(0, 0, 0, 0.4);
    top: 5px;
    right: 5px;
    font-size: 16px;
    padding: 6px 5px 6px 7px; }

.playlist-wrapper {
  padding: 10px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  min-height: 245px;
  margin-bottom: 2rem; }

span.author {
  font-family: "DroidArabicKufi";
  font-weight: 700;
  font-style: italic;
  color: #ec1a2e; }
  .urdu-theme span.author {
    font-style: normal; }

.headlines-list {
  list-style: none;
  border-right: 1px solid #fff;
  margin: 16px 0 0 8px;
  padding: 0; }
  .headlines-list a {
    display: block;
    letter-spacing: normal;
    line-height: 1.25;
    font-family: "DroidArabicKufi";
    font-weight: 700;
    color: #ffffff; }
    .headlines-list a:hover {
      color: #ec1a2e; }
  .abs-bottom-element .headlines-list a {
    color: #ffffff; }
    .abs-bottom-element .headlines-list a:hover {
      color: #ec1a2e; }
  .half-card-grid-story .headlines-list {
    margin-top: 1.25rem; }
    .half-card-grid-story .headlines-list li {
      margin-top: 1.25rem; }
  .headlines-list.has-separator li {
    padding: 0.75rem 0 0.75rem 1.5rem;
    border-top: 1px solid #dadfe1;
    margin-top: 0; }
    .headlines-list.has-separator li:before {
      top: 13px; }
    [dir="rtl"] .headlines-list.has-separator li {
      padding: 0.75rem 1.5rem 0.75rem 0; }
  .headlines-list li {
    font-weight: 600;
    padding-right: 2.2em;
    position: relative;
    margin-top: 0.5rem;
    line-height: 1.2; }
    .eng-theme .headlines-list li,
    .turkish-theme .headlines-list li {
      font-size: 14px; }
    [dir="rtl"] .headlines-list li {
      line-height: 1.4; }
    .headlines-list li:before {
      content: "";
      position: absolute;
      height: 16px;
      width: 16px;
      border-radius: 50%;
      background-color: #ec1a2e;
      top: -1px;
      right: 8px;
      display: block !important;
      padding-left: 15px;
      background-image: url(../img/svg/white_arrow.svg);
      background-repeat: no-repeat;
      background-position: right center;
      background-size: 16px; }
      .urdu-theme .headlines-list li:before {
        top: -7px; }
      [dir="rtl"] .headlines-list li:before {
        -webkit-transform: scaleX(-1);
        -ms-transform: scaleX(-1);
            transform: scaleX(-1);
        -webkit-filter: FlipH;
                filter: FlipH;
        -ms-filter: "FlipH";
        top: 2px; }

.headlines-list.hrefblack a {
  color: black; }
  .headlines-list.hrefblack a :hover {
    color: #ec1a2e; }

.date-field {
  font-size: 13px;
  color: #888888; }

@media screen and (max-width: 47.9375em) {
  section.section.bottom-spacer--s {
    margin-bottom: 0.5rem !important; } }

.section-wrapper {
  margin-bottom: 2rem; }

.section-title {
  padding-top: 20px;
  color: #000000;
  position: relative; }
  .section-title h2 {
    font-family: "DroidArabicKufi";
    font-weight: 700;
    margin-bottom: 12px; }
    .eng-theme .section-title h2,
    .turkish-theme .section-title h2 {
      font-size: 20px; }
    .turkish-theme .section-title h2 {
      text-transform: uppercase; }
  .section-title a:not(.see-all) {
    color: #000000; }
    .section-title a:not(.see-all):hover {
      color: #ec1a2e; }
  .section-title.has-dot h2:before,
  .section-title.has-dot h3:before,
  .section-title.has-dot h4:before,
  .section-title.has-dot h5:before {
    display: inline-block;
    content: " ";
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #ec1a2e;
    margin-left: 8px; }
    .eng-theme .section-title.has-dot h2:before,
    .turkish-theme .section-title.has-dot h2:before, .eng-theme
    .section-title.has-dot h3:before,
    .turkish-theme
    .section-title.has-dot h3:before, .eng-theme
    .section-title.has-dot h4:before,
    .turkish-theme
    .section-title.has-dot h4:before, .eng-theme
    .section-title.has-dot h5:before,
    .turkish-theme
    .section-title.has-dot h5:before {
      margin-top: 1px;
      vertical-align: top; }
  .section-title.has-logo h2:before,
  .section-title.has-logo h3:before,
  .section-title.has-logo h4:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background: transparent url("../img/logo-icon.png") no-repeat center right;
    background-size: 30px 30px;
    width: 30px;
    height: 30px;
    margin-left: 0.5rem;
    position: relative;
    top: -3px; }
    [dir="rtl"] .section-title.has-logo h2:before, [dir="rtl"]
    .section-title.has-logo h3:before, [dir="rtl"]
    .section-title.has-logo h4:before {
      top: 1px; }

.see-all {
  display: inline-block;
  color: #ec1a2e;
  font-size: 0.9em;
  font-weight: 600;
  position: absolute;
  padding-left: 21px;
  left: 0;
  top: 50%;
  line-height: 1.2;
  text-transform: capitalize;
  vertical-align: middle;
  margin-top: -9px; }
  .see-all:hover {
    color: #000000; }
    .see-all:hover:after {
      color: #000000; }
  .see-all:after {
    content: "\e90a";
    display: inline-block;
    width: 16px;
    height: 16px;
    line-height: 15px;
    font-weight: normal;
    font-family: "icomoon";
    font-size: 0.5rem;
    border-radius: 50%;
    border: 1px solid #ec1a2e;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    color: #ec1a2e;
    text-indent: 1px; }
    [dir="rtl"] .see-all:after {
      content: "\e908"; }

.category-field {
  font-family: "DroidArabicKufi";
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.3px;
  line-height: 1.2;
  margin-bottom: 8px; }
  .eng-theme .category-field,
  .turkish-theme .category-field {
    font-size: 11px; }
  .turkish-theme .category-field {
    text-transform: capitalize; }
  [dir="rtl"] .category-field {
    font-size: 11px; }
  .urdu-theme .category-field {
    font-size: 16px; }

.category-field1 {
  font-family: "DroidArabicKufi";
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.3px;
  line-height: 1.2;
  margin-bottom: 0.5rem; }
  .category-field1 a {
    color: #337e81; }
  .eng-theme .category-field1,
  .turkish-theme .category-field1 {
    font-size: 11px; }
  .turkish-theme .category-field1 {
    text-transform: capitalize; }
  [dir="rtl"] .category-field1 {
    font-size: 11px; }
  .urdu-theme .category-field1 {
    font-size: 16px; }

.media-object {
  position: relative; }

.cards .objects-list .object-item .media-object .media-object-img {
  height: 100%; }

.cards .objects-list .object-item .media-object.media-video .media-object-img:before, .cards .objects-list .object-item .media-object.media-audio .media-object-img:before {
  background: rgba(236, 26, 46, 0.8);
  color: #ffffff;
  border-radius: 50%;
  cursor: pointer;
  text-align: center;
  content: "\e90b";
  position: absolute;
  font-family: "icomoon";
  width: 32px;
  height: 32px;
  line-height: 32px;
  font-size: 1.25rem;
  z-index: 1;
  bottom: 0;
  text-indent: 6px;
  margin: 0.5rem; }
  [dir="rtl"] .cards .objects-list .object-item .media-object.media-video .media-object-img:before, [dir="rtl"] .cards .objects-list .object-item .media-object.media-audio .media-object-img:before {
    text-indent: -3px; }
  @media print, screen and (min-width: 64em) {
    .cards .objects-list .object-item .media-object.media-video .media-object-img:before, .cards .objects-list .object-item .media-object.media-audio .media-object-img:before {
      top: -24px;
      left: 0; } }

.cards .objects-list .object-item .media-object.media-audio .media-object-img:before {
  content: "\e91e"; }

.objects-list.has-separator .object-item {
  min-height: 69px;
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #d6d6d6; }
  [dir="rtl"] .objects-list.has-separator .object-item {
    margin-bottom: 16px;
    padding-bottom: 16px; }
  .objects-list.has-separator .object-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0; }
  .objects-list.has-separator .object-item .media-object {
    position: relative;
    margin-bottom: 0; }
    .objects-list.has-separator .object-item .media-object.media-video .media-object-img:before, .objects-list.has-separator .object-item .media-object.media-audio .media-object-img:before {
      background: rgba(236, 26, 46, 0.8);
      color: #ffffff;
      border-radius: 50%;
      cursor: pointer;
      text-align: center;
      content: "\e90b";
      position: absolute;
      font-family: "icomoon";
      width: 32px;
      height: 32px;
      line-height: 32px;
      font-size: 1.25rem;
      z-index: 1;
      bottom: 0;
      text-indent: 6px;
      margin: 0.5rem; }
      [dir="rtl"] .objects-list.has-separator .object-item .media-object.media-video .media-object-img:before, [dir="rtl"] .objects-list.has-separator .object-item .media-object.media-audio .media-object-img:before {
        text-indent: -3px; }
    .objects-list.has-separator .object-item .media-object.media-audio .media-object-img:before {
      content: "\e91e"; }

.media-object-img {
  position: relative; }
  .media-object-img img {
    max-width: 128px; }
    @media print, screen and (min-width: 48em) {
      .media-object-img img {
        max-width: 103px; } }
    @media print, screen and (min-width: 64em) {
      .media-object-img img {
        max-width: 128px; } }
  .media-object-img[data-media="jwVideo"] {
    width: 100%;
    height: 100%;
    min-width: 128px; }
    @media print, screen and (min-width: 48em) {
      .media-object-img[data-media="jwVideo"] {
        min-width: 103px; } }
    @media print, screen and (min-width: 64em) {
      .media-object-img[data-media="jwVideo"] {
        min-width: 128px; } }
  .block-wrapper .media-object-img img {
    max-width: 100px; }

.entry-title h1 {
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.1;
  margin-top: 24px;
  margin-bottom: 24px; }
  @media print, screen and (min-width: 48em) {
    .entry-title h1 {
      font-size: 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .entry-title h1 {
      font-size: 3.375rem; } }
  .entry-video-container .entry-title h1 {
    margin-bottom: 16px; }
  [dir="rtl"] .entry-title h1 {
    line-height: 1.4;
    font-size: 25px; }
    @media screen and (max-width: 47.9375em) {
      [dir="rtl"] .entry-title h1 {
        margin-top: 17px;
        font-size: 25px; } }
    @media print, screen and (min-width: 48em) {
      [dir="rtl"] .entry-title h1 {
        font-size: 1.75rem; } }
    @media print, screen and (min-width: 64em) {
      [dir="rtl"] .entry-title h1 {
        font-size: 32px; } }

.entry-subtitle {
  margin-bottom: 16px; }
  .entry-subtitle h2 {
    color: #555555;
    font-family: "DroidArabicKufi";
    font-size: 16px;
    font-weight: 300;
    margin-bottom: 0; }
    @media print, screen and (min-width: 48em) {
      .entry-subtitle h2 {
        font-size: 20px; } }
    [dir="rtl"] .entry-subtitle h2 {
      line-height: 28px; }

.entry-meta {
  line-height: 1.5em;
  margin-bottom: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .entry-video-container .entry-meta {
    margin-bottom: 0; }
  @media screen and (max-width: 47.9375em) {
    [dir="rtl"] .entry-meta {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      padding-right: 20px; } }
  [dir="rtl"] .entry-meta > div:not(:first-child):before {
    content: " |";
    padding: 0 4px 0 4px;
    color: #555555;
    line-height: 1;
    font-size: 13px;
    vertical-align: middle; }

.entry-meta-field {
  display: inline-block;
  vertical-align: top;
  font-weight: normal;
  font-family: "DroidArabicKufi";
  font-size: 16px; }
  [dir="rtl"] .entry-meta-field {
    font-family: "DroidArabicKufi"; }
  .entry-meta-field.entry-meta-author {
    display: block; }
  .entry-meta-field.entry-meta-author > a {
    font-family: "DroidArabicKufi";
    font-style: italic;
    font-size: 18px; }
    [dir="rtl"] .entry-meta-field.entry-meta-author > a {
      font-size: 16px;
      font-style: normal; }
    .urdu-theme .entry-meta-field.entry-meta-author > a {
      font-style: normal; }
  .entry-meta-field span,
  .entry-meta-field time {
    font-weight: 300;
    color: #555555; }
    .urdu-theme .entry-meta-field span, .urdu-theme
    .entry-meta-field time {
      word-spacing: 4px; }
  .entry-meta-field a {
    font-weight: 700; }
  @media screen and (max-width: 47.9375em) {
    .entry-meta-field {
      margin-bottom: 0.2rem; } }

.entry-reading-time {
  color: #555555; }

.entry-meta-comment a {
  color: #555555;
  font-weight: 300; }

.entry-meta-shares-count {
  color: #ec1a2e; }
  .entry-meta-shares-count span {
    color: #ec1a2e;
    padding-right: 4px; }

[dir="rtl"] .author-twitter {
  display: inline-block;
  direction: ltr; }

.author-twitter a {
  color: #555555;
  text-decoration: none;
  font-weight: 300;
  font-style: normal;
  font-size: 16px; }
  [dir="ltr"] .author-twitter a:before {
    content: "|";
    padding: 4px;
    color: #555;
    line-height: 1;
    font-size: 13px;
    vertical-align: middle; }
  [dir="rtl"] .author-twitter a:after {
    content: "|";
    padding: 4px;
    color: #555;
    line-height: 1;
    font-size: 13px;
    vertical-align: middle; }

@media print, screen and (min-width: 64em) {
  .entry-meta-wrapper > .grid-x > .cell.shrink {
    max-width: 60%; } }

.entry-summary {
  margin-bottom: 32px;
  background-color: #f6f6f6;
  border-top: 4px solid #ec1f31;
  padding: 16px; }
  @media screen and (max-width: 47.9375em) {
    .entry-summary {
      margin-bottom: 24px; } }
  .entry-summary h4 {
    margin-bottom: 16px;
    font-size: 24px; }
  .entry-summary ul li {
    margin-bottom: 24px;
    font-size: 16px; }
    .entry-summary ul li::marker {
      font-size: 9px; }

.entry-article-topper {
  padding: 0 1rem; }
  @media print, screen and (min-width: 64em) {
    .entry-article-topper {
      padding-right: 0.3125rem;
      padding-left: 0.3125rem;
      max-width: 61.5rem;
      margin: 0 auto;
      padding: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 48em) {
    .entry-article-topper {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .entry-article-topper {
      padding-right: 0.5rem;
      padding-left: 0.5rem; } }

.entry-header.has-avatar .entry-title h1 {
  font-style: italic; }
  [dir="rtl"] .entry-header.has-avatar .entry-title h1 {
    font-style: normal; }
  .urdu-theme .entry-header.has-avatar .entry-title h1 {
    font-style: normal; }

.entry-header.has-avatar .entry-subtitle {
  margin-top: 10px;
  margin-bottom: 10px; }
  @media screen and (max-width: 47.9375em) {
    .entry-header.has-avatar .entry-subtitle {
      margin-bottom: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .entry-header.has-avatar .entry-subtitle {
      float: left;
      width: calc(100% - 157px); } }

@media print, screen and (min-width: 48em) {
  .entry-header.has-avatar .entry-meta-wrapper {
    float: left;
    width: calc(100% - 157px); } }

.entry-header.has-avatar .entry-meta-wrapper > .grid-x > .cell.shrink {
  max-width: 100%; }
  @media print, screen and (min-width: 48em) {
    .entry-header.has-avatar .entry-meta-wrapper > .grid-x > .cell.shrink {
      max-width: 75%; } }
  @media print, screen and (min-width: 64em) {
    .entry-header.has-avatar .entry-meta-wrapper > .grid-x > .cell.shrink {
      max-width: 50%; } }

@media screen and (max-width: 47.9375em) {
  [dir="rtl"] .entry-article-share {
    text-align: center;
    margin-top: 14px; } }

.share-floater {
  position: fixed;
  display: none;
  right: 0;
  top: 20px;
  border-left: 1px solid #888888;
  padding: 10px 24px; }
  @media screen and (max-width: 63.9375em) {
    .share-floater {
      display: none; } }
  .share-floater .socials-btns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .share-floater .socials-btns .social-btn {
      background-color: #6d6d6d;
      font-size: 14px;
      margin: 0; }
      .share-floater .socials-btns .social-btn span {
        font-size: 14px; }

.share-block {
  margin-bottom: 1rem;
  display: inline-block;
  vertical-align: middle; }
  .entry-video-container .share-block {
    margin-bottom: 0; }
  .page-node .share-block .socials-btns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .page-node .share-block .socials-btns .social-btn {
      width: 30px;
      height: 30px;
      line-height: 30px;
      margin-left: 3px;
      margin-right: 0; }

.follow-block {
  margin-bottom: 1rem;
  display: inline-block;
  vertical-align: middle; }
  .entry-video-container .follow-block {
    margin-bottom: 0; }

.follow-fb-info {
  font-size: 12px;
  line-height: 14px;
  margin-right: 8px;
  color: #888;
  display: inline-block;
  vertical-align: middle; }

.caption-field,
.dnd-caption-wrapper {
  font-family: "DroidArabicKufi";
  font-weight: 300;
  font-size: 16px;
  color: #6d6d6d;
  line-height: 1.2;
  background: #f6f6f6;
  padding: 10px; }

.entry-article.shifted-area {
  position: relative;
  max-width: 800px;
  background-color: #ffffff;
  width: 100%;
  margin: 0 auto; }
  @media print, screen and (min-width: 48em) {
    .entry-article.shifted-area {
      padding-right: 82px;
      padding-left: 82px; } }
  @media print, screen and (min-width: 64em) {
    .entry-article.shifted-area {
      padding-top: 50px;
      -webkit-transform: translateY(-230px);
          -ms-transform: translateY(-230px);
              transform: translateY(-230px); } }
  .entry-article.shifted-area .share-block {
    display: none; }
    @media print, screen and (min-width: 48em) {
      .entry-article.shifted-area .share-block {
        display: block;
        position: absolute;
        left: 90%;
        z-index: 1;
        top: 20px; } }
    @media print, screen and (min-width: 64em) {
      .entry-article.shifted-area .share-block {
        top: 220px;
        left: 100%;
        padding-left: 30px; } }
    .entry-article.shifted-area .share-block .social-btn.round {
      margin-bottom: 0.75rem; }

.content-wrap-holder {
  width: 100%; }
  @media print, screen and (min-width: 48em) {
    .content-wrap-holder {
      margin: 0 auto;
      max-width: 636px; } }
  @media print, screen and (min-width: 64em) {
    .content-wrap-holder {
      margin-right: 0;
      margin-left: 0;
      padding: 0;
      width: calc(100% - 344px); } }

.sidebar-wrap-holder {
  display: none;
  width: 308px; }
  @media print, screen and (min-width: 64em) {
    .sidebar-wrap-holder {
      display: block; } }

.entry-media {
  position: relative;
  margin-bottom: 24px; }
  .entry-video-container .entry-media {
    margin-bottom: 0; }

.entry-content {
  font-weight: 300;
  font-size: 16px;
  line-height: 26px;
  margin-bottom: 1.5rem;
  /*> p:last-of-type:after {
    content: " ";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #ec1a2e;
    border-radius: 50%;
    margin-right: 6px;
    position: relative;
    top: 2px;
  }*/ }
  .entry-content > h2 {
    font-size: 21px;
    font-weight: 700; }
  .entry-content > h1,
  .entry-content > h2,
  .entry-content > h3 {
    margin: 2rem 0 18px;
    clear: both; }
  @media print, screen and (min-width: 48em) {
    .entry-content {
      font-size: 19px; } }
  [dir="rtl"] .entry-content p {
    margin-bottom: 32px; }
    @media screen and (max-width: 47.9375em) {
      [dir="rtl"] .entry-content p {
        margin-bottom: 24px; } }
  [dir="rtl"] .entry-content h3 {
    font-size: 17px;
    font-weight: 700; }
  [dir="rtl"] .persian-theme .entry-content {
    font-size: 18px; }
  .urdu-theme .entry-content {
    line-height: 1; }
    .urdu-theme .entry-content p {
      margin-bottom: 1rem; }
  .entry-content table {
    max-width: 100%; }
    @media screen and (max-width: 47.9375em) {
      .entry-content table {
        line-height: 1.4; }
        .entry-content table th {
          font-size: 14px; }
        .entry-content table td {
          font-size: 15px; } }

blockquote {
  padding: 0; }
  .entry-content blockquote {
    border: 0;
    font-size: 18px;
    margin-bottom: 32px; }
    @media screen and (max-width: 47.9375em) {
      .entry-content blockquote {
        margin-bottom: 24px; } }
    .entry-content blockquote p {
      font-size: 20px;
      font-weight: 700;
      color: #5D5D5D;
      line-height: 32px; }
    .urdu-theme .entry-content blockquote > p:first-child {
      font-style: normal; }

.blockquote-meta {
  font-size: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .blockquote-meta strong {
    color: #ec1a2e; }
  .blockquote-meta span {
    margin-top: 4px;
    color: #646464; }

.page-taxonomy-term-61 .entry-content > p:first-of-type,
blockquote > p:first-of-type {
  font-size: 20px;
  font-weight: 700;
  color: #5D5D5D; }
  .page-taxonomy-term-61 .entry-content > p:first-of-type:before,
  blockquote > p:first-of-type:before {
    -webkit-print-color-adjust: exact;
    content: " ";
    width: 80px;
    height: 47px;
    float: right;
    background-image: url(../img/svg/quote.svg);
    background-repeat: no-repeat;
    margin: 4px 24px 24px 0; }
    [dir="rtl"] .page-taxonomy-term-61 .entry-content > p:first-of-type:before, [dir="rtl"]
    blockquote > p:first-of-type:before {
      margin: 0 0 8px 0;
      display: block;
      float: initial; }

.entry-tags {
  margin-bottom: 1.5rem;
  padding: 12px 0;
  border-top: 1px solid #d6d6d6;
  border-bottom: 1px solid #d6d6d6; }
  .entry-tags span {
    text-transform: uppercase;
    font-family: "DroidArabicKufi";
    font-size: 15px;
    font-weight: 700;
    color: #281E1E;
    margin-left: 10px; }
  .entry-tags a {
    font-size: 12px;
    line-height: 1.5;
    font-weight: 700;
    padding: 1px 8px 0;
    margin: 4px 8px 4px 0;
    text-transform: uppercase;
    font-family: "DroidArabicKufi";
    display: inline-block; }

.gigya-newsletter {
  margin-bottom: 1.5rem; }

.entry-promoted-stories {
  margin-bottom: 1.5rem; }

.box-title {
  margin-bottom: 0.5rem;
  /*&:after {
    content: " ";
    display: block;
    background: #ec1a2e;
    height: 5px;
    width: 50px;
    margin-bottom: 8px;
  }*/ }
  .box-title h2,
  .box-title h3,
  .box-title h4,
  .box-title h5,
  .box-title h6 {
    font-family: "DroidArabicKufi";
    margin-bottom: 0;
    opacity: 0.5;
    color: #281E1E; }

.block-wrapper {
  margin-bottom: 24px; }
  [dir="rtl"] .block-wrapper {
    margin-bottom: 32px; }
    @media screen and (max-width: 47.9375em) {
      [dir="rtl"] .block-wrapper {
        margin-bottom: 14px; } }

.ad-block-header {
  margin-bottom: 0;
  margin: 0 auto;
  left: 0;
  right: 0;
  z-index: 999;
  background-color: #ffffff;
  padding: 16px; }
  @media screen and (max-width: 47.9375em) {
    .ad-block-header {
      padding: 12px; } }
  @media screen and (max-width: 47.9375em) {
    .ad-block-header small {
      margin-bottom: 14px;
      display: inline-block; } }

.block-title {
  margin-bottom: 0.5rem;
  /*&:after {
    content: " ";
    display: block;
    background: #ec1a2e;
    height: 5px;
    width: 50px;
    margin-bottom: 8px;
  }*/ }
  .block-title h2,
  .block-title h3,
  .block-title h4,
  .block-title h5,
  .block-title h6 {
    font-family: "DroidArabicKufi";
    margin-bottom: 0;
    opacity: 0.5;
    color: #281E1E; }
  [dir="rtl"] .block-title h3 {
    font-size: 25px;
    color: #888888; }
  [dir="rtl"] .block-title {
    margin-bottom: 16px;
    border-top: 1px solid B0B0B0; }

.injected-block,
.injected-blocks {
  border-top: 1px solid #979797;
  border-bottom: 1px solid #979797;
  font-family: "DroidArabicKufi";
  margin-bottom: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem; }
  [dir="rtl"] .injected-block, [dir="rtl"]
  .injected-blocks {
    margin-bottom: 32px; }
  .injected-block .views-field-nid,
  .injected-blocks .views-field-nid {
    display: none; }
  .injected-block ul,
  .injected-blocks ul {
    list-style: none;
    margin: 0; }
    .injected-block ul li,
    .injected-blocks ul li {
      line-height: 1.2em;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .injected-block ul li:not(:last-child),
      .injected-blocks ul li:not(:last-child) {
        border-bottom: 1px solid #b0b0b0;
        margin-bottom: 16px;
        padding-bottom: 16px; }
      .injected-block ul li > div:first-child,
      .injected-blocks ul li > div:first-child {
        margin-left: 16px;
        -webkit-flex-basis: 20%;
            -ms-flex-preferred-size: 20%;
                flex-basis: 20%;
        -webkit-flex-shrink: 0;
            -ms-flex-negative: 0;
                flex-shrink: 0; }
  .injected-block a,
  .injected-blocks a {
    color: #EC1A2E;
    font-size: 15px;
    line-height: 24px;
    font-weight: 700;
    font-family: "DroidArabicKufi"; }
    .injected-block a:hover,
    .injected-blocks a:hover {
      color: #ec1a2e; }
  .injected-block h6,
  .injected-blocks h6 {
    font-family: "DroidArabicKufi";
    font-weight: 700;
    opacity: 0.5;
    color: #3D3D3D;
    font-size: 18px;
    margin-bottom: 16px; }
    [dir="rtl"] .injected-block h6, [dir="rtl"]
    .injected-blocks h6 {
      font-size: 15px; }

.injected-block-watch-more,
.injected-blocks-watch-more {
  width: 48%;
  background-color: #000000;
  padding: 0.5rem; }
  @media print, screen and (min-width: 48em) {
    .injected-block-watch-more,
    .injected-blocks-watch-more {
      width: 36%; } }
  .injected-block-watch-more ul li,
  .injected-blocks-watch-more ul li {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .injected-block-watch-more ul li > div:first-child,
    .injected-blocks-watch-more ul li > div:first-child {
      -webkit-flex-basis: 100%;
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%;
      margin: 0 0 8px 0; }
  .injected-block-watch-more a,
  .injected-blocks-watch-more a {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    font-family: "DroidArabicKufi";
    font-size: 17px;
    color: #ffffff;
    padding-top: 6.5px; }
  .injected-block-watch-more h6,
  .injected-blocks-watch-more h6 {
    color: #ffffff;
    opacity: 1; }

.breadcrumbs-wrapper {
  display: block;
  font-family: "DroidArabicKufi";
  font-weight: 500;
  padding: 0 1rem;
  margin-top: 14px; }
  @media print, screen and (min-width: 64em) {
    .breadcrumbs-wrapper {
      padding-top: 24px; } }
  .breadcrumbs-wrapper .breadcrumbs {
    margin-bottom: 0; }
    .breadcrumbs-wrapper .breadcrumbs li {
      font-size: 16px;
      color: #ec1a2e; }
      .breadcrumbs-wrapper .breadcrumbs li a {
        color: #5D5D5D; }
        .breadcrumbs-wrapper .breadcrumbs li a.breadcrumbs__home {
          font-size: 14px;
          display: inline-block;
          color: #746f70; }
          .breadcrumbs-wrapper .breadcrumbs li a.breadcrumbs__home:hover {
            text-decoration: none; }
      .breadcrumbs-wrapper .breadcrumbs li:not(:last-child)::after {
        content: "";
        font-family: "icomoon";
        font-size: 11px;
        margin-left: 12px;
        margin-right: 12px;
        color: #adabab; }

.entry-media-inner {
  margin-bottom: 16px; }
  .entry-media-inner a {
    color: inherit; }

.entry-media-inner-img {
  position: relative; }

.gallery-count {
  font-size: 1.25rem;
  padding: 10px;
  line-height: 1;
  position: absolute;
  bottom: 6px;
  left: 6px;
  background: rgba(237, 237, 237, 0.666); }

.gallery-trigger {
  cursor: pointer; }

.grid-mod-gallery .images ul li {
  position: relative;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  float: right;
  border-right: 10px solid #fff;
  border-left: 10px solid #fff;
  border-top: 10px solid #fff;
  height: 20%;
  width: 25%; }
  .grid-mod-gallery .images ul li:first-child {
    height: 78%;
    width: 100%;
    border-right: none;
    border-left: none;
    border-top: none;
    border-bottom: 1px solid #fff; }

.grid-mod-gallery {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 1px solid #d6d6d6;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 600px; }

@media all and (max-width: 480px) {
  .grid-mod-gallery {
    height: 600px; } }

.grid-mod-gallery .gallery-title {
  font-size: 20px !important;
  font-weight: 600;
  line-height: 24px !important;
  padding: 20px !important;
  height: auto !important; }

.grid-mod-gallery .images {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.grid-mod-gallery .images ul {
  height: 100%;
  list-style: none; }

.grid-mod-gallery li {
  position: relative;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  float: left; }

.grid-mod-gallery li a {
  display: block;
  height: 100%;
  color: #fff; }

.grid-mod-gallery li a:hover {
  background: rgba(255, 255, 255, 0.2);
  color: #ec1a2e; }

.grid-mod-gallery li:first-child a {
  float: right;
  width: 50%; }

.grid-mod-gallery li:first-child a:hover {
  background: 0 0; }

.grid-mod-gallery li:first-child a:hover span {
  opacity: 0.5; }

.grid-mod-gallery li:last-child a {
  background-color: #dadfe1;
  color: #555;
  padding-top: 30px;
  text-align: center; }

.grid-mod-gallery li.image-small {
  background-size: inherit;
  background-position: center center; }

.grid-mod-gallery .pager {
  background: rgba(0, 0, 0, 0.4);
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  text-shadow: 0 0 2px rgba(0, 0, 0, 0.7);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  line-height: 1;
  padding: 1rem; }
  .grid-mod-gallery .pager i {
    font-size: 28px;
    vertical-align: top; }
  .grid-mod-gallery .pager.next {
    left: 15px; }
  .grid-mod-gallery .pager.prev {
    right: 15px; }

@media only screen and (min-width: 620px) {
  .grid-mod-gallery .gallery-title {
    min-height: 60px; } }

.grid-mod-gallery a:hover .pager {
  background: rgba(0, 0, 0, 0.9); }

.grid-mod-gallery .additional-photos {
  display: block;
  font-size: 40px;
  line-height: 46px;
  font-weight: 700;
  margin-bottom: 0;
  font-family: sans serif; }
  .grid-mod-gallery .additional-photos i {
    margin-left: 5px;
    line-height: 1;
    display: inline-block;
    vertical-align: text-top; }

.grid-mod-gallery .label {
  font-size: 14px;
  line-height: 18px;
  background-color: transparent;
  color: #555555; }

.grid-mod-gallery ul {
  list-style: none;
  height: 400px;
  margin: 0; }

.grid-mod-gallery li {
  height: 25%;
  width: 50%; }

.grid-mod-gallery li:first-child {
  height: 50%;
  width: 100%; }

@media (min-width: 400px) {
  .grid-mod-gallery ul {
    height: 500px; } }

@media (min-width: 500px) {
  .grid-mod-gallery ul {
    height: 540px; } }

.weight-1 .grid-mod-gallery li:nth-child(2n) {
  border-left: 1px solid #fff;
  border-top: 1px solid #fff; }

.weight-1 .grid-mod-gallery li:nth-child(2n + 1) {
  border-top: 1px solid #fff; }

.grid-mod-gallery-wrapper .grid-mod-gallery li {
  border-right: 10px solid #fff;
  border-left: 10px solid #fff;
  border-top: 10px solid #fff;
  height: 20%;
  width: 25%; }

.grid-mod-gallery-wrapper .grid-mod-gallery li:first-child {
  height: 78%;
  width: 100%;
  border-right: none;
  border-left: none;
  border-top: none;
  border-bottom: 1px solid #fff; }

.grid-mod-gallery-wrapper .grid-mod-gallery li:last-child a {
  padding-top: 20px; }

.weight-3 .grid-mod-gallery li,
.weight-4 .grid-mod-gallery li {
  border-bottom: 10px solid #fff;
  border-right: 10px solid #fff;
  border-left: 10px solid #fff;
  height: 25%;
  width: 20%; }

.weight-3 .grid-mod-gallery li:first-child,
.weight-4 .grid-mod-gallery li:first-child {
  border-left: 1px solid #fff;
  border-right: none;
  border-top: none;
  height: 100%;
  width: 80%; }

.weight-3 .grid-mod-gallery li:last-child a,
.weight-4 .grid-mod-gallery li:last-child a {
  padding-top: 24px; }

.weight-3 .grid-mod-gallery .additional-photos,
.weight-4 .grid-mod-gallery .additional-photos {
  font-size: 48px;
  line-height: 52px;
  margin-bottom: 12px;
  margin-bottom: 0; }

.grid-mod-gallery-wrapper .grid-mod-half-height h1,
.weight-3 .grid-mod-gallery .label,
.weight-4 .grid-mod-gallery .label {
  font-size: 26px;
  line-height: 30px; }

@media only screen and (min-width: 620px) {
  .full-article .grid-mod-gallery li {
    border-right: 10px solid #fff;
    border-left: 10px solid #fff;
    border-top: 10px solid #fff;
    height: 20%;
    width: 25%; }
  .full-article .grid-mod-gallery li:first-child {
    height: 78%;
    width: 100%;
    border-right: none;
    border-left: none;
    border-top: none;
    border-bottom: 1px solid #fff; }
  .full-article .grid-mod-gallery li:last-child a {
    padding-top: 20px; } }

@media all and (max-width: 999px) {
  .grid-mod-gallery-wrapper .grid-mod-gallery li:nth-child(2n) {
    border-left: 1px solid #fff;
    border-right: 0 none;
    border-top: 1px solid #fff; }
  .grid-mod-gallery-wrapper .grid-mod-gallery li:nth-child(2n + 1) {
    border-top: 1px solid #fff;
    border-right: 0 none;
    border-left: 0 none; }
  .grid-mod-gallery-wrapper .grid-mod-gallery li:nth-child(n + 2) {
    width: 50%;
    height: 25%; }
  .grid-mod-gallery-wrapper .grid-mod-gallery li:first-child {
    height: 50%; } }

@media all and (min-width: 668px) {
  .grid-mod-gallery-wrapper .grid-mod-gallery li:nth-child(n + 2) {
    height: 25%; } }

@media all and (min-width: 1000px) {
  .grid-mod-gallery-wrapper .grid-mod-gallery li:nth-child(n + 2) {
    height: 20%; } }

body.fullscreen-gallery {
  overflow: hidden; }

.gallery-specific-trigger {
  cursor: pointer; }

.full-gallery,
.full-gallery-specific {
  visibility: hidden;
  opacity: 0;
  -ms-transform: scale(0.5);
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 6050000;
  background: #fff; }

.full-gallery .close,
.full-gallery-specific .close {
  float: left;
  font-size: 32px;
  padding: 14px;
  color: #281E1E;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1; }

.full-gallery .close:hover,
.full-gallery-specific .close:hover {
  color: #ec1a2e; }

.full-gallery .gallery-title,
.full-gallery-specific .gallery-title {
  font-family: "DroidArabicKufi";
  font-size: 20px;
  line-height: 24px;
  padding: 20px;
  padding-left: 4rem; }
  .full-gallery .gallery-title .gallery-icon,
  .full-gallery-specific .gallery-title .gallery-icon {
    color: #ec1a2e; }

.full-gallery .scroller,
.full-gallery-specific .scroller {
  height: 100%;
  overflow: auto; }

.full-gallery .gallery-wrapper,
.full-gallery-specific .gallery-wrapper {
  height: 100vh; }

.gallery-inner {
  height: 100%; }

.full-gallery .images,
.full-gallery-specific .images {
  position: relative;
  float: right;
  width: 100%;
  margin-bottom: 20px;
  height: 100%;
  /** {
    max-height: 100%;
  }*/ }

.full-gallery .images li,
.full-gallery-specific .images li {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center; }

.full-gallery ul,
.full-gallery-specific ul {
  list-style: none;
  margin: 0; }

.full-gallery li,
.full-gallery-specific li {
  display: none !important;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center; }

.full-gallery li.active,
.full-gallery-specific li.active {
  display: block !important; }

.full-gallery li img,
.full-gallery-specific li img {
  max-height: 100%; }

/*
@media only screen and (min-width: 620px) {
  .full-gallery .icon-arrow-left, .full-gallery .icon-arrow-right {
    margin-top: -30px
  }

  .full-gallery .icon-arrow-right:before, .full-gallery .icon-arrow-left:before {
    font-size: 60px
  }
}
*/
.full-gallery .pager,
.full-gallery-specific .pager {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0; }
  .full-gallery .pager i,
  .full-gallery-specific .pager i {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 28px;
    vertical-align: top;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.7);
    padding: 1rem; }
    .full-gallery .pager i:before,
    .full-gallery-specific .pager i:before {
      display: block; }
    [dir="rtl"] .full-gallery .pager i:before, [dir="rtl"]
    .full-gallery-specific .pager i:before {
      -webkit-transform: scaleX(-1);
      -ms-transform: scaleX(-1);
          transform: scaleX(-1);
      -webkit-filter: FlipH;
              filter: FlipH;
      -ms-filter: "FlipH"; }
    .full-gallery .pager i.icon-arrow-left,
    .full-gallery-specific .pager i.icon-arrow-left {
      right: 0;
      /*[dir="rtl"] & {
        right: auto;
        left: 0;
      }*/ }
    .full-gallery .pager i.icon-arrow-right,
    .full-gallery-specific .pager i.icon-arrow-right {
      left: 0;
      /*[dir="rtl"] & {
        right: 0;
        left: auto;
      }*/ }

.full-gallery .pager.prev,
.full-gallery-specific .pager.prev {
  width: 50%;
  right: 0;
  /*[dir="rtl"] & {
    right: auto;
    left: 0;
  }*/ }

.full-gallery .pager.next,
.full-gallery-specific .pager.next {
  left: 0;
  width: 50%;
  /*[dir="rtl"] & {
    right: 0;
    left: auto;
  }*/ }

.gallery-inner .pager.prev:hover i,
.gallery-inner .pager.next:hover i {
  background-color: #ec1a2e; }

.full-gallery .legends,
.full-gallery-specific .legends {
  padding: 20px; }

.full-gallery .legends h2,
.full-gallery-specific .legends h2 {
  font-family: "DroidArabicKufi";
  font-size: 20px;
  font-weight: 700;
  line-height: 19px;
  margin-bottom: 10px; }

.full-gallery .legends h2 .counter,
.full-gallery-specific .legends h2 .counter {
  color: #ec1a2e;
  padding-left: 0.5rem; }

.full-gallery .legends p,
.full-gallery-specific .legends p {
  font-size: 14px;
  line-height: 18px;
  margin-bottom: 10px; }

.full-gallery .legends .credits,
.full-gallery-specific .legends .credits {
  color: #888; }

.full-gallery .legends :last-child,
.full-gallery-specific .legends :last-child {
  margin-bottom: 0; }

.full-gallery .legends a,
.full-gallery-specific .legends a {
  color: #ec1a2e !important; }

.full-gallery .legends a:hover,
.full-gallery-specific .legends a:hover {
  color: #940c19 !important; }

.full-gallery .ad-button,
.full-gallery-specific .ad-button {
  position: absolute;
  bottom: 0;
  width: 100%;
  background: #281E1E; }

.full-gallery .ad-button img,
.full-gallery-specific .ad-button img {
  display: block;
  margin: 0 auto; }

.full-gallery .ad-mpu,
.full-gallery-specific .ad-mpu {
  text-align: center;
  background-color: #f5f5f5; }
  .full-gallery .ad-mpu .premium-content,
  .full-gallery-specific .ad-mpu .premium-content {
    width: 300px; }

@media only screen and (min-width: 930px) {
  .full-gallery .ad-button,
  .full-gallery-specific .ad-button {
    display: none; }
  .full-gallery .ad-mpu,
  .full-gallery .ad-mpu img,
  .full-gallery-specific .ad-mpu,
  .full-gallery .ad-mpu img {
    display: block;
    width: auto; }
  .full-gallery .ad-mpu,
  .full-gallery-specific .ad-mpu {
    float: right;
    padding: 20px; }
  .full-gallery .images,
  .full-gallery-specific .images {
    float: right;
    width: calc(100% - 340px);
    margin-bottom: 0; }
  .full-gallery .legends,
  .full-gallery-specific .legends {
    float: left;
    width: 340px;
    background: rgba(0, 0, 0, 0.03); } }

.full-gallery.gallery-open,
.full-gallery-specific.gallery-open {
  visibility: visible;
  opacity: 1;
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1); }

.premium-content {
  padding: 5px;
  margin: 0 auto 0.75rem; }
  .sidebar-wrap .premium-content {
    margin-bottom: 1.5rem; }
    [dir="rtl"] .sidebar-wrap .premium-content {
      border-top: 1px solid #212121;
      border-bottom: 1px solid #212121;
      padding: 12px 0;
      text-align: center; }
  @media print, screen and (min-width: 48em) {
    .premium-content {
      margin: 0 auto; } }
  @media screen and (min-width: 48em) and (max-width: 63.9375em) {
    .premium-content {
      padding: 5px 0 0; } }
  .premium-content .title {
    font-size: 12px;
    padding: 4px 8px 8px;
    text-transform: uppercase;
    color: rgba(0, 0, 0, 0.2);
    line-height: normal; }
    [dir="ltr"] .premium-content .title {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
    [dir="rtl"] .premium-content .title {
      padding: 0;
      margin-bottom: 14px;
      color: #212121; }
    .premium-content .title h6 {
      font-family: "DroidArabicKufi";
      font-size: 12px;
      font-weight: 700;
      line-height: 1;
      margin: 0; }

.dmpu {
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .dmpu {
      height: 600px;
      margin: 0; } }

.mpu {
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .mpu {
      margin-bottom: 0.2rem; } }

.right-position > .grid-x {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }
  @media print, screen and (min-width: 48em) {
    .right-position > .grid-x {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: row-reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; } }

@media print, screen and (min-width: 48em) {
  .left-position > .grid-x {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; } }

@media screen and (min-width: 48em) and (max-width: 63.9375em) {
  .eight-articles-dmpu .articles-list:not(.cards) .objects-list.has-separator .object-item:last-child {
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #d6d6d6; } }

@media print, screen and (min-width: 64em) {
  .eight-articles-dmpu .articles-list:not(.cards) .media-object .media-object-img {
    width: 138px;
    min-height: 92px; }
    .eight-articles-dmpu .articles-list:not(.cards) .media-object .media-object-img img {
      max-width: 138px; } }

.eight-articles-dmpu .objects-list.has-separator .object-item,
.six-articles-mpu .objects-list.has-separator .object-item {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid #d6d6d6; }
  .eight-articles-dmpu .objects-list.has-separator .object-item:last-child,
  .six-articles-mpu .objects-list.has-separator .object-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0; }

.six-articles-mpu .media-object-img,
.seven-articles .media-object-img {
  position: relative; }
  @media screen and (min-width: 48em) and (max-width: 63.9375em) {
    .six-articles-mpu .media-object-img img,
    .seven-articles .media-object-img img {
      max-width: 126px; } }

.six-articles-mpu .article-item-author,
.seven-articles .article-item-author {
  display: none; }

@media screen and (max-width: 47.9375em) {
  .six-articles-mpu .articles-list,
  .seven-articles .articles-list {
    margin-bottom: 0.5rem; }
  .six-articles-mpu .cell.medium-12 .articles-list .objects-list.has-separator,
  .seven-articles .cell.medium-12 .articles-list .objects-list.has-separator {
    padding-top: 0.5rem;
    border-top: 1px solid #d6d6d6; } }

@media screen and (min-width: 48em) and (max-width: 63.9375em) {
  .six-articles-mpu .cell.medium-12 .articles-list .objects-list,
  .seven-articles .cell.medium-12 .articles-list .objects-list {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 12px; }
  .six-articles-mpu .cell.medium-12 .articles-list .object-item,
  .seven-articles .cell.medium-12 .articles-list .object-item {
    width: calc(33.33% - 8px);
    border: 0;
    margin-bottom: 0;
    padding-bottom: 0; }
  .six-articles-mpu .cell.medium-12 .articles-list .article-item-author,
  .seven-articles .cell.medium-12 .articles-list .article-item-author {
    display: block;
    font-size: 16px; }
  .six-articles-mpu .cell.medium-12 .articles-list .article-item-title h6,
  .seven-articles .cell.medium-12 .articles-list .article-item-title h6 {
    font-size: 19px;
    margin-top: 0.5rem; }
  .six-articles-mpu .cell.medium-12 .articles-list .media-object,
  .seven-articles .cell.medium-12 .articles-list .media-object {
    height: 100%;
    margin-bottom: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    border: 1px solid rgba(0, 0, 0, 0.2);
    padding-bottom: 0; }
    .six-articles-mpu .cell.medium-12 .articles-list .media-object .media-object-section:first-child,
    .seven-articles .cell.medium-12 .articles-list .media-object .media-object-section:first-child {
      padding: 0; }
    .six-articles-mpu .cell.medium-12 .articles-list .media-object .media-object-section:last-child,
    .seven-articles .cell.medium-12 .articles-list .media-object .media-object-section:last-child {
      position: relative;
      min-height: 160px;
      width: 100%;
      padding: 16px; }
    .six-articles-mpu .cell.medium-12 .articles-list .media-object .media-object-img,
    .seven-articles .cell.medium-12 .articles-list .media-object .media-object-img {
      position: relative; }
      .six-articles-mpu .cell.medium-12 .articles-list .media-object .media-object-img:after,
      .seven-articles .cell.medium-12 .articles-list .media-object .media-object-img:after {
        content: "";
        display: block;
        padding-top: 66.8067%;
        width: 100%; }
      .six-articles-mpu .cell.medium-12 .articles-list .media-object .media-object-img img,
      .seven-articles .cell.medium-12 .articles-list .media-object .media-object-img img {
        display: block;
        height: 0;
        max-height: 100%;
        max-width: 100%;
        min-height: 100%;
        min-width: 100%;
        width: 0;
        margin: auto;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; } }

.four-articles .article-item,
.cards-articles .article-item,
.two-articles-compact .article-item {
  border: 1px solid rgba(0, 0, 0, 0.2); }
  .four-articles .article-item.article-hero .article-item-img,
  .cards-articles .article-item.article-hero .article-item-img,
  .two-articles-compact .article-item.article-hero .article-item-img {
    height: auto;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .four-articles .article-item.article-hero.media-video .article-item-img:before, .four-articles .article-item.article-hero.media-audio .article-item-img:before,
  .cards-articles .article-item.article-hero.media-video .article-item-img:before,
  .cards-articles .article-item.article-hero.media-audio .article-item-img:before,
  .two-articles-compact .article-item.article-hero.media-video .article-item-img:before,
  .two-articles-compact .article-item.article-hero.media-audio .article-item-img:before {
    background: rgba(236, 26, 46, 0.8);
    color: #ffffff;
    border-radius: 50%;
    cursor: pointer;
    text-align: center;
    content: "\e90b";
    position: absolute;
    font-family: "icomoon";
    width: 32px;
    height: 32px;
    line-height: 32px;
    font-size: 1.25rem;
    z-index: 1;
    bottom: 0;
    top: -24px;
    left: 0;
    text-indent: 6px;
    margin: 0.5rem; }
    [dir="rtl"] .four-articles .article-item.article-hero.media-video .article-item-img:before, [dir="rtl"] .four-articles .article-item.article-hero.media-audio .article-item-img:before, [dir="rtl"]
    .cards-articles .article-item.article-hero.media-video .article-item-img:before, [dir="rtl"]
    .cards-articles .article-item.article-hero.media-audio .article-item-img:before, [dir="rtl"]
    .two-articles-compact .article-item.article-hero.media-video .article-item-img:before, [dir="rtl"]
    .two-articles-compact .article-item.article-hero.media-audio .article-item-img:before {
      text-indent: -6px;
      right: 0;
      left: initial; }
  [dir="rtl"] .four-articles .article-item.article-hero.media-video-middle .article-item-img:before, [dir="rtl"] .four-articles .article-item.article-hero.media-audio-middle .article-item-img:before, [dir="rtl"]
  .cards-articles .article-item.article-hero.media-video-middle .article-item-img:before, [dir="rtl"]
  .cards-articles .article-item.article-hero.media-audio-middle .article-item-img:before, [dir="rtl"]
  .two-articles-compact .article-item.article-hero.media-video-middle .article-item-img:before, [dir="rtl"]
  .two-articles-compact .article-item.article-hero.media-audio-middle .article-item-img:before {
    top: initial;
    bottom: -24px;
    right: 0;
    left: initial;
    left: 0;
    right: initial; }
  .four-articles .article-item.article-hero.media-audio .article-item-img:before,
  .cards-articles .article-item.article-hero.media-audio .article-item-img:before,
  .two-articles-compact .article-item.article-hero.media-audio .article-item-img:before {
    content: "\e91e"; }

.four-articles .article-item-content,
.cards-articles .article-item-content,
.two-articles-compact .article-item-content {
  position: relative;
  width: 100%;
  padding: 1rem; }
  @media print, screen and (min-width: 48em) {
    .block-wrapper .four-articles .article-item-content, .block-wrapper
    .cards-articles .article-item-content, .block-wrapper
    .two-articles-compact .article-item-content {
      min-height: initial; } }

.four-articles .article-item-content1,
.cards-articles .article-item-content1,
.two-articles-compact .article-item-content1 {
  position: relative;
  width: 100%;
  padding: 0.5rem;
  margin-bottom: 40px; }
  @media print, screen and (min-width: 48em) {
    .block-wrapper .four-articles .article-item-content1, .block-wrapper
    .cards-articles .article-item-content1, .block-wrapper
    .two-articles-compact .article-item-content1 {
      min-height: initial; } }

.four-articles .article-item-author,
.cards-articles .article-item-author,
.two-articles-compact .article-item-author {
  font-size: 16px; }

.four-articles .article-item-img,
.cards-articles .article-item-img,
.two-articles-compact .article-item-img {
  height: auto; }

.four-articles .article-item-desc,
.cards-articles .article-item-desc,
.two-articles-compact .article-item-desc {
  font-size: 15px; }

.four-articles .article-item-title h4,
.cards-articles .article-item-title h4,
.two-articles-compact .article-item-title h4 {
  font-weight: 500;
  font-size: 14px; }
  [dir="rtl"] .four-articles .article-item-title h4, [dir="rtl"]
  .cards-articles .article-item-title h4, [dir="rtl"]
  .two-articles-compact .article-item-title h4 {
    font-weight: 800;
    font-size: 17px; }
  .urdu-theme .four-articles .article-item-title h4, .urdu-theme
  .cards-articles .article-item-title h4, .urdu-theme
  .two-articles-compact .article-item-title h4 {
    font-size: 19px;
    line-height: 0.8; }
  @media screen and (min-width: 22.5em) {
    .four-articles .article-item-title h4,
    .cards-articles .article-item-title h4,
    .two-articles-compact .article-item-title h4 {
      font-size: 17px; } }
  @media print, screen and (min-width: 64em) {
    .four-articles .article-item-title h4,
    .cards-articles .article-item-title h4,
    .two-articles-compact .article-item-title h4 {
      font-size: 19px; } }

.four-articles .article-item-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.four-articles .article-item-author {
  margin-top: auto; }

.four-articles .article-item.article-hero .article-item-img {
  -webkit-box-flex: 0;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  height: 128px; }
  @media print, screen and (min-width: 48em) {
    .four-articles .article-item.article-hero .article-item-img {
      height: 152px; } }

.four-articles1 .article-item.article-hero.media-video .abs-bottom-element,
.four-articles1 .article-item.article-hero.media-audio .abs-bottom-element,
.cards-articles .article-item.article-hero.media-video .abs-bottom-element,
.cards-articles .article-item.article-hero.media-audio .abs-bottom-element,
.two-articles-compact .article-item.article-hero.media-video .abs-bottom-element,
.two-articles-compact .article-item.article-hero.media-audio .abs-bottom-element {
  padding-top: 20px;
  margin-top: -80px;
  margin-bottom: 8px; }

@media screen and (max-width: 47.9375em) {
  .four-articles1 .cell.medium-6.large-6,
  .cards-articles .cell.medium-6.large-6,
  .two-articles-compact .cell.medium-6.large-6 {
    width: 97.5%;
    margin-bottom: 0.5rem; } }

.four-articles1 .article-item,
.cards-articles .article-item,
.two-articles-compact .article-item {
  border: 1px solid rgba(0, 0, 0, 0.2); }
  .four-articles1 .article-item.article-hero .article-item-img,
  .cards-articles .article-item.article-hero .article-item-img,
  .two-articles-compact .article-item.article-hero .article-item-img {
    height: auto; }
  .four-articles1 .article-item.article-hero.media-video .article-item-img:before, .four-articles1 .article-item.article-hero.media-audio .article-item-img:before,
  .cards-articles .article-item.article-hero.media-video .article-item-img:before,
  .cards-articles .article-item.article-hero.media-audio .article-item-img:before,
  .two-articles-compact .article-item.article-hero.media-video .article-item-img:before,
  .two-articles-compact .article-item.article-hero.media-audio .article-item-img:before {
    background: rgba(236, 26, 46, 0.8);
    color: #ffffff;
    border-radius: 50%;
    cursor: pointer;
    text-align: center;
    position: absolute;
    font-family: "icomoon";
    width: 32px;
    height: 32px;
    line-height: 32px;
    font-size: 1.25rem;
    z-index: 1;
    bottom: 0;
    top: -24px;
    left: 0;
    text-indent: 6px;
    margin: 0.5rem; }
    [dir="rtl"] .four-articles1 .article-item.article-hero.media-video .article-item-img:before, [dir="rtl"] .four-articles1 .article-item.article-hero.media-audio .article-item-img:before, [dir="rtl"]
    .cards-articles .article-item.article-hero.media-video .article-item-img:before, [dir="rtl"]
    .cards-articles .article-item.article-hero.media-audio .article-item-img:before, [dir="rtl"]
    .two-articles-compact .article-item.article-hero.media-video .article-item-img:before, [dir="rtl"]
    .two-articles-compact .article-item.article-hero.media-audio .article-item-img:before {
      text-indent: -6px; }
  .four-articles1 .article-item.article-hero.media-audio .article-item-img:before,
  .cards-articles .article-item.article-hero.media-audio .article-item-img:before,
  .two-articles-compact .article-item.article-hero.media-audio .article-item-img:before {
    content: "\e91e"; }

.four-articles1 .article-item-content,
.cards-articles .article-item-content,
.two-articles-compact .article-item-content {
  position: relative;
  width: 100%;
  padding: 1rem; }
  @media print, screen and (min-width: 48em) {
    .block-wrapper .four-articles1 .article-item-content, .block-wrapper
    .cards-articles .article-item-content, .block-wrapper
    .two-articles-compact .article-item-content {
      min-height: initial; } }

.four-articles1 .article-item-content1,
.cards-articles .article-item-content1,
.two-articles-compact .article-item-content1 {
  position: relative;
  width: 100%;
  padding: 0.5rem;
  margin-bottom: 40px; }
  @media print, screen and (min-width: 48em) {
    .block-wrapper .four-articles1 .article-item-content1, .block-wrapper
    .cards-articles .article-item-content1, .block-wrapper
    .two-articles-compact .article-item-content1 {
      min-height: initial; } }

.four-articles1 .article-item-author,
.cards-articles .article-item-author,
.two-articles-compact .article-item-author {
  font-size: 16px; }

.four-articles1 .article-item-img,
.cards-articles .article-item-img,
.two-articles-compact .article-item-img {
  height: auto; }

.four-articles1 .article-item-desc,
.cards-articles .article-item-desc,
.two-articles-compact .article-item-desc {
  font-size: 15px; }

.four-articles1 .article-item-title h4,
.cards-articles .article-item-title h4,
.two-articles-compact .article-item-title h4 {
  font-weight: 500;
  font-size: 14px; }
  [dir="rtl"] .four-articles1 .article-item-title h4, [dir="rtl"]
  .cards-articles .article-item-title h4, [dir="rtl"]
  .two-articles-compact .article-item-title h4 {
    font-weight: 800;
    font-size: 17px; }
  .urdu-theme .four-articles1 .article-item-title h4, .urdu-theme
  .cards-articles .article-item-title h4, .urdu-theme
  .two-articles-compact .article-item-title h4 {
    line-height: 1.6; }
  @media screen and (min-width: 22.5em) {
    .four-articles1 .article-item-title h4,
    .cards-articles .article-item-title h4,
    .two-articles-compact .article-item-title h4 {
      font-size: 17px; } }
  @media print, screen and (min-width: 64em) {
    .four-articles1 .article-item-title h4,
    .cards-articles .article-item-title h4,
    .two-articles-compact .article-item-title h4 {
      font-size: 19px; } }

.four-articles1 article.article-item.article-hero.media-video,
.cards-articles article.article-item.article-hero.media-video,
.two-articles-compact article.article-item.article-hero.media-video {
  border: 0px;
  margin-bottom: 9px; }

@media print, screen and (min-width: 48em) {
  .two-articles-compact .article-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .two-articles-compact .article-item-img {
    width: 50%; }
  .two-articles-compact .article-item-content {
    width: 50%; } }

@media print, screen and (min-width: 48em) {
  .three-articles .article-item.article-hero {
    height: 220px; } }

@media print, screen and (min-width: 64em) {
  .three-articles .article-item.article-hero {
    height: 300px; } }

.three-articles .article-item.article-hero h4 {
  font-size: 17px; }

.urdu-theme .three-articles .article-item.article-hero h4 {
  font-size: 22px; }

.splash-row > .grid-x > .cell.large-8 > .article-item.media-video .abs-bottom-element,
.splash-row > .grid-x > .cell.large-8 > .article-item.media-audio .abs-bottom-element {
  padding-top: 40px; }

.splash-row .articles-list .article-item.article-hero {
  margin-bottom: 0.5rem; }

.splash-row .articles-list.has-related .article-item.article-hero {
  margin-bottom: 0; }

.splash-row .articles-list.has-related .abs-bottom-element {
  padding-bottom: 0;
  padding-right: 8px;
  padding-left: 8px; }
  .splash-row .articles-list.has-related .abs-bottom-element .article-item-title a {
    border-right: 1px solid #fff;
    padding: 0 0 8px 8px; }
    [dir="rtl"] .splash-row .articles-list.has-related .abs-bottom-element .article-item-title a {
      padding: 0 8px 8px 0; }

.splash-row .articles-list.has-related .headlines-list {
  border-right: 1px solid #000000;
  padding-top: 0.5rem;
  margin: 0 0 0.5rem 0.5rem; }
  [dir="rtl"] .splash-row .articles-list.has-related .headlines-list {
    margin: 0 0.5rem 0.5rem 0; }
  .splash-row .articles-list.has-related .headlines-list li {
    margin-top: 0; }
    .splash-row .articles-list.has-related .headlines-list li a {
      font-weight: 500;
      line-height: 1.25; }

.eight-articles .articles-list .objects-list.has-separator .object-item:first-child {
  margin-top: 0; }

@media screen and (max-width: 47.9375em) {
  .seven-articles .grid-x > div:first-child,
  .two-articles .grid-x > div:first-child {
    margin-bottom: 0.5rem; } }

@media print, screen and (min-width: 64em) {
  .eng-theme .eight-articles-dmpu .articles-list .article-item-title h6,
  .turkish-theme .eight-articles-dmpu .articles-list .article-item-title h6 {
    font-size: 17px; } }

.articles-list {
  /*@include breakpoint(small only) {
    margin-bottom: 0.5rem;
  }*/ }
  @media screen and (max-width: 47.9375em) {
    .articles-list.cards .objects-list {
      position: relative;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-top: 12px;
      margin-bottom: 12px; }
    .articles-list.cards .object-item {
      width: calc(50% - 3px);
      border: 0 !important;
      margin-bottom: 0 !important;
      padding-bottom: 0 !important; }
    .articles-list.cards .article-item-author {
      display: block;
      font-size: 16px; }
    .articles-list.cards .article-item-title h6 {
      font-size: 16px;
      margin-top: 0.5rem; }
    .articles-list.cards .media-object {
      height: 100%;
      margin-bottom: 0;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
      border: 1px solid rgba(0, 0, 0, 0.2);
      padding-bottom: 0; }
      .articles-list.cards .media-object .media-object-section:first-child {
        padding: 0; }
      .articles-list.cards .media-object .media-object-section:last-child {
        position: relative;
        min-height: 160px;
        width: 100%;
        padding: 16px; }
      .articles-list.cards .media-object .media-object-img:not([data-media="jwVideo"]) {
        position: relative; }
        .articles-list.cards .media-object .media-object-img:not([data-media="jwVideo"]):after {
          content: "";
          display: block;
          padding-top: 66.8067%;
          width: 100%; }
        .articles-list.cards .media-object .media-object-img:not([data-media="jwVideo"]) img {
          display: block;
          height: 0;
          max-height: 100%;
          max-width: 100%;
          min-height: 100%;
          min-width: 100%;
          width: 0;
          margin: auto;
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0; } }
  @media print, screen and (min-width: 64em) {
    .articles-list.cards {
      height: 100%; }
      .articles-list.cards .objects-list {
        position: relative;
        height: 100%; }
      .articles-list.cards .media-object {
        height: 100%;
        margin-bottom: 0; } }
    @media print, screen and (min-width: 64em) and (min-width: 64em) {
      .articles-list.cards .media-object {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: column-reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse;
        border: 1px solid rgba(0, 0, 0, 0.2);
        padding-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
        .articles-list.cards .media-object .media-object-section {
          -webkit-box-flex: 1;
          -webkit-flex: 1;
              -ms-flex: 1;
                  flex: 1; }
        .articles-list.cards .media-object .media-object-section:first-child {
          padding: 0; }
        .articles-list.cards .media-object .media-object-section:last-child {
          position: relative;
          width: 100%;
          padding: 16px; }
        .articles-list.cards .media-object .media-object-img {
          position: relative; }
          .articles-list.cards .media-object .media-object-img img {
            display: block;
            height: 0;
            max-height: 100%;
            max-width: 100%;
            min-height: 100%;
            min-width: 100%;
            width: 0;
            margin: auto;
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .articles-list.cards .object-item {
      position: absolute;
      height: 49.4%;
      width: 100%; }
      .articles-list.cards .object-item:last-child {
        margin-bottom: 0;
        bottom: 0; } }

.author-name {
  color: #ec1a2e;
  font-weight: 700;
  font-size: 14px; }
  .urdu-theme .author-name {
    font-style: normal; }

.author-headline {
  font-style: italic;
  font-weight: 500;
  letter-spacing: 0.22px;
  line-height: 1.4; }
  .eng-theme .author-headline,
  .turkish-theme .author-headline {
    font-size: 14px; }
  .author-headline a {
    color: #000000; }
    .author-headline a:hover {
      color: #ec1a2e; }

.three-articles-headshots {
  border-top: 1px solid #d6d6d6;
  border-bottom: 1px solid #d6d6d6;
  background: #f5f5f5;
  margin-bottom: 16px; }
  @media print, screen and (min-width: 48em) {
    .three-articles-headshots .slick-track {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .three-articles-headshots .slick-track .slick-slide {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        height: auto; } }
  .three-articles-headshots .media-object-img {
    position: relative;
    height: 100%; }
    .three-articles-headshots .media-object-img a {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: end;
      -webkit-align-items: end;
          -ms-flex-align: end;
              align-items: end;
      -webkit-box-pack: end;
      -webkit-justify-content: end;
          -ms-flex-pack: end;
              justify-content: end;
      -webkit-align-content: end;
          -ms-flex-line-pack: end;
              align-content: end;
      position: relative;
      height: 100%; }
  .three-articles-headshots .carousel-items {
    overflow-y: hidden;
    padding: 0 2.5rem; }
  .three-articles-headshots .media-object {
    margin-bottom: 0; }
  .three-articles-headshots .author-name {
    margin-bottom: 8px; }
  .three-articles-headshots .media-object-section-content {
    padding: 8px 0; }
    @media screen and (max-width: 47.9375em) {
      .three-articles-headshots .media-object-section-content .author-headline a {
        font-size: 13px;
        display: block; }
        .urdu-theme .three-articles-headshots .media-object-section-content .author-headline a {
          font-size: 20px; } }
  @media print, screen and (min-width: 64em) {
    .three-articles-headshots .carousel-items {
      padding: 0; } }
  [dir="rtl"] .three-articles-headshots .author-headline {
    font-size: 14px;
    font-style: normal; }
  .urdu-theme .three-articles-headshots .author-headline {
    font-size: 18px;
    margin-top: 7px; }
  .persian-theme .three-articles-headshots .author-headline {
    font-size: 15px; }

.author-field {
  text-align: center; }
  .author-field .media-object {
    margin-bottom: 0; }
  @media print, screen and (min-width: 48em) {
    .author-field {
      text-align: right; }
      .author-field .media-object {
        margin-bottom: 1rem; } }

.author-field-img img {
  max-width: 75px; }

.author-field-name {
  color: #ec1a2e;
  font-size: 26px;
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  margin-top: 0.5rem; }
  [dir="rtl"] .author-field-name {
    line-height: 1.3; }

.author-field-job-title {
  font-family: "DroidArabicKufi";
  font-size: 19px;
  font-weight: 300;
  color: #888888;
  display: inline-block;
  vertical-align: middle; }

.author-field-social {
  display: inline-block;
  vertical-align: middle; }
  .author-field-social a {
    font-family: "DroidArabicKufi";
    font-size: 19px;
    font-weight: 300;
    color: #888888; }
    .author-field-social a:before {
      color: #888888;
      content: "|";
      margin-left: 5px; }

.author-field-bio {
  font-size: 17px;
  line-height: 1.4;
  font-weight: 300; }
  @media print, screen and (min-width: 48em) {
    .author-field-bio {
      margin-top: 1rem;
      margin-bottom: 1rem; } }

.i100-block {
  width: 100%; }

.inline-gallery {
  font-family: "DroidArabicKufi";
  border-top: 1px solid #d6d6d6;
  border-bottom: 1px solid #d6d6d6;
  padding: 4px 0 16px;
  margin-bottom: 16px; }

span.gallery-icon {
  width: 24px;
  height: 18px;
  display: inline-block;
  margin-left: 8px; }

.inline-gallery-before {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 8px 0; }
  .inline-gallery-before h4 {
    font-family: inherit;
    font-size: 18px;
    font-weight: 700;
    margin-left: 8px;
    text-overflow: ellipsis;
    overflow: hidden;
    line-height: 1.2;
    white-space: nowrap;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .inline-gallery-before .inline-gallery-count {
    white-space: nowrap;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #ec1a2e;
    font: 700 14px Independent Sans, sans-serif;
    cursor: pointer; }
    .inline-gallery-before .inline-gallery-count:hover {
      color: #940c19; }

.inline-gallery-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 49.5%;
  width: 100%;
  position: relative; }
  @media print, screen and (min-width: 48em) {
    .inline-gallery-inner {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; } }

.inline-gallery-preview {
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
  padding-top: 66%; }
  .inline-gallery-preview .sizer {
    padding-top: 80%; }
  @media print, screen and (min-width: 48em) {
    .inline-gallery-preview {
      width: 75%; } }
  .inline-gallery-preview .chevron-icon {
    position: absolute;
    right: 0;
    top: 50%;
    z-index: 3;
    width: 50px;
    height: 50px;
    line-height: 50px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    text-align: center;
    color: #ffffff;
    font-size: 20px; }
    .inline-gallery-preview .chevron-icon.next-icon {
      right: auto;
      left: 0; }
    [dir="rtl"] .inline-gallery-preview .chevron-icon {
      right: auto;
      left: 0; }
      [dir="rtl"] .inline-gallery-preview .chevron-icon.next-icon {
        right: 0;
        left: auto; }

.inline-gallery-thumbnails {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  margin-top: 12px; }
  @media print, screen and (min-width: 48em) {
    .inline-gallery-thumbnails {
      height: auto;
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-top: 0;
      margin-right: 12px; } }

.gallery-thumbnail {
  position: relative;
  height: calc(100% - 20px);
  width: calc(100% / 3 - 8px);
  cursor: pointer; }
  @media print, screen and (min-width: 48em) {
    .gallery-thumbnail {
      width: 100%;
      height: calc(33.3% - 8px); } }
  .gallery-thumbnail .sizer {
    padding-top: 80%; }

.author-avatar {
  width: 72px;
  height: 72px;
  overflow: hidden;
  border-radius: 50%;
  margin: 16px 8px 0 0;
  background-color: #ed1b2f; }
  @media screen and (max-width: 47.9375em) {
    [dir="rtl"] .author-avatar {
      margin-right: 0; } }
  @media print, screen and (min-width: 48em) {
    .author-avatar {
      width: 125px;
      height: 125px;
      margin-right: 16px;
      margin-bottom: 16px;
      margin-left: 16px; } }
  @media print, screen and (min-width: 64em) {
    .author-avatar {
      width: 137px;
      height: 137px;
      margin-right: auto; } }
  .has-avatar .author-avatar {
    float: right;
    margin-top: 0; }

.search-form-wrapper {
  margin-bottom: 2.5rem; }
  .search-form-wrapper .page-title {
    margin-bottom: 1rem;
    color: #303638;
    text-transform: capitalize; }
    .search-form-wrapper .page-title h1 {
      font-size: 2rem;
      margin-bottom: 0; }
      .search-form-wrapper .page-title h1 a {
        color: #281E1E; }

.search-form-main.searchbox > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .search-form-main.searchbox > div .form-item.form-type-textfield {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    height: auto;
    min-width: 0; }

.search-form-main input.input-group-field {
  background-color: #fdfdfc; }

.search-form-main .input-group-button {
  padding-right: 1rem; }

.search-form-main .button {
  font-family: "icomoon";
  font-size: 1.125rem;
  background-color: #281E1E;
  width: 45px;
  padding: 0;
  color: #ffffff; }
  .search-form-main .button:hover {
    background-color: #ec1a2e; }
  @media print, screen and (min-width: 48em) {
    .search-form-main .button {
      min-width: 5rem; } }

.search-meta {
  font-family: "DroidArabicKufi";
  font-weight: 500;
  font-size: 13px; }
  .search-meta .search-term {
    color: #5f7176; }
    .search-meta .search-term span {
      font-family: "DroidArabicKufi"; }
  .search-meta .typo {
    font-family: "DroidArabicKufi";
    color: #000000; }
    .search-meta .typo span {
      color: #ec1a2e;
      text-transform: uppercase; }

.posts-list .article-item {
  font-family: "DroidArabicKufi";
  margin-bottom: 2rem; }

.posts-list .article-item-img {
  margin-bottom: 0.75rem; }

.article-item-meta {
  color: rgba(40, 30, 30, 0.6); }
  .article-item-meta a {
    color: rgba(236, 26, 46, 0.8); }
    .article-item-meta a:hover {
      color: #000000; }
  .horoscopes-articles .article-item-meta {
    margin-bottom: 0.5rem; }

.entry-video-container {
  padding: 16px 0;
  background: #000000;
  color: #ffffff;
  overflow: hidden;
  margin-bottom: 24px; }
  .entry-video-container h1 {
    font-size: 21px; }
    @media print, screen and (min-width: 48em) {
      .entry-video-container h1 {
        font-size: 36px; } }
  .entry-video-container .entry-subtitle h2,
  .entry-video-container .entry-meta-field span,
  .entry-video-container .entry-meta-field time,
  .entry-video-container .entry-meta-field:after {
    color: #dadfe1; }
  .entry-video-container .author-twitter a,
  .entry-video-container .entry-meta-comment a {
    color: #dadfe1; }
    .entry-video-container .author-twitter a:hover,
    .entry-video-container .entry-meta-comment a:hover {
      color: #ec1a2e; }
  .entry-video-container .entry-meta-shares-count span {
    color: #ec1a2e; }

.branding {
  margin-top: -0.25rem;
  color: #999999;
  font-size: 12px;
  line-height: 1; }
  .branding a {
    color: inherit; }
    .branding a:hover {
      color: #ec1a2e; }

.show-for-printable-area {
  display: none; }

@media print {
  /*.injected-block, .entry-promoted-stories, .share-block, .follow-block, .inline-gallery, .full-gallery, .responsive-embed, iframe {
    display: none;
  }*/
  /*
   header, footer, .sidebar-wrap-holder, .breadcrumbs-wrapper, .entry-tags, .entry-comments, .injected-block, .entry-promoted-stories, .share-block, .follow-block, .inline-gallery, .full-gallery, .responsive-embed, iframe {
     display: none;
   }
   .content-wrap-holder {
     width: 100%;
     max-width: none;
   }
   .entry-title h1 {
     font-size: 2.5rem;
   }
   .entry-meta {
     width: 100%;
     max-width: none;
   }
   .entry-header.has-avatar .entry-meta-wrapper > .grid-x > .cell.shrink {
     max-width: none;
   }
   */ }

.urdu-theme * {
  word-spacing: -1px;
  letter-spacing: 0 !important; }

.horoscope-item {
  max-width: 320px;
  margin: 0 auto 2rem; }
  .horoscope-item a {
    color: #000000; }
    .horoscope-item a:hover {
      color: #ec1a2e; }

.horoscope-item-img {
  margin-bottom: 1rem;
  position: relative;
  padding: 1rem 1.5rem 0; }
  @media screen and (min-width: 30em) {
    .horoscope-item-img {
      padding: 1rem 3rem 0; } }
  .horoscope-item-img img {
    border-radius: 50%;
    padding: 15px;
    border: silver solid 1px; }
  .daily-horoscopes .horoscope-item-img a:after {
    content: "يومي"; }
  .weekly-horoscopes .horoscope-item-img a:after {
    content: "أسبوعي"; }
  .monthly-horoscopes .horoscope-item-img a:after {
    content: "شهري"; }
  .daily-horoscopes .horoscope-item-img a,
  .weekly-horoscopes .horoscope-item-img a,
  .monthly-horoscopes .horoscope-item-img a {
    display: block; }
    .daily-horoscopes .horoscope-item-img a:hover,
    .weekly-horoscopes .horoscope-item-img a:hover,
    .monthly-horoscopes .horoscope-item-img a:hover {
      opacity: 0.7; }
      .daily-horoscopes .horoscope-item-img a:hover:after,
      .weekly-horoscopes .horoscope-item-img a:hover:after,
      .monthly-horoscopes .horoscope-item-img a:hover:after {
        background-color: #ec1a2e; }
    .daily-horoscopes .horoscope-item-img a:after,
    .weekly-horoscopes .horoscope-item-img a:after,
    .monthly-horoscopes .horoscope-item-img a:after {
      display: block;
      position: absolute;
      bottom: 1rem;
      right: 1rem;
      background-color: #000000;
      color: #ffffff;
      text-transform: uppercase;
      width: 60px;
      height: 60px;
      line-height: 60px;
      text-align: center;
      font-size: 0.75rem;
      font-weight: bold;
      border-radius: 50%; }
      @media print, screen and (min-width: 48em) {
        .daily-horoscopes .horoscope-item-img a:after,
        .weekly-horoscopes .horoscope-item-img a:after,
        .monthly-horoscopes .horoscope-item-img a:after {
          font-size: 16px;
          width: 80px;
          height: 80px;
          line-height: 80px; } }

.horoscope-item-meta {
  margin-bottom: 0.625rem;
  font-size: 15px;
  text-transform: uppercase; }

.horoscope-item-name {
  margin-bottom: 0.625rem; }

.horoscope-item-range {
  font-size: 15px; }

.related-horoscope {
  border-top: 6px solid #000000;
  padding-top: 1rem;
  margin-bottom: 2rem; }
  .related-horoscope img {
    max-width: 100px; }

/* ----- Live blog list styles ------ START ------ */
.RecentPostsWidget iframe[src*="jwplayer"] {
  width: 100%; }

@media print, screen and (min-width: 64em) {
  .liveblog-capsule {
    padding-right: 0.3125rem;
    padding-left: 0.3125rem;
    max-width: 61.5rem;
    margin: 0 auto;
    padding: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 48em) {
    .liveblog-capsule {
      padding-right: 0.375rem;
      padding-left: 0.375rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .liveblog-capsule {
      padding-right: 0.5rem;
      padding-left: 0.5rem; } }

.liveblog-capsule .inner {
  font-family: "DroidArabicKufi";
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 16px;
  background: #f7f7f7; }

.liveblog-capsule.active .inner {
  background: #fffd38; }

.liveblog-capsule span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 8px; }
  .liveblog-capsule span:first-child {
    text-transform: uppercase;
    font-size: 20px;
    margin-left: 16px; }
    [dir="rtl"] .liveblog-capsule span:first-child {
      font-size: 18px; }
    .liveblog-capsule span:first-child:before {
      content: " ";
      background: url(../img/icon-live-blog.png) no-repeat 50%;
      width: 20px;
      height: 15px;
      background-size: contain;
      margin-left: 8px; }

.liveblog-capsule time {
  font-size: 20px; }
  [dir="rtl"] .liveblog-capsule time {
    font-size: 18px; }

body.article-liveblog .entry-article-liveblog {
  background: #f7f7f7;
  border-top: 1px solid #dadfe1;
  padding-top: 18px; }
  @media (min-width: 768px) {
    body.article-liveblog .entry-article-liveblog {
      padding-top: 12px; } }

.liveblog .content {
  font-family: "DroidArabicKufi";
  padding: 20px;
  border: 1px solid #888;
  line-height: 1.5; }
  .liveblog .content img {
    width: 100%; }
  .liveblog .content .twitter-widget {
    margin: 0 auto; }

.liveblog .liveblog-content .content,
.lb-items {
  position: relative; }

.lb-items ul {
  list-style: none;
  margin: 0;
  padding: 0; }

.lb-item {
  color: #281e1e; }

.liveblog .liveblog-content:before {
  content: " ";
  border: 1px solid #888;
  position: absolute;
  margin: -24px 0 0 28px;
  height: 68px; }
  [dir="rtl"] .liveblog .liveblog-content:before {
    margin: -24px 28px 0 0; }

.liveblog .post-date {
  position: relative;
  font: 700 17px Independent Sans, sans-serif;
  padding-right: 20px;
  margin: 24px 0 24px 20px;
  color: #888; }
  [dir="rtl"] .liveblog .post-date {
    margin: 24px 20px 24px 0; }

.liveblog .post-date:before {
  content: " ";
  border-radius: 50%;
  border: 2px solid #888;
  position: absolute;
  top: -1px;
  margin-right: -20px;
  width: 19px;
  height: 19px;
  background: #fff; }

.liveblog .post-date time {
  padding-right: 8px; }

.liveblog .post-footer {
  padding: 16px 20px;
  background: #fff;
  position: relative;
  border: 1px solid #888;
  border-width: 0 1px 1px; }

.liveblog .post-footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "DroidArabicKufi";
  font-size: 14px; }

.liveblog .post-footer ul li.author-name {
  color: #ec1a2e;
  font-weight: 700;
  font-style: normal; }

.liveblog .post-footer ul li:first-child {
  padding-right: 0; }

.liveblog .post-footer ul li {
  padding: 0 8px; }

.liveblog .post-footer ul li:last-child {
  color: #888;
  position: relative; }

.liveblog .post-footer ul li:last-child:before {
  content: "|";
  position: absolute;
  right: -1px; }

.highlights-wrapper {
  clear: both; }

.highlights {
  color: #281e1e;
  border: 1px solid #cfcfcf;
  padding: 20px;
  margin-bottom: 16px;
  background: #fff; }
  .highlights a:hover {
    color: #ec1a2e; }
  .highlights ul {
    margin: 0; }

@media (min-width: 768px) {
  .highlights h2 {
    font-size: 16px; } }

.highlights h2 {
  font-family: "DroidArabicKufi";
  font-size: 1.125rem;
  margin-bottom: 16px;
  text-transform: uppercase; }

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

.highlights li {
  position: relative;
  list-style: normal;
  padding-bottom: 26px;
  padding-right: 31px;
  font-size: 14px;
  font-weight: 700;
  padding-top: 4px;
  list-style-type: none; }
  .highlights li:before {
    content: " ";
    width: 19px;
    height: 19px;
    display: block;
    background: transparent url(../img/svg/white_arrow.svg) no-repeat;
    background-size: 19px;
    border-radius: 50%;
    padding-top: 4px;
    position: absolute;
    right: 2px;
    top: 0;
    z-index: 2; }
    [dir="rtl"] .highlights li:before {
      -webkit-transform: scaleX(-1);
      -ms-transform: scaleX(-1);
          transform: scaleX(-1);
      -webkit-filter: FlipH;
              filter: FlipH;
      -ms-filter: "FlipH";
      top: 2px; }
  .highlights li:after {
    content: "";
    width: 2px;
    background: #dadfe1;
    height: 100%;
    position: absolute;
    right: 11px;
    top: 0; }
  .highlights li:last-child:after {
    display: none; }

.highlights li a {
  color: inherit; }

#live-list-update-button {
  width: 100%;
  background: #fffd38;
  border: 1px solid #888;
  display: none;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 15px 20px 10px;
  outline: none;
  color: #281e1e;
  cursor: pointer;
  font-family: "DroidArabicKufi";
  font-size: 16px; }
  #live-list-update-button.active {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  #live-list-update-button #live-list-update-button .update-text {
    padding-left: 10px;
    line-height: 1; }
  #live-list-update-button .icon-refresh {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-right: 0.75rem; }

.liveblog .pagination-wrapper {
  overflow: hidden;
  position: relative;
  margin-bottom: 3rem; }
  .liveblog .pagination-wrapper:before {
    width: 2px;
    background: #888;
    content: " ";
    position: absolute;
    right: 28px;
    height: 100%; }
  .liveblog .pagination-wrapper .pagination {
    font-family: "DroidArabicKufi";
    font-weight: bold;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 20px;
    margin: 30px 0 0;
    background: #ffffff;
    border: 1px solid #888888;
    position: relative; }
    .liveblog .pagination-wrapper .pagination .prev {
      margin-left: auto; }
    .liveblog .pagination-wrapper .pagination .next {
      margin-right: auto; }
    .liveblog .pagination-wrapper .pagination .shortcut {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .liveblog .pagination-wrapper .pagination .shortcut > * {
        margin: 0 10px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        font: 700 16px "Independent Sans", sans-serif; }
    .liveblog .pagination-wrapper .pagination a {
      padding: 0;
      color: #ec1a2e; }
      .liveblog .pagination-wrapper .pagination a:hover {
        background: transparent;
        color: #281E1E; }

.icon-holder.abs-element {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  z-index: 1;
  text-align: center; }
  .icon-holder.abs-element i {
    font-size: 2rem;
    padding: 1rem;
    background-color: #f9f9f9;
    border-radius: 10px;
    display: inline-block;
    vertical-align: middle; }
    .icon-holder.abs-element i.icon-facebook {
      background-color: #5168a4;
      color: #ffffff; }
    .icon-holder.abs-element i.icon-twitter, .icon-holder.abs-element i.icon-twitter-x {
      background-color: #00a6d4;
      color: #ffffff; }
    .icon-holder.abs-element i.icon-youtube {
      background-color: #bb0000;
      color: #ffffff; }

/* ----- Live blog list styles ------ END ------ */
.subscribe-field-title {
  text-transform: uppercase;
  font-family: "DroidArabicKufi";
  font-size: 2.25rem;
  font-weight: 500;
  line-height: 1; }

.subscribe-blocks .grid-items {
  height: 100%; }

.subscribe-blocks .article-item {
  height: calc(100% - 1rem); }
  .subscribe-blocks .article-item .article-item-img {
    height: 100%; }

.subscribe-blocks .article-item-img a:after {
  z-index: 1; }

.card-item {
  border: 1px solid #e5e8ea; }

.article-book .entry-article-topper {
  max-width: 1240px; }

.article-book .entry-header {
  text-align: center; }

.article-book .entry-header.has-avatar .entry-subtitle {
  float: none;
  width: 100%; }
  .article-book .entry-header.has-avatar .entry-subtitle h2 {
    color: #888;
    font-size: 21px; }

.article-book .author-avatar {
  float: none;
  margin: 1rem auto; }

.article-book .entry-header.has-avatar .entry-meta-wrapper {
  float: none;
  width: 100%; }

.article-book .entry-media-inner {
  padding: 0 2rem; }

@media print, screen and (min-width: 64em) {
  .article-book .entry-article-topper .caption-field {
    position: absolute;
    left: 0;
    width: calc((100% - 800px) / 2); } }

.first-letter {
  font-size: 52px;
  width: 52px;
  height: 52px;
  line-height: 1;
  font-weight: 300;
  margin-left: 12px;
  margin-top: 6px;
  float: right;
  padding: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #222;
  position: relative; }
  .first-letter:before {
    position: absolute;
    content: "";
    border-radius: 50%;
    border: 1px solid #222;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0; }

.campaign-area .article-item-title {
  border-bottom: 1px solid #aaa;
  margin-bottom: 1rem; }

.campaign-area p {
  font-size: 16px;
  color: #222; }

.podcast-badge ul {
  margin-right: 0; }
  .podcast-badge ul li {
    margin-bottom: 10px;
    margin-right: 2px;
    margin-left: 2px;
    width: 47.5%;
    list-style: none;
    display: inline-block; }

.podcast-list-channel ul {
  margin-right: 0; }
  .podcast-list-channel ul li {
    list-style: none;
    display: inline-block; }
    .podcast-list-channel ul li img {
      width: 150px; }
      @media print, screen and (min-width: 48em) {
        .podcast-list-channel ul li img {
          width: 100px; } }
      @media print, screen and (min-width: 64em) {
        .podcast-list-channel ul li img {
          width: 150px; } }

.podcast-list.has-separator .grid-x {
  border-bottom: 0.5px solid #bdbdbd;
  padding: 1rem 0; }
  .podcast-list.has-separator .grid-x .article-img {
    margin-left: 1rem; }
    @media screen and (max-width: 47.9375em) {
      .podcast-list.has-separator .grid-x .article-img {
        margin-bottom: 1rem; } }

.card-podcast {
  padding: 0.2rem; }
  .podcast-black .card-podcast {
    background-color: transparent; }
    .podcast-black .card-podcast p {
      color: #8c8c8c; }

.podcast-social a {
  border: 1px solid #dddddd;
  background-color: #ffffff;
  border-radius: 10px;
  padding: 5px;
  margin-left: 5px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.podcast-social img {
  width: 24px;
  height: 24px; }

.slick-loading {
  height: 400px;
  overflow: hidden;
  background: #f5f5f5 url(../img/ajax-loader.gif) no-repeat center center; }
  .slick-loading > div {
    opacity: 0; }
  .slick-loading.slick-initialized {
    height: auto;
    overflow: visible;
    background: none; }
  .slick-loading .slick-list {
    -webkit-transition: height 250ms ease-in-out;
    transition: height 250ms ease-in-out; }

.limelight-player {
  width: 100% !important;
  padding-bottom: 56.34%;
  height: 0 !important;
  margin-bottom: 1.5rem;
  overflow: hidden; }

.limelight-player .vjs-limelight-big-play {
  font-size: 12em !important; }

/* -------- Final say ---------------- Start ------------------------*/
@media screen and (max-width: 47.9375em) {
  .media-object-for-small {
    margin-right: 0;
    margin-left: 0; }
    .media-object-for-small .article-item {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-bottom: 1rem;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      margin-bottom: 1.5rem; }
      .media-object-for-small .article-item .article-item-img {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        -webkit-align-self: flex-start;
            -ms-flex-item-align: start;
                align-self: flex-start;
        margin-left: 0.75rem; }
        .media-object-for-small .article-item .article-item-img:first-child {
          padding-left: 0; }
        .media-object-for-small .article-item .article-item-img:last-child:not(:nth-child(2)) {
          padding-right: 0; }
        .media-object-for-small .article-item .article-item-img > :last-child {
          margin-bottom: 0; }
        .media-object-for-small .article-item .article-item-img img {
          max-width: 150px; }
      .media-object-for-small .article-item .article-item-info {
        padding-right: 1rem;
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto; }
        .media-object-for-small .article-item .article-item-info:first-child {
          padding-left: 0; }
        .media-object-for-small .article-item .article-item-info:last-child:not(:nth-child(2)) {
          padding-right: 0; }
        .media-object-for-small .article-item .article-item-info > :last-child {
          margin-bottom: 0; } }

@media print, screen and (min-width: 64em) {
  .large-fluid-img img {
    width: 100%; } }

.uppercase {
  text-transform: uppercase !important; }

.no-border {
  border: 0; }

.block-custom-bg {
  background-color: #f2f2f2;
  color: #000000; }

@media screen and (max-width: 47.9375em) {
  .padding-horizontal-for-small {
    padding-right: 1.25rem;
    padding-left: 1.25rem; } }

.with-padding {
  padding: 1rem; }

.has-padding {
  padding: 1.5rem; }

.vertical-padd {
  padding: 1rem 0; }

.ft-sz-15 {
  font-size: 0.9375rem; }

.ft-sz-18 {
  font-size: 1.125rem; }

.ft-sz-28 {
  font-size: 1.75rem; }
  @media screen and (max-width: 47.9375em) {
    .ft-sz-28 {
      font-size: 1.25rem; } }

@media print, screen and (min-width: 64em) {
  .row .large-column.row.row,
  .row .row.row.large-columns {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0; } }

@media only screen and (max-width: 30em) {
  .xsmall-full-width > li,
  .xsmall-full-width.columns {
    list-style: outside none none;
    width: 100%; } }

.top-padding-1 {
  padding-top: 1rem; }

.top-padding-2 {
  padding-top: 2rem; }

.see-more-link a {
  font-family: "DroidArabicKufi";
  font-size: 16px;
  color: #ec1a2e; }
  .see-more-link a:hover {
    color: #333333; }

.gray-font-color {
  color: #cccccc; }

.primary-font-color {
  color: #ec1a2e; }

.emperor-font-color {
  color: #555555; }
  h3.emperor-font-color a,
  h4.emperor-font-color a,
  h5.emperor-font-color a,
  h6.emperor-font-color a {
    color: inherit; }
    h3.emperor-font-color a:hover,
    h4.emperor-font-color a:hover,
    h5.emperor-font-color a:hover,
    h6.emperor-font-color a:hover {
      color: #ec1a2e; }

.border-gray-around {
  border: 1px solid #dadfe1; }

.thick-border-gray-around {
  border: 2px solid #dadfe1; }

.thicker-border-gray-around {
  border: 4px solid #dadfe1; }

.gray-border-bottom {
  border-bottom: 1px solid rgba(179, 179, 179, 0.3); }

.gray-border-top {
  border-top: 1px solid rgba(179, 179, 179, 0.3);
  padding-top: 0.5rem; }

.texture-pink-bg {
  background: transparent url(" . . /img/ texture-pink . jpg ") repeat center center; }
  .texture-pink-bg h2,
  .texture-pink-bg p,
  .texture-pink-bg a,
  .texture-pink-bg div {
    color: #ffffff; }

.white-bg {
  background-color: #ffffff; }

.light-gray-bg {
  background-color: #dadfe1; }
  .light-gray-bg.abs-element {
    background-color: #dadfe1; }

.white-smoke-bg {
  background-color: #f5f5f5;
  color: #000000; }

.white-smoke-opacity-bg {
  background-color: rgba(245, 245, 245, 0.6);
  color: #000000; }

.top-portion-black-bg:before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 55%;
  content: "";
  background-color: #1c1c1c; }

.bottom-portion-smoke-bg:before {
  position: absolute;
  z-index: -1;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 30%;
  content: "";
  background-color: #f2f2f2; }

.white-to-smoke-gradient-bg {
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f2f2f2));
  background: linear-gradient(to bottom, #ffffff, #f2f2f2); }

.white-to-light-gray-gradient-bg {
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#dadfe1));
  background: linear-gradient(to bottom, #ffffff, #dadfe1); }

.smoke-to-white-gradient-bg {
  background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#ffffff));
  background: linear-gradient(to bottom, #f2f2f2, #ffffff); }

.light-gray-to-white-gradient-bg {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, #dadfe1), to(#ffffff));
  background: linear-gradient(to bottom, #dadfe1 70%, #ffffff); }

.gradient-bg {
  position: relative;
  background: -webkit-gradient(linear, left top, right top, color-stop(33%, rgba(247, 247, 247, 0.1)), color-stop(0, rgba(255, 255, 255, 0.6)));
  background: linear-gradient(90deg, rgba(247, 247, 247, 0.1) 33%, rgba(255, 255, 255, 0.6) 0); }
  .gradient-bg:after {
    display: block;
    content: "";
    position: absolute;
    width: 100%;
    height: 783px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1; }

/*.texture-bg {
  background-image: url(" . . /img/ texture2 . png ");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
}*/
.gray-bg {
  background-color: #f5f5f5;
  color: #281E1E; }
  .gray-bg h1,
  .gray-bg h2,
  .gray-bg h3,
  .gray-bg h4,
  .gray-bg h5,
  .gray-bg h6 {
    color: inherit; }
    .gray-bg h1 a,
    .gray-bg h2 a,
    .gray-bg h3 a,
    .gray-bg h4 a,
    .gray-bg h5 a,
    .gray-bg h6 a {
      color: inherit; }
      .gray-bg h1 a:hover,
      .gray-bg h2 a:hover,
      .gray-bg h3 a:hover,
      .gray-bg h4 a:hover,
      .gray-bg h5 a:hover,
      .gray-bg h6 a:hover {
        color: #ec1a2e; }

.dark-gray-bg {
  background-color: #252525;
  color: #ffffff; }
  .dark-gray-bg h1,
  .dark-gray-bg h2,
  .dark-gray-bg h3,
  .dark-gray-bg h4,
  .dark-gray-bg h5,
  .dark-gray-bg h6 {
    color: inherit; }
    .dark-gray-bg h1 a,
    .dark-gray-bg h2 a,
    .dark-gray-bg h3 a,
    .dark-gray-bg h4 a,
    .dark-gray-bg h5 a,
    .dark-gray-bg h6 a {
      color: inherit; }
      .dark-gray-bg h1 a:hover,
      .dark-gray-bg h2 a:hover,
      .dark-gray-bg h3 a:hover,
      .dark-gray-bg h4 a:hover,
      .dark-gray-bg h5 a:hover,
      .dark-gray-bg h6 a:hover {
        color: #ec1a2e; }

.button.hollow,
.pager--infinite-scroll li a {
  border-width: 1px; }

label span.required {
  color: red;
  font-weight: bold; }

@media print, screen and (min-width: 48em) {
  .last-no-margin article:last-child {
    margin-bottom: 0 !important; }
    .last-no-margin article:last-child h4,
    .last-no-margin article:last-child h5,
    .last-no-margin article:last-child h6 {
      margin-bottom: 0; } }

.maxWidth-medium,
.maxWidth-small,
.maxWidth-xsmall {
  float: none;
  margin-right: auto;
  margin-left: auto; }

.maxWidth-medium {
  max-width: 800px; }

.maxWidth-small {
  max-width: 670px; }

.maxWidth-xsmall {
  max-width: 360px; }

@media print, screen and (min-width: 64em) {
  .grid-collapse {
    padding-right: 0;
    padding-left: 0; } }

@media screen and (max-width: 47.9375em) {
  .small-grid-collapse {
    padding-right: 0;
    padding-left: 0; }
    .small-grid-collapse .article-item-info,
    .small-grid-collapse .article-item-overbox-inner {
      padding: 0 1.25rem; } }

@media screen and (min-width: 24.375em) and (max-width: 63.9375em) {
  .small-grid-collapse .grid-items .article-item-info,
  .small-grid-collapse .grid-items .article-item-overbox-inner {
    padding: 0; } }

.small-grid-collapse .padding-horizontal-for-small .block-title.style-v3 span,
.small-grid-collapse .padding-horizontal-for-small .section-title.style-v3 span,
.small-grid-collapse .padding-horizontal-for-small .page-title.style-v3 span {
  padding: 0; }

.small-grid-collapse .padding-horizontal-for-small .article-item-overbox-inner {
  padding: 0; }

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

.newsletter-area {
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  background: #ffffff;
  position: relative;
  margin: 0;
  color: #000000; }
  .newsletter-area input {
    border-radius: 6px !important; }
  .newsletter-area p {
    font-size: 12px;
    margin-bottom: 5px; }
  .newsletter-area input[type=" submit "] {
    border: 0; }
    .newsletter-area input[type=" submit "]:hover {
      background-color: #ffffff;
      color: #ec1a2e; }
  .newsletter-area .input-group-field {
    height: 2.6rem;
    font-size: 14px;
    border: 0; }

.newsletter-area-intro h3 {
  margin: 0; }

.newsletter-area-intro span {
  display: block; }
  .newsletter-area-intro span:first-child {
    font-size: 1.875rem;
    color: #ec1a2e; }

.mc_embed_signup div#mce-responses {
  float: right;
  top: -1.4em;
  padding: 0em 0.5em 0em 0.5em;
  overflow: hidden;
  width: 90%;
  margin: 0 5%;
  clear: both; }

.mc_embed_signup div.response {
  margin: 1em 0;
  padding: 1em 0.5em 0.5em 0;
  font-weight: bold;
  float: right;
  top: -1.5em;
  z-index: 1;
  width: 80%; }

.mc_embed_signup #mce-error-response {
  display: none; }

.mc_embed_signup #mce-success-response {
  color: #529214;
  display: none; }

.mc_embed_signup label.error {
  display: block;
  float: none;
  width: auto;
  margin-right: 1.05em;
  text-align: right;
  padding: 0.5em 0; }

.banner-img {
  margin-bottom: 1rem; }

.schedule {
  border-top: 1px solid #d6d6d6;
  border-bottom: 1px solid #d6d6d6;
  background: #f5f5f5;
  padding: 1rem;
  margin: 1rem 0;
  font-family: "DroidArabicKufi"; }
  .schedule .media-object {
    margin-bottom: 0; }
  .schedule .author-name {
    color: inherit;
    font-style: normal; }
  .schedule .author-live {
    font-size: 20px;
    font-weight: 700; }
  @media screen and (max-width: 47.9375em) {
    .schedule ul {
      margin-right: 0;
      margin-top: 1rem; } }
  .schedule ul li {
    list-style: none; }

.news-item {
  padding: 0 1.5rem; }

.stations-list ul {
  margin-right: 0; }
  .stations-list ul li {
    list-style: none;
    display: inline-block;
    margin: 0 0.2rem; }
    @media print, screen and (min-width: 64em) {
      .stations-list ul li {
        margin: 0 0.5rem; } }

/* Drupal admin styles ----- START -----*/
#admin-menu {
  z-index: 10000001; }

#overlay-container,
.overlay-modal-background,
.overlay-element {
  z-index: 9999999; }

.overlay-active {
  z-index: 10000000; }

div#toolbar a#edit-shortcuts {
  position: relative; }

html.overlay-open body {
  position: relative; }

.password-strength,
div.password-confirm {
  display: none; }
  @media print, screen and (min-width: 48em) {
    .password-strength,
    div.password-confirm {
      display: block; } }

.drupal-tabs ul.tabs {
  list-style: none;
  margin-left: 0; }
  .drupal-tabs ul.tabs li {
    background-color: #f8f8f8;
    border-radius: 5px;
    display: inline-block;
    margin: 0 5px 8px;
    padding: 5px 15px; }
    .drupal-tabs ul.tabs li:hover, .drupal-tabs ul.tabs li.active {
      background: #ec1a2e; }
      .drupal-tabs ul.tabs li:hover a, .drupal-tabs ul.tabs li.active a {
        color: white; }

.page-taxonomy-term .article-teaser .article-category {
  display: none; }

.load-more ul li {
  list-style: none; }

.pager--infinite-scroll {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  text-align: center; }
  .pager--infinite-scroll li a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    font-family: inherit;
    padding: 0.85em 1em;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 0.9rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    border: 1px solid #cccccc;
    color: #cccccc;
    background-color: #cccccc;
    color: #281E1E;
    font-family: "DroidArabicKufi";
    text-transform: uppercase;
    width: 30%; }
    [data-whatinput='mouse'] .pager--infinite-scroll li a {
      outline: 0; }
    .pager--infinite-scroll li a, .pager--infinite-scroll li a:hover, .pager--infinite-scroll li a:focus {
      background-color: transparent; }
    .pager--infinite-scroll li a.disabled, .pager--infinite-scroll li a.disabled:hover, .pager--infinite-scroll li a.disabled:focus, .pager--infinite-scroll li a[disabled], .pager--infinite-scroll li a[disabled]:hover, .pager--infinite-scroll li a[disabled]:focus {
      background-color: transparent; }
    .pager--infinite-scroll li a:hover, .pager--infinite-scroll li a:focus {
      border-color: #666666;
      color: #666666; }
      .pager--infinite-scroll li a:hover.disabled, .pager--infinite-scroll li a:hover[disabled], .pager--infinite-scroll li a:focus.disabled, .pager--infinite-scroll li a:focus[disabled] {
        border: 1px solid #cccccc;
        color: #cccccc; }
    .pager--infinite-scroll li a:hover, .pager--infinite-scroll li a:focus {
      background-color: transparent;
      color: #281E1E; }

.admin-menu ul.tabs.primary {
  list-style: none; }
  .admin-menu ul.tabs.primary li {
    display: inline-block;
    margin: 0 5px;
    padding: 5px 15px; }
    .admin-menu ul.tabs.primary li:hover, .admin-menu ul.tabs.primary li.active {
      background: #ec1a2e; }
      .admin-menu ul.tabs.primary li:hover a, .admin-menu ul.tabs.primary li.active a {
        color: white; }

.element-invisible {
  display: none; }

/* Drupal admin styles ----- END -----*/
/* ------- Socials Btns Styles ------- START -------- */
header .socials-area,
#sticky-header .socials-area {
  position: relative;
  display: inline-block;
  z-index: 1; }

.canvas-panel .socials-area {
  padding: 1.5rem 0; }

footer .socials-area {
  margin-bottom: 0;
  line-height: 18px;
  font-weight: 600; }
  footer .socials-area h6 {
    font-size: 14px; }

.social-btn {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  color: #b8b8b8;
  font-size: 1.25rem;
  margin: 0 8px 0 0;
  line-height: 1; }
  [dir="rtl"] .social-btn {
    margin: 0 0 0 8px; }
  .social-btn:hover {
    color: #000000;
    -webkit-transition: color 0.25s linear;
    transition: color 0.25s linear; }
  .share_tools .social-btn {
    margin: 0 0 0 4px; }
  .entry-meta-wrapper .social-btn.round {
    background-color: #6d6d6d;
    color: #ffffff; }
    .entry-meta-wrapper .social-btn.round:hover, .entry-meta-wrapper .social-btn.round:focus {
      background-color: #000000; }
  .social-btn.round {
    width: 34px;
    height: 34px;
    line-height: 38px;
    font-size: 16px;
    background-color: #ec1a2e;
    vertical-align: middle;
    color: #ffffff;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .canvas-panel .social-btn {
    border-radius: 50%;
    background: #1d1d1b;
    color: #ffffff;
    width: 34px;
    height: 34px;
    line-height: 34px;
    text-align: center; }
  .social-btn img {
    width: 17px; }

.socials-block {
  padding: 2rem 0;
  text-align: center; }
  .socials-block a {
    margin: 0 0.25rem;
    font-size: 1.25rem;
    padding: 0.75rem;
    background: #ffffff; }
    .socials-block a:hover, .socials-block a:active, .socials-block a:focus {
      background-color: #ec1a2e !important;
      color: #ffffff; }
    .socials-block a i {
      vertical-align: middle; }

.envelope-btn {
  color: #000000; }

.envelope-btn-hover:hover {
  color: #000000 !important; }

.rss-btn {
  color: #fa9b39; }

.rss-btn-hover:hover {
  color: #fa9b39 !important; }

.youtube-btn {
  color: #bb0000; }

.youtube-btn-hover:hover {
  color: #bb0000 !important; }

.google-plus-btn {
  color: #dd4b39; }

.google-plus-btn-hover:hover {
  color: #dd4b39 !important; }

.twitter-btn {
  color: #00a6d4; }

.twitter-btn-hover:hover {
  color: #00a6d4 !important; }

.facebook-btn {
  color: #5168a4; }

.facebook-btn-hover:hover {
  color: #5168a4 !important; }

.whatsapp-btn {
  color: #2bb37c; }

.whatsapp-btn-hover:hover {
  color: #2bb37c !important; }

.instagram-btn {
  color: #a63f1f; }

.instagram-btn-hover:hover {
  color: #a63f1f !important; }

.snapchat-btn {
  color: #fffc00;
  text-shadow: 0 0 2px #888888; }

.telegram-btn {
  color: #0088cc; }

.linkedin-btn {
  color: #007bb6; }

.pinterest-btn {
  color: #cb2027; }

.socials-btns-big {
  margin-bottom: 1.5rem; }
  .socials-btns-big .social-btn {
    color: #ffffff;
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 1.75rem;
    margin: 0 10px;
    -webkit-transition: all 0.25s ease 0s;
    transition: all 0.25s ease 0s; }
    .socials-btns-big .social-btn:hover {
      background-color: #ec1a2e; }

.envelope-btn-bg:hover {
  background-color: #000000 !important;
  color: #ffffff; }

.rss-btn-bg:hover {
  background-color: #fa9b39 !important;
  color: #ffffff; }

.youtube-btn-bg:hover {
  background-color: #bb0000 !important;
  color: #ffffff; }

.youtube-btn-bg-hover:hover {
  background-color: #bb0000 !important;
  color: #ffffff; }

.gplus-btn-bg:hover {
  background-color: #dd4b39 !important;
  color: #ffffff; }

.twitter-btn-bg:hover {
  background-color: #000 !important;
  color: #ffffff; }

.twitter-btn-bg-hover:hover {
  background-color: #000 !important;
  color: #ffffff; }

.facebook-btn-bg:hover {
  background-color: #5168a4 !important;
  color: #ffffff; }

.facebook-btn-bg-hover:hover {
  background-color: #5168a4 !important;
  color: #ffffff; }

.instagram-btn-bg {
  background-color: #a63f1f !important;
  color: #ffffff; }

.instagram-btn-bg-hover:hover {
  background-color: #a63f1f !important;
  color: #ffffff; }

.google-plus-btn-bg-hover:hover {
  background-color: #dd4b39 !important;
  color: #ffffff; }

.snapchat-btn-bg {
  background-color: #fffc00 !important;
  color: #ffffff; }
  .snapchat-btn-bg:hover {
    background-color: #fffc00;
    color: #ffffff; }

.telegram-btn-bg {
  background-color: #0088cc !important;
  color: #ffffff; }
  .telegram-btn-bg .icon-telegram1:before {
    color: #ffffff; }
  .telegram-btn-bg:hover {
    background-color: #0088cc;
    color: #ffffff; }

.linkedin-btn-bg:hover {
  background-color: #007bb6 !important;
  color: #ffffff; }

.pinterest-btn-bg:hover {
  background-color: #cb2027 !important;
  color: #ffffff; }

.whatsapp-btn-bg:hover {
  background-color: #2bb37c !important;
  color: #ffffff; }

.icon-email:before {
  color: #ffffff; }

/* ------- Socials Btns Styles ------- END -------- */
#return-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #6d6d6d;
  opecity: 0.7;
  width: 50px;
  height: 50px;
  display: block;
  text-decoration: none;
  border-radius: 35px;
  display: none;
  -webkit-transition: all 0.3s linear;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-align: center;
  z-index: 10; }

#return-to-top i {
  color: #fff;
  margin: 0;
  position: relative;
  left: 0;
  top: 13px;
  font-size: 19px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }

#return-to-top:hover {
  background: #ec1a2e; }

#return-to-top:hover i {
  color: #fff;
  top: 5px; }

/* -------- Final say ---------------- End ------------------------*/
.article-v2,
.article-v2 * {
  font-family: Yekan, "Yekan Numbers" !important; }

.article-v3,
.article-v3 * {
  font-family: "Noto Naskh Arabic" !important; }

.persian-theme .entry-media .caption-field p {
  font-size: 1rem; }

.arabic-theme .nav-container > .menu > li.menu-6921 a {
  text-align: center;
  padding: 8px 16px;
  border: 3px solid #ec1a2e; }
  .arabic-theme .nav-container > .menu > li.menu-6921 a:hover {
    color: #ec1a2e; }

.arabic-theme .nav-container > .menu > li.active a {
  color: #ffffff; }
  .arabic-theme .nav-container > .menu > li.active a:hover {
    color: #ffffff; }

.indy-tv main {
  padding: 0.5rem 0 0; }

.indy-tv .bg-gray {
  background-color: #222;
  color: white; }
  .indy-tv .bg-gray .article-item-title a {
    color: white; }

.indy-tv .logo-tv a {
  margin: 0 auto;
  height: 107px;
  background-size: 38%;
  border-bottom: 0.5px solid #bdbdbd;
  display: block;
  text-indent: -999em;
  overflow: hidden;
  background-image: url(../img/logotv.png?v3);
  background-repeat: no-repeat;
  background-position: 50% 50%; }
  @media screen and (max-width: 47.9375em) {
    .indy-tv .logo-tv a {
      background-size: 230px; } }

.indy-tv .slick-track {
  margin-left: 0;
  margin-right: 0; }

.indy-tv .currentVideo > h6 {
  font-weight: 300; }
  .indy-tv .currentVideo > h6 span {
    font-weight: 700; }

.indy-tv .upNextVideos > h6 {
  font-weight: 700;
  padding: 30px 0 10px; }

.indy-tv .media-video .article-item-img-tv {
  position: relative; }
  .indy-tv .media-video .article-item-img-tv:before {
    width: 23px;
    height: 23px;
    line-height: 23px;
    font-size: 16px;
    background: rgba(236, 26, 46, 0.5);
    color: #ffffff;
    border-radius: 50%;
    cursor: pointer;
    text-align: center;
    content: "\e90b";
    position: absolute;
    font-family: "icomoon";
    z-index: 1;
    bottom: 0;
    text-indent: -3px;
    margin: 0.5rem; }
  .indy-tv .media-video .article-item-img-tv p.duration {
    position: absolute;
    bottom: 0;
    left: 0;
    right: auto;
    border-radius: 2px;
    margin: 0.5rem 0.3px;
    color: #fff;
    background: #222;
    font-size: 12px;
    line-height: 13px;
    padding: 2px 4px; }

.indy-tv .objects-list.has-separator .object-item {
  border-bottom: 0.5px solid #bdbdbd; }
  .indy-tv .objects-list.has-separator .object-item .media-object.media-video .media-object-img:before,
  .indy-tv .objects-list.has-separator .object-item .media-object.media-video .article-item-img-tv:before {
    width: 23px;
    height: 23px;
    line-height: 23px;
    font-size: 16px;
    background: rgba(236, 26, 46, 0.5); }
  .indy-tv .objects-list.has-separator .object-item .media-object.media-video .media-object-img p.duration,
  .indy-tv .objects-list.has-separator .object-item .media-object.media-video .article-item-img-tv p.duration {
    position: absolute;
    bottom: 0;
    left: 0;
    border-radius: 2px;
    margin: 0.5rem 0.3px;
    color: #fff;
    background: #222;
    font-size: 12px;
    line-height: 13px;
    padding: 2px 4px; }

.indy-tv .float-left {
  float: left; }

.indy-tv .float-right {
  float: right; }

.indy-tv .tv-slider .article-item {
  margin-left: 15px; }

.indy-tv .tv-slider .slick-prev,
.indy-tv .tv-slider .slick-next {
  top: 38%; }

.indy-tv .tv-slider .slick-next {
  left: 25px;
  right: auto; }

.indy-tv .playlistSlabAndTitle {
  border-bottom: 0.5px solid #bdbdbd; }
  .indy-tv .playlistSlabAndTitle > h4 {
    padding-right: 70px;
    background-image: url(../img/smalltvlogo.png?v3);
    background-repeat: no-repeat;
    background-position: right;
    background-size: 59px; }
    @media screen and (max-width: 47.9375em) {
      .indy-tv .playlistSlabAndTitle > h4 {
        background-size: 53px;
        padding-right: 60px; } }
    .indy-tv .playlistSlabAndTitle > h4 a {
      font-weight: 300;
      color: #000; }

/*------ Podcast black---*/
.podcast-items {
  color: #888888;
  padding-bottom: 2rem; }
  .podcast-items .items {
    border: 1px solid #e5e8ea;
    margin: 2rem 0; }
    .podcast-black .podcast-items .items {
      border-color: #636363; }
    .podcast-items .items .article-item-img {
      position: relative; }
      .podcast-items .items .article-item-img .tagged {
        padding: 0.5rem;
        position: absolute;
        bottom: 10px;
        right: 15px;
        width: 90px;
        z-index: 1; }
        .podcast-items .items .article-item-img .tagged a {
          -webkit-box-shadow: -5px 0px 0 7px #00b5f6, 5px 0px 0 7px #00b5f6, 0 0 0 7px #00b5f6;
                  box-shadow: -5px 0px 0 7px #00b5f6, 5px 0px 0 7px #00b5f6, 0 0 0 7px #00b5f6;
          -webkit-box-decoration-break: clone;
                  box-decoration-break: clone;
          background-color: #00b5f6;
          color: #fff;
          line-height: 2; }
      .podcast-items .items .article-item-img .overlay {
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: #000000;
        opacity: 0.5; }
      .podcast-items .items .article-item-img .align-center-middle {
        color: #ffffff;
        font-size: 2rem;
        font-weight: bold;
        position: absolute;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        text-align: center;
        width: 42%;
        line-height: 1.5; }
        .podcast-items .items .article-item-img .align-center-middle a {
          color: #ffffff; }
        .podcast-items .items .article-item-img .align-center-middle:first-line,
        .podcast-items .items .article-item-img .align-center-middle .small-link {
          font-size: 18px;
          display: block; }
  .podcast-items .info {
    margin: 0 1rem;
    position: relative;
    height: 100%; }
    .podcast-items .info .caption {
      margin: 1rem 0;
      font-size: 1.1rem;
      line-height: 1.8; }
    .podcast-items .info .actions {
      position: absolute;
      bottom: 30px; }
      .podcast-items .info .actions a img {
        max-width: 145px;
        height: 37px; }

.podcast-black .pdt0 {
  padding-top: 0 !important; }

.podcast-black .mb0 {
  margin-bottom: 0 !important; }

.podcast-black .breadcrumbs li a {
  color: #888888; }

.podcast-black .breadcrumbs li:not(:last-child)::after {
  color: #888888; }

.podcast-black .breadcrumbs li .active {
  color: #ec1a2e; }

.podcast-black main {
  background-color: #000000;
  margin-bottom: 0; }

.podcast-black #main-footer {
  margin-top: 0; }
  .podcast-black #main-footer .footer-menu a {
    color: #281E1E; }
    .podcast-black #main-footer .footer-menu a:hover {
      color: #ec1a2e; }

.podcast-black h3,
.podcast-black h4,
.podcast-black a {
  color: #ffffff; }
  .podcast-black h3:hover,
  .podcast-black h4:hover,
  .podcast-black a:hover {
    color: #ec1a2e; }

.podcast-black .section-title {
  color: #ffffff; }
  .podcast-black .section-title a:not(.see-all) {
    color: #ffffff; }
    .podcast-black .section-title a:not(.see-all):hover {
      color: #ec1a2e; }

@media only screen and (max-width: 768px) {
  .podcast-black .actions {
    position: relative !important;
    bottom: 0 !important;
    margin-bottom: 10px; }
    .podcast-black .actions a {
      margin: 10px 0;
      display: inline-block; } }

.date1 {
  font-size: 0.8rem;
  color: #333333; }

.headtxt {
  margin-top: 2rem;
  margin-bottom: 1rem;
  font-family: "Independent Sans"; }

.imgComment {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.MainHeroImg {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 50%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  margin-bottom: 1rem; }
  @media screen and (max-width: 47.9375em) {
    .MainHeroImg {
      width: 100%; } }
  @media screen and (min-width: 48em) and (max-width: 63.9375em) {
    .MainHeroImg {
      height: 400px; } }
  .MainHeroImg.grid-x {
    width: 100%; }

.four-articles1 .article-item-content.OverText {
  position: absolute; }
  @media screen and (max-width: 47.9375em) {
    .four-articles1 .article-item-content.OverText {
      position: inherit; } }

@media screen and (max-width: 47.9375em) {
  .MainHeroSmall {
    display: none; } }

.form-registration .form-registration-img {
  margin-left: 11rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .form-registration .form-registration-img .form-registration-img-caption {
    position: absolute;
    padding: 0.5rem;
    text-align: center;
    width: 100%;
    bottom: 0;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(1, rgba(255, 255, 255, 0.3)), color-stop(0, white)); }

.form-registration-group {
  padding: 0px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .form-registration-group .form-registration-input:focus {
    border: 2px solid;
    -webkit-box-shadow: 0 0 5px;
            box-shadow: 0 0 5px; }
  .form-registration-group .form-registration-submit-button {
    text-transform: uppercase;
    margin-bottom: 0;
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    font-family: inherit;
    padding: 0.85em 1em;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 0.9rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #ec1a2e;
    color: #000000;
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    padding: 0 10px;
    margin-left: 12px;
    border: none;
    border-radius: 4px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    font-size: 13px;
    line-height: 20px;
    background: #999596;
    color: #fff;
    -moz-appearance: none;
         appearance: none;
    text-transform: uppercase;
    -webkit-transition: color 0.4s linear;
    transition: color 0.4s linear;
    cursor: pointer;
    width: 30%; }
    [data-whatinput='mouse'] .form-registration-group .form-registration-submit-button {
      outline: 0; }
    .form-registration-group .form-registration-submit-button:hover, .form-registration-group .form-registration-submit-button:focus {
      background-color: #c21021;
      color: #000000; }
  .form-registration-group .form-registration-social-button {
    text-transform: uppercase;
    font-size: 16px;
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    font-family: inherit;
    padding: 0.85em 1em;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 0.9rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: auto;
    color: #ffffff;
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    border-radius: 2px;
    width: 57%; }
    [data-whatinput='mouse'] .form-registration-group .form-registration-social-button {
      outline: 0; }
    .form-registration-group .form-registration-social-button:hover, .form-registration-group .form-registration-social-button:focus {
      background-color: hollow;
      color: #ffffff; }
    .form-registration-group .form-registration-social-button .fa {
      vertical-align: text-top;
      margin-right: 0.5rem; }
  .form-registration-group .form-registration-member-signin {
    text-align: center;
    font-weight: bold;
    font-size: 14px; }
    .form-registration-group .form-registration-member-signin a {
      margin-left: 0.25rem; }
  .form-registration-group .form-registration-terms {
    text-align: center;
    font-size: 12px; }
    .form-registration-group .form-registration-terms a:first-child {
      margin-right: 0.25rem; }
    .form-registration-group .form-registration-terms a:last-child {
      margin-left: 0.25rem; }
  .form-registration-group .or-divider {
    position: relative;
    margin: 1.5rem 0px;
    font-size: 14px;
    font-weight: 600;
    width: 100%;
    height: 0px;
    border: 1px solid #dadfe1; }
    .form-registration-group .or-divider span {
      color: #333333;
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      top: -12px;
      padding: 0 8px; }

.imglogo {
  height: 15%; }

.button.hollow.button {
  margin-right: 1rem;
  /* border-radius: 6px; */
  border-color: #337e81;
  border: 2px px solid #337e81;
  border-radius: 6px;
  color: #337e81;
  /* font-weight: bold; */
  border: 2px solid;
  padding-left: 10px;
  font-weight: bold;
  /* align-items: center; */
  /* justify-content: center; */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: medium;
  border: 2px solid #337e81;
  border-radius: 6px;
  color: #337e81;
  /* display: none; */
  font-family: Indy Sans, sans-serif;
  /* font-weight: 500; */
  /* margin-right: 16px; */
  margin-left: 0;
  width: 102px;
  height: 40px;
  line-height: 16px;
  /* padding-top: 2px;*/ }
  [dir="rtl"] .button.hollow.button {
    margin-left: 1rem; }

.header1 {
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  grid-gap: 2px; }

.header__text {
  padding-top: 12px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-bottom: -91px; }

.svg {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  display: block; }

.header__title {
  margin-top: 16px;
  font-family: "Independent Serif";
  font-size: 20px;
  font-weight: 700;
  line-height: 18px;
  color: #222222; }

.image-container {
  width: 135px;
  height: 135px;
  margin-left: 6px; }
  @media screen and (max-width: 47.9375em) {
    .image-container {
      display: none; } }

.section-newsletter-signup__form {
  position: relative;
  margin-top: 20px;
  padding-right: 12px; }

.section-newsletter-signup__input {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 47.9375em) {
    .section-newsletter-signup__input {
      display: grid;
      margin-bottom: 1rem; } }

.input[type="text"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-flex: 3;
  -webkit-flex-grow: 3;
      -ms-flex-positive: 3;
          flex-grow: 3;
  width: 100%;
  height: 38px;
  border-radius: 4px;
  border: solid 1px #bdbdbd;
  padding-left: 12px;
  padding-right: 12px;
  color: #4e4e4e;
  outline: none;
  font-size: 16px; }

input#offers {
  height: 30px;
  width: 30px; }

.submit-button {
  background-color: #bdbdbd;
  padding: 0 10px;
  margin-left: 12px;
  border: none;
  border-radius: 4px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  font-weight: 700;
  font-size: 13px;
  line-height: 20px;
  background: #bdbdbd;
  color: #fff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-transform: uppercase;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
  cursor: pointer;
  width: 33%;
  height: 37px; }

.offer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 0px;
  font-family: "Independent Sans", sans-serif;
  font-size: 10px;
  line-height: 12px;
  color: #4e4e4e; }

.offers-label .logo {
  display: none; }

.offers-label {
  display: block;
  margin: 0;
  font-size: 11px;
  font-weight: normal;
  line-height: 1.8;
  margin-left: 0.5rem;
  color: #000000; }

.section-newsletter-signup {
  padding: 0 0 12px 12px;
  margin: 0 auto;
  border: 1px solid #d3d3d3;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  margin-bottom: 1rem; }

.checkbox {
  height: 33px;
  position: relative;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }

.form-registration-submit-button {
  padding: 0 10px;
  margin-left: 12px;
  border: none;
  border-radius: 4px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  font-weight: 700;
  font-size: 13px;
  line-height: 20px;
  background: #bdbdbd;
  color: #fff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-transform: uppercase;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
  cursor: pointer;
  height: 38px; }
  @media screen and (max-width: 47.9375em) {
    .form-registration-submit-button {
      margin-left: 0px; } }

input#email-input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-flex: 3;
  -webkit-flex-grow: 3;
      -ms-flex-positive: 3;
          flex-grow: 3;
  width: 100%;
  height: 38px;
  border-radius: 4px;
  border: solid 1px #bdbdbd;
  padding-left: 12px;
  padding-right: 12px;
  color: #4e4e4e;
  outline: none;
  font-size: 16px; }

label {
  font-family: "Independent Sans", sans-serif;
  font-size: 10px;
  line-height: 12px;
  color: #4e4e4e; }
  label a {
    text-decoration: underline;
    color: #4e4e4e; }

@media screen and (max-width: 47.9375em) {
  .cell.medium-6.large-6 {
    width: 110%; } }

.cell.small-6.medium-3 {
  margin-bottom: 0.5rem; }

.audio-player {
  margin-bottom: 1rem; }
  .podcast-floater .audio-player {
    margin-bottom: 0; }
  .audio-player audio {
    width: 100%; }
  [dir="rtl"] .audio-player {
    margin-bottom: 32px; }

.podcast-floater {
  background-color: #ffffff;
  z-index: 99;
  padding: 0;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0; }
  @media print, screen and (min-width: 64em) {
    .podcast-floater {
      padding: 1rem 4rem; } }
  .podcast-floater .btn-share-wrap .btn-share {
    margin: 0 10px; }
  .podcast-floater .close-btn {
    cursor: pointer; }
    @media screen and (max-width: 47.9375em) {
      .podcast-floater .close-btn {
        padding-top: 10px;
        padding-right: 13px;
        padding-left: 0;
        padding-bottom: 10px;
        border-right: 1px solid #e0e0e0;
        color: #90a3a2;
        font-size: 12px; } }

@media screen and (max-width: 47.9375em) {
  .podcast-floater-item {
    padding: 10px 0; } }

.podcast-floater-item a {
  color: #281e1e; }

.podcast-floater-item img {
  width: 50px; }
  @media screen and (max-width: 47.9375em) {
    .podcast-floater-item img {
      display: none; } }

.podcast-floater-item h6 {
  margin-bottom: 0; }
  @media screen and (max-width: 47.9375em) {
    .podcast-floater-item h6 {
      font-size: 11px; } }

.page-logo {
  margin: 0 auto;
  border-bottom: 0.5px solid #bdbdbd;
  padding-bottom: 2rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .page-logo img {
    width: 300px; }
    @media print, screen and (min-width: 64em) {
      .page-logo img {
        width: 400px; } }

.subscribe-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 20px;
  margin: 0 auto 16px; }
  @media print, screen and (min-width: 48em) {
    .subscribe-box {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 60px;
      max-width: 740px;
      padding: 40px 0; } }
  .subscribe-box__img {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .subscribe-box__img img {
      width: 80px; }
      @media print, screen and (min-width: 48em) {
        .subscribe-box__img img {
          width: 180px; } }
  .subscribe-box__desc {
    text-align: center; }
    @media print, screen and (min-width: 48em) {
      .subscribe-box__desc {
        text-align: start;
        max-width: 440px; } }
    .subscribe-box__desc h2 {
      color: #ee3e3e;
      font-size: 37px;
      margin: 0; }
      @media print, screen and (min-width: 48em) {
        .subscribe-box__desc h2 {
          font-size: 45px; } }
    .subscribe-box__desc p {
      font-size: 12px; }
      @media print, screen and (min-width: 48em) {
        .subscribe-box__desc p {
          font-size: 16px;
          margin-bottom: 1.5rem; } }
  .subscribe-box__form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 6px; }
    @media print, screen and (min-width: 48em) {
      .subscribe-box__form {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        gap: 10px; } }
    .subscribe-box__form input[type="text"],
    .subscribe-box__form input[type="text"] {
      background: #efefef;
      border-radius: 20px;
      width: 181px;
      padding: 5px 15px;
      border: 0;
      -webkit-box-shadow: none;
              box-shadow: none;
      height: auto;
      font-size: 14px;
      margin: 0; }
      @media print, screen and (min-width: 48em) {
        .subscribe-box__form input[type="text"],
        .subscribe-box__form input[type="text"] {
          font-size: 15px;
          padding: 7px 15px;
          width: 300px; } }
    .subscribe-box__form button,
    .subscribe-box__form input[type="submit"] {
      border: 0;
      background: #ee3e3e;
      border-radius: 15px;
      color: #ffffff;
      font-weight: bold;
      padding: 5px 20px;
      font-size: 10px;
      cursor: pointer;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .subscribe-box__form button:hover,
      .subscribe-box__form input[type="submit"]:hover {
        background: rgba(0, 0, 0, 0.9);
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
      @media print, screen and (min-width: 48em) {
        .subscribe-box__form button,
        .subscribe-box__form input[type="submit"] {
          font-size: 14px;
          padding: 7px 20px; } }

.hero-area {
  margin-bottom: 16px;
  overflow: hidden; }
  .hero-area .article-hero.media-video .sizer {
    padding-top: 55.7%; }
  .hero-area [data-media="jwVideo"] {
    height: 100%; }
    @media screen and (max-width: 47.9375em) {
      .hero-area [data-media="jwVideo"] {
        height: 220px; } }
  .hero-area__content {
    position: relative; }

[data-media="jwVideo"] {
  background-color: #000;
  height: 100%; }
  [data-media="jwVideo"] img,
  [data-media="jwVideo"] .sizer {
    display: none !important; }

@media screen and (max-width: 47.9375em) {
  [data-media="jwVideoSm"] img,
  [data-media="jwVideoSm"] .sizer {
    display: none !important; } }

.entry-meta-field.entry-meta-author {
  display: inline-block; }

.date1 {
  font-size: 0.8rem;
  color: #333333; }

.headtxt {
  margin-top: 2rem;
  margin-bottom: 1rem;
  font-family: "Independent Sans"; }

.imgComment {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.block-container > .mpu-width {
  width: 300px;
  height: 250px; }

.imgComment > p {
  border-right: solid;
  border-right-width: thin;
  white-space: break-spaces;
  padding-right: 0.5rem; }

.photo_gallery figcaption {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.photo_gallery figcaption {
  border-right: solid;
  border-right-width: thin;
  white-space: break-spaces;
  padding-right: 0.5rem; }

body.urdu-theme {
  font-size: 20px; }

/* arabic only */
@media print, screen and (min-width: 64em) {
  .main-header__navbar {
    position: relative;
    height: 42px; } }

@media print, screen and (min-width: 64em) {
  .main-header__navbar .nav-container {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex; } }

@media print, screen and (min-width: 64em) {
  .main-header__navbar .nav-container > .menu {
    position: initial; } }

@media print, screen and (min-width: 64em) {
  .main-header__navbar .nav-container > .menu > li {
    height: 42px; } }

@media print, screen and (min-width: 64em) {
  .main-header__navbar .nav-container > ul > li > a {
    position: initial; } }

@media print, screen and (min-width: 64em) {
  .main-header__navbar .sub-mega-menu {
    width: 100%;
    left: 0; } }

.main-title {
  text-align: center;
  border-bottom: 0.5px solid #bdbdbd;
  padding-bottom: 2rem;
  margin-top: 2rem;
  margin-bottom: 2rem; }
  @media print, screen and (min-width: 64em) {
    .main-title h1 {
      font-size: 80px; } }
  .main-title h1 a {
    color: #281e1e; }

.card-grids {
  margin-top: 30px; }

.card-grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  margin-bottom: 30px; }
  .card-grid__img {
    width: 80px;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .card-grid__content p {
    font-size: 30px;
    line-height: 45px; }
    .card-grid__content p span {
      color: #EC1A2E; }

/* end arabic only */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC1ydGwuY3NzIiwiZ2xvYmFsL19pY29tb29uLnNjc3MiLCJnbG9iYWwvX3ZhcmlhYmxlcy5zY3NzIiwiZ2xvYmFsL193ZWJmb250cy1ydGwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZlcnRpY2FsLXJoeXRobS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIl9zZXR0aW5ncy1ydGwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGh1bWJuYWlsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3Byb3RvdHlwZS9fZm9udC1zdHlsaW5nLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3Byb3RvdHlwZS9fc3BhY2luZy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9wcm90b3R5cGUvX3NlcGFyYXRvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9wcm90b3R5cGUvX3Bvc2l0aW9uLnNjc3MiLCJ2ZW5kb3IvX3NsaWNrLnNjc3MiLCJtaXhpbnMvX2NvbnRhaW5lci1ib3JkZXIuc2NzcyIsIm1peGlucy9fYXZhdGFyLnNjc3MiLCJtaXhpbnMvX2hlbHBlcnMuc2NzcyIsIm1peGlucy9fc2lkZWxpbmVzLnNjc3MiLCJtaXhpbnMvX3ppbmRleC5zY3NzIiwibWl4aW5zL19taXhpbnMuc2NzcyIsImNvbXBvbmVudHMvbmF2aWdhdGlvbi9fbWFpbi1uYXYuc2NzcyIsImNvbXBvbmVudHMvbmF2aWdhdGlvbi9fbmF2cGFuZWwuc2NzcyIsImNvbXBvbmVudHMvXzQwNC5zY3NzIiwiY29tcG9uZW50cy9fc2hvd3Muc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJfY3VzdG9tLnNjc3MiLCJfY3VzdG9tLXJ0bC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0VoQjtFQUNFLHNCQUFzQztFQUN0Qyw4T0FJaUg7RUFDakgsbUJBQW1C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RkosZ0JDZXFELEVBQUE7O0FOK0UvQztFTzdGSixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FQbUcvQztFT2pHSixrQkFBa0I7RUFDbEIsaUJBSG1ELEVBQUE7O0FQMkdqRDtFTzlFSix1QkRicUQsRUFBQTs7QU55RWpEO0VLeEZKLFVDZXFELEVBQUE7O0FOK0UvQztFTzdGSixrQkFBa0I7RUFDbEIsVUFIbUQsRUFBQTs7QVBtRy9DO0VPakdKLGtCQUFrQjtFQUNsQixXQUhtRCxFQUFBOztBUDJHakQ7RU85RUosdUJEYnFELEVBQUE7O0FOeUVqRDtFS3hGSixnQkNlcUQsRUFBQTs7QU4rRS9DO0VPN0ZKLGtCQUFrQjtFQUNsQixnQkFIbUQsRUFBQTs7QVBtRy9DO0VPakdKLGtCQUFrQjtFQUNsQixpQkFIbUQsRUFBQTs7QVAyR2pEO0VPOUVKLGlCRGJxRCxFQUFBOztBTnlFakQ7RUt4RkosZ0JDZXFELEVBQUE7O0FOK0UvQztFTzdGSixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FQbUcvQztFT2pHSixrQkFBa0I7RUFDbEIsaUJBSG1ELEVBQUE7O0FQMkdqRDtFTzlFSix1QkRicUQsRUFBQTs7QU55RWpEO0VLeEZKLFVDZXFELEVBQUE7O0FOK0UvQztFTzdGSixrQkFBa0I7RUFDbEIsVUFIbUQsRUFBQTs7QVBtRy9DO0VPakdKLGtCQUFrQjtFQUNsQixXQUhtRCxFQUFBOztBUDJHakQ7RU85RUosdUJEYnFELEVBQUE7O0FOeUVqRDtFS3hGSixnQkNlcUQsRUFBQTs7QU4rRS9DO0VPN0ZKLGtCQUFrQjtFQUNsQixnQkFIbUQsRUFBQTs7QVBtRy9DO0VPakdKLGtCQUFrQjtFQUNsQixpQkFIbUQsRUFBQTs7QVAyR2pEO0VPOUVKLGlCRGJxRCxFQUFBOztBTnlFakQ7RUt4RkosZ0JDZXFELEVBQUE7O0FOK0UvQztFTzdGSixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FQbUcvQztFT2pHSixrQkFBa0I7RUFDbEIsaUJBSG1ELEVBQUE7O0FQMkdqRDtFTzlFSix1QkRicUQsRUFBQTs7QU55RWpEO0VLeEZKLFdDZXFELEVBQUE7O0FOMkZqRDtFTzlFSix1QkRicUQsRUFBQTs7QU5rR2pEO0VRekdGLFlYa0dpRDtFV2pHakQsV0FBdUIsRUFBQTtFUndHckI7SVFqRkEsV0FBVyxFQUFBO0VSaUZYO0lRN0VBLFdBQVcsRUFBQTtFUjZFWDtJUXpFQSxZWGtFK0MsRUFBQTs7QUdPL0M7RVF6R0YsWVhrR2lEO0VXakdqRCxVQUF1QixFQUFBO0VSd0dyQjtJUWpGQSxXQUFXLEVBQUE7RVJpRlg7SVE3RUEsV0FBVyxFQUFBO0VSNkVYO0lRekVBLFlYa0UrQyxFQUFBOztBR08vQztFUXpHRixZWGtHaUQ7RVdqR2pELGdCQUF1QixFQUFBO0VSd0dyQjtJUWpGQSxXQUFXLEVBQUE7RVJpRlg7SVE3RUEsV0FBVyxFQUFBO0VSNkVYO0lRekVBLFlYa0UrQyxFQUFBOztBR08vQztFUXpHRixZWGtHaUQ7RVdqR2pELFVBQXVCLEVBQUE7RVJ3R3JCO0lRakZBLFdBQVcsRUFBQTtFUmlGWDtJUTdFQSxXQUFXLEVBQUE7RVI2RVg7SVF6RUEsWVhrRStDLEVBQUE7O0FHTy9DO0VRekdGLFlYa0dpRDtFV2pHakQsVUFBdUIsRUFBQTtFUndHckI7SVFqRkEsV0FBVyxFQUFBO0VSaUZYO0lRN0VBLFdBQVcsRUFBQTtFUjZFWDtJUXpFQSxZWGtFK0MsRUFBQTs7QUdPL0M7RVF6R0YsWVhrR2lEO0VXakdqRCxnQkFBdUIsRUFBQTtFUndHckI7SVFqRkEsV0FBVyxFQUFBO0VSaUZYO0lRN0VBLFdBQVcsRUFBQTtFUjZFWDtJUXpFQSxZWGtFK0MsRUFBQTs7QUdPL0M7RVF6R0YsWVhrR2lEO0VXakdqRCxnQkFBdUIsRUFBQTtFUndHckI7SVFqRkEsV0FBVyxFQUFBO0VSaUZYO0lRN0VBLFdBQVcsRUFBQTtFUjZFWDtJUXpFQSxZWGtFK0MsRUFBQTs7QUdPL0M7RVF6R0YsWVhrR2lEO0VXakdqRCxZQUF1QixFQUFBO0VSd0dyQjtJUWpGQSxXQUFXLEVBQUE7RVJpRlg7SVE3RUEsV0FBVyxFQUFBO0VSNkVYO0lRekVBLFlYa0UrQyxFQUFBOztBR2FqRDtFRy9HQSxnQkR1RVM7RUN0RVQsZURzRVMsRUFBQTs7QUZ3Q1Q7RUFJSSxlQUFlO0VBQ2YsY0FBYyxFQUFBOztBQUlsQjtFQUNFLGVBQWU7RUFDZixjQUFjLEVBQUE7O0FBR2hCO0VHN0hBLHVCQUZxQztFQUdyQyxzQkFIcUMsRUFBQTs7QUhvSXJDO0VPaklBLGtCQUFrQjtFQUNsQixpQkFBaUIsRUFBQTtFQUxqQjtJQUNFLFdBQVc7SUFDWCxXQUFXLEVBQUE7O0FQd0liOzs7RU81SEYsZ0JBQWdCO0VBQ2hCLFlWc0ZtRDtFVXJGbkQsZUFBZTtFQUNmLGNBQWMsRUFBQTs7QUgrSFY7RUo3REE7SUt4RkosZUNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVBtRy9DO0lPakdKLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUDJHakQ7SU85RUosZ0JEaEJnQyxFQUFBO0VONEU1QjtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHNCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixVQ2VxRCxFQUFBO0VOK0UvQztJTzdGSixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUG1HL0M7SU9qR0osa0JBQWtCO0lBQ2xCLFdBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLGlCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixVQ2VxRCxFQUFBO0VOK0UvQztJTzdGSixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUG1HL0M7SU9qR0osa0JBQWtCO0lBQ2xCLFdBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLGlCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixVQ2VxRCxFQUFBO0VOK0UvQztJTzdGSixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUG1HL0M7SU9qR0osa0JBQWtCO0lBQ2xCLFdBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLGlCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixXQ2VxRCxFQUFBO0VOMkZqRDtJTzlFSix1QkRicUQsRUFBQTtFTmtHakQ7SVF6R0YsWVhrR2lEO0lXakdqRCxXQUF1QixFQUFBO0lSd0dyQjtNUWpGQSxXQUFXLEVBQUE7SVJpRlg7TVE3RUEsV0FBVyxFQUFBO0lSNkVYO01RekVBLFlYa0UrQyxFQUFBO0VHTy9DO0lRekdGLFlYa0dpRDtJV2pHakQsVUFBdUIsRUFBQTtJUndHckI7TVFqRkEsV0FBVyxFQUFBO0lSaUZYO01RN0VBLFdBQVcsRUFBQTtJUjZFWDtNUXpFQSxZWGtFK0MsRUFBQTtFR08vQztJUXpHRixZWGtHaUQ7SVdqR2pELGdCQUF1QixFQUFBO0lSd0dyQjtNUWpGQSxXQUFXLEVBQUE7SVJpRlg7TVE3RUEsV0FBVyxFQUFBO0lSNkVYO01RekVBLFlYa0UrQyxFQUFBO0VHTy9DO0lRekdGLFlYa0dpRDtJV2pHakQsVUFBdUIsRUFBQTtJUndHckI7TVFqRkEsV0FBVyxFQUFBO0lSaUZYO01RN0VBLFdBQVcsRUFBQTtJUjZFWDtNUXpFQSxZWGtFK0MsRUFBQTtFR08vQztJUXpHRixZWGtHaUQ7SVdqR2pELFVBQXVCLEVBQUE7SVJ3R3JCO01RakZBLFdBQVcsRUFBQTtJUmlGWDtNUTdFQSxXQUFXLEVBQUE7SVI2RVg7TVF6RUEsWVhrRStDLEVBQUE7RUdPL0M7SVF6R0YsWVhrR2lEO0lXakdqRCxnQkFBdUIsRUFBQTtJUndHckI7TVFqRkEsV0FBVyxFQUFBO0lSaUZYO01RN0VBLFdBQVcsRUFBQTtJUjZFWDtNUXpFQSxZWGtFK0MsRUFBQTtFR08vQztJUXpHRixZWGtHaUQ7SVdqR2pELGdCQUF1QixFQUFBO0lSd0dyQjtNUWpGQSxXQUFXLEVBQUE7SVJpRlg7TVE3RUEsV0FBVyxFQUFBO0lSNkVYO01RekVBLFlYa0UrQyxFQUFBO0VHTy9DO0lRekdGLFlYa0dpRDtJV2pHakQsWUFBdUIsRUFBQTtJUndHckI7TVFqRkEsV0FBVyxFQUFBO0lSaUZYO01RN0VBLFdBQVcsRUFBQTtJUjZFWDtNUXpFQSxZWGtFK0MsRUFBQTtFR2FqRDtJRy9HQSxnQkR1RVM7SUN0RVQsZURzRVMsRUFBQTtFRndDVDtJQUlJLGVBQWU7SUFDZixjQUFjLEVBQUE7RUFJbEI7SUFDRSxlQUFlO0lBQ2YsY0FBYyxFQUFBO0VBR2hCO0lHN0hBLHdCQUZxQztJQUdyQyx1QkFIcUMsRUFBQTtFSG9JckM7SU9qSUEsa0JBQWtCO0lBQ2xCLGlCQUFpQixFQUFBO0lBTGpCO01BQ0UsV0FBVztNQUNYLFdBQVcsRUFBQTtFUHdJYjs7O0lPNUhGLGdCQUFnQjtJQUNoQixZVnNGbUQ7SVVyRm5ELGVBQWU7SUFDZixjQUFjLEVBQUEsRVA2SFg7O0FJRUM7RUo3REE7SUt4RkosZUNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVBtRy9DO0lPakdKLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUDJHakQ7SU85RUosZ0JEaEJnQyxFQUFBO0VONEU1QjtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHNCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixVQ2VxRCxFQUFBO0VOK0UvQztJTzdGSixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUG1HL0M7SU9qR0osa0JBQWtCO0lBQ2xCLFdBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLGlCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixVQ2VxRCxFQUFBO0VOK0UvQztJTzdGSixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUG1HL0M7SU9qR0osa0JBQWtCO0lBQ2xCLFdBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLGlCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixVQ2VxRCxFQUFBO0VOK0UvQztJTzdGSixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUG1HL0M7SU9qR0osa0JBQWtCO0lBQ2xCLFdBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLGlCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixnQkNlcUQsRUFBQTtFTitFL0M7SU83Rkosa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VQbUcvQztJT2pHSixrQkFBa0I7SUFDbEIsaUJBSG1ELEVBQUE7RVAyR2pEO0lPOUVKLHVCRGJxRCxFQUFBO0VOeUVqRDtJS3hGSixXQ2VxRCxFQUFBO0VOMkZqRDtJTzlFSix1QkRicUQsRUFBQTtFTmtHakQ7SVF6R0YsWVhrR2lEO0lXakdqRCxXQUF1QixFQUFBO0lSd0dyQjtNUWpGQSxXQUFXLEVBQUE7SVJpRlg7TVE3RUEsV0FBVyxFQUFBO0lSNkVYO01RekVBLFlYa0UrQyxFQUFBO0VHTy9DO0lRekdGLFlYa0dpRDtJV2pHakQsVUFBdUIsRUFBQTtJUndHckI7TVFqRkEsV0FBVyxFQUFBO0lSaUZYO01RN0VBLFdBQVcsRUFBQTtJUjZFWDtNUXpFQSxZWGtFK0MsRUFBQTtFR08vQztJUXpHRixZWGtHaUQ7SVdqR2pELGdCQUF1QixFQUFBO0lSd0dyQjtNUWpGQSxXQUFXLEVBQUE7SVJpRlg7TVE3RUEsV0FBVyxFQUFBO0lSNkVYO01RekVBLFlYa0UrQyxFQUFBO0VHTy9DO0lRekdGLFlYa0dpRDtJV2pHakQsVUFBdUIsRUFBQTtJUndHckI7TVFqRkEsV0FBVyxFQUFBO0lSaUZYO01RN0VBLFdBQVcsRUFBQTtJUjZFWDtNUXpFQSxZWGtFK0MsRUFBQTtFR08vQztJUXpHRixZWGtHaUQ7SVdqR2pELFVBQXVCLEVBQUE7SVJ3R3JCO01RakZBLFdBQVcsRUFBQTtJUmlGWDtNUTdFQSxXQUFXLEVBQUE7SVI2RVg7TVF6RUEsWVhrRStDLEVBQUE7RUdPL0M7SVF6R0YsWVhrR2lEO0lXakdqRCxnQkFBdUIsRUFBQTtJUndHckI7TVFqRkEsV0FBVyxFQUFBO0lSaUZYO01RN0VBLFdBQVcsRUFBQTtJUjZFWDtNUXpFQSxZWGtFK0MsRUFBQTtFR08vQztJUXpHRixZWGtHaUQ7SVdqR2pELGdCQUF1QixFQUFBO0lSd0dyQjtNUWpGQSxXQUFXLEVBQUE7SVJpRlg7TVE3RUEsV0FBVyxFQUFBO0lSNkVYO01RekVBLFlYa0UrQyxFQUFBO0VHTy9DO0lRekdGLFlYa0dpRDtJV2pHakQsWUFBdUIsRUFBQTtJUndHckI7TVFqRkEsV0FBVyxFQUFBO0lSaUZYO01RN0VBLFdBQVcsRUFBQTtJUjZFWDtNUXpFQSxZWGtFK0MsRUFBQTtFR2FqRDtJRy9HQSxnQkR1RVM7SUN0RVQsZURzRVMsRUFBQTtFRndDVDtJQUlJLGVBQWU7SUFDZixjQUFjLEVBQUE7RUFJbEI7SUFDRSxlQUFlO0lBQ2YsY0FBYyxFQUFBO0VBR2hCO0lHN0hBLHdCQUZxQztJQUdyQyx1QkFIcUMsRUFBQTtFSG9JckM7SU9qSUEsa0JBQWtCO0lBQ2xCLGlCQUFpQixFQUFBO0lBTGpCO01BQ0UsV0FBVztNQUNYLFdBQVcsRUFBQTtFUHdJYjs7O0lPNUhGLGdCQUFnQjtJQUNoQixZVnNGbUQ7SVVyRm5ELGVBQWU7SUFDZixjQUFjLEVBQUEsRVA2SFg7O0FBSUg7RUcxRkUsc0JEYXFE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Q0FEZ0gsRUFBQTtFSDhCaEg7SUc3QkEsaUNBRGdILEVBQUE7RUg4QmhIO0lHN0JBLDJCQURnSCxFQUFBO0VIOEJoSDtJRzdCQSxpQ0FEZ0gsRUFBQTtFSDhCaEg7SUc3QkEsaUNBRGdILEVBQUE7RUg4QmhIO0lHN0JBLDRCQURnSCxFQUFBO0VSOEU5RztJSzVESjtNR3pCRSxXQUFtQixFQUFBO0lINkJyQjtNR3pCRSxXQUFtQixFQUFBO0lIaUNuQjtNRzdCQSwrQkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLDBCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxnQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLDBCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxnQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLDBCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxnQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLDJCQURnSCxFQUFBO0lIa0JsSDtNR3pCRSxXQUFtQixFQUFBO0lINkJyQjtNR3pCRSxXQUFtQixFQUFBO0lIaUNuQjtNRzdCQSwrQkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLDBCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxnQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLDBCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxnQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLDBCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxnQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLDJCQURnSCxFQUFBLEVIZ0MvRztFTDhDQztJSzVESjtNR3pCRSxXQUFtQixFQUFBO0lINkJyQjtNR3pCRSxXQUFtQixFQUFBO0lIaUNuQjtNRzdCQSw0QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHdCQURnSCxFQUFBO0lIa0JsSDtNR3pCRSxXQUFtQixFQUFBO0lINkJyQjtNR3pCRSxXQUFtQixFQUFBO0lIaUNuQjtNRzdCQSw0QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHdCQURnSCxFQUFBO0lIa0JsSDtNR3pCRSxXQUFtQixFQUFBO0lINkJyQjtNR3pCRSxXQUFtQixFQUFBO0lIaUNuQjtNRzdCQSw0QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHVCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw2QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLHdCQURnSCxFQUFBLEVIZ0MvRzs7QUE4Q0g7RUNuSU0sd0JBQTRCO0VBQTVCLHVCQUE0QixFQUFBO0VObUk5QjtJS0FKO01DbklNLHVCQUE0QjtNQUE1QixzQkFBNEIsRUFBQSxFRHdJL0I7RUxMQztJS0FKO01DbklNLHFCQUE0QjtNQUE1QixvQkFBNEIsRUFBQSxFRHdJL0I7O0FBSUQ7RUM1SUksd0JBQTRCO0VBQTVCLHVCQUE0QixFQUFBO0VObUk5QjtJS1NGO01DNUlJLHVCQUE0QjtNQUE1QixzQkFBNEIsRUFBQSxFRDhJL0I7RUxYQztJS1NGO01DNUlJLHFCQUE0QjtNQUE1QixvQkFBNEIsRUFBQSxFRDhJL0I7O0FBWEg7RUNuSU0sd0JBQTRCO0VBQTVCLHVCQUE0QixFQUFBO0VObUk5QjtJS0FKO01DbklNLHVCQUE0QjtNQUE1QixzQkFBNEIsRUFBQSxFRG1KL0I7RUxoQkM7SUtBSjtNQ25JTSxxQkFBNEI7TUFBNUIsb0JBQTRCLEVBQUEsRURtSi9COztBSXRKSDtFRHlERSxXQURvRCxFQUFBOztBQ3hEdEQ7RUR5REUsVUFEb0QsRUFBQTs7QUN4RHREO0VEeURFLGdCQURvRCxFQUFBOztBQ3hEdEQ7RUR5REUsVUFEb0QsRUFBQTs7QUN4RHREO0VEeURFLFVBRG9ELEVBQUE7O0FDeER0RDtFRHlERSxnQkFEb0QsRUFBQTs7QUN4RHREO0VEeURFLGdCQURvRCxFQUFBOztBQ3hEdEQ7RUR5REUsWUFEb0QsRUFBQTs7QVI4RWxEO0VTdElKO0lEeURFLFdBRG9ELEVBQUE7RUN4RHREO0lEeURFLFVBRG9ELEVBQUE7RUN4RHREO0lEeURFLGdCQURvRCxFQUFBO0VDeER0RDtJRHlERSxVQURvRCxFQUFBO0VDeER0RDtJRHlERSxVQURvRCxFQUFBO0VDeER0RDtJRHlERSxnQkFEb0QsRUFBQTtFQ3hEdEQ7SUR5REUsZ0JBRG9ELEVBQUE7RUN4RHREO0lEeURFLFlBRG9ELEVBQUEsRUN0RHJEOztBVG9JRztFU3RJSjtJRHlERSxXQURvRCxFQUFBO0VDeER0RDtJRHlERSxVQURvRCxFQUFBO0VDeER0RDtJRHlERSxnQkFEb0QsRUFBQTtFQ3hEdEQ7SUR5REUsVUFEb0QsRUFBQTtFQ3hEdEQ7SUR5REUsVUFEb0QsRUFBQTtFQ3hEdEQ7SUR5REUsZ0JBRG9ELEVBQUE7RUN4RHREO0lEeURFLGdCQURvRCxFQUFBO0VDeER0RDtJRHlERSxZQURvRCxFQUFBLEVDdERyRDs7QUFGRDtFRHlERSw0QkFEZ0gsRUFBQTs7QUN4RGxIO0VEeURFLDJCQURnSCxFQUFBOztBQ3hEbEg7RUR5REUsaUNBRGdILEVBQUE7O0FDeERsSDtFRHlERSwyQkFEZ0gsRUFBQTs7QUN4RGxIO0VEeURFLDJCQURnSCxFQUFBOztBQ3hEbEg7RUR5REUsaUNBRGdILEVBQUE7O0FDeERsSDtFRHlERSxpQ0FEZ0gsRUFBQTs7QUN4RGxIO0VEeURFLDZCQURnSCxFQUFBOztBUjhFOUc7RVN0SUo7SUR5REUsNEJBRGdILEVBQUE7RUN4RGxIO0lEeURFLDJCQURnSCxFQUFBO0VDeERsSDtJRHlERSxpQ0FEZ0gsRUFBQTtFQ3hEbEg7SUR5REUsMkJBRGdILEVBQUE7RUN4RGxIO0lEeURFLDJCQURnSCxFQUFBO0VDeERsSDtJRHlERSxpQ0FEZ0gsRUFBQTtFQ3hEbEg7SUR5REUsaUNBRGdILEVBQUE7RUN4RGxIO0lEeURFLDZCQURnSCxFQUFBO0VDeERsSDtJRHlERSwyQkFEZ0gsRUFBQTtFQ3hEbEg7SUR5REUsMEJBRGdILEVBQUE7RUN4RGxIO0lEeURFLGdDQURnSCxFQUFBO0VDeERsSDtJRHlERSwwQkFEZ0gsRUFBQTtFQ3hEbEg7SUR5REUsMEJBRGdILEVBQUE7RUN4RGxIO0lEeURFLGdDQURnSCxFQUFBO0VDeERsSDtJRHlERSxnQ0FEZ0gsRUFBQTtFQ3hEbEg7SUR5REUsNEJBRGdILEVBQUEsRUN0RGpIOztBVG9JRztFU3RJSjtJRHlERSw0QkFEZ0gsRUFBQTtFQ3hEbEg7SUR5REUsMkJBRGdILEVB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QjtJTTlORix1Q0FBNkIsRUFBQTtFZitGM0I7SWUvRkYsdUJBQTZCLEVBQUE7RU44TjNCO0lNOU5GLHdDQUE2QixFQUFBO0VmK0YzQjtJZS9GRixpQkFBNkIsRUFBQTtFTjhOM0I7SU05TkYsa0NBQTZCLEVBQUE7RWYrRjNCO0llL0ZGLHVCQUE2QixFQUFBO0VOOE4zQjtJTTlORix3Q0FBNkIsRUFBQTtFZitGM0I7SWUvRkYsdUJBQTZCLEVBQUE7RU44TjNCO0lNOU5GLHdDQUE2QixFQUFBO0VmK0YzQjtJZS9GRixpQkFBNkIsRUFBQTtFTjhOM0I7SU05TkYsa0NBQTZCLEVBQUE7RWYrRjNCO0llL0ZGLHVCQUE2QixFQUFBO0VOOE4zQjtJTTlORix3Q0FBNkIsRUFBQTtFZitGM0I7SWUvRkYsdUJBQTZCLEVBQUE7RU44TjNCO0lNOU5GLHdDQUE2QixFQUFBO0VmK0YzQjtJZS9GRixpQkFBNkIsRUFBQTtFTjhOM0I7SU05TkYsa0NBQTZCLEVBQUE7RWYrRjNCO0llL0ZGLHVCQUE2QixFQUFBO0VOOE4zQjtJTTlORix3Q0FBNkIsRUFBQTtFZitGM0I7SWUvRkYsdUJBQTZCLEVBQUE7RU44TjNCO0lNOU5GLHdDQUE2QixFQUFBLEVOZ08xQjs7QUx0RkQ7RUozQ0E7SWUvRkYsZ0JBQTZCLEVBQUE7RU44TjNCO0lNOU5GLCtCQUE2QixFQUFBO0VmK0YzQjtJZS9GRixzQkFBNkIsRUFBQTtFTjhOM0I7SU05TkYscUNBQTZCLEVBQUE7RWYrRjNCO0llL0ZGLHVCQUE2QixFQUFBO0VOOE4zQjtJTTlORixzQ0FBNkIsRUFBQTtFZitGM0I7SWUvRkYsaUJBQTZCLEVBQUE7RU44TjNCO0lNOU5GLGdDQUE2QixFQUFBO0VmK0YzQjtJZS9GRix1QkFBNkIsRUFBQTtFTjhOM0I7SU05TkYsc0NBQTZCLEVBQUE7RWYrRjNCO0llL0ZGLHVCQUE2QixFQUFBO0VOOE4zQjtJTTlORixzQ0FBNkIsRUFBQTtFZitGM0I7SWUvRkYsaUJBQTZCLEVBQUE7RU44TjNCO0lNOU5GLGdDQUE2QixFQUFBO0VmK0YzQjtJZS9GRix1QkFB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SGlDbkI7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSwyQkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsaUNBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSwyQkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsaUNBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSwyQkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsaUNBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw0QkFEZ0gsRUFBQTtJSGtCbEg7TUd6QkUsWUFBbUIsRUFBQTtJSDZCckI7TUd6QkUsWUFBbUIsRUFBQTtJSGlDbkI7TUc3QkEsZ0NBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSwyQkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsaUNBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSwyQkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsaUNBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSwyQkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsaUNBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw0QkFEZ0gsRUFBQSxFSGdDL0c7RUw4Q0M7SUs1REo7TUd6QkUsWUFBbUIsRUFBQTtJSDZCckI7TUd6QkUsWUFBbUIsRUFBQTtJSGlDbkI7TUc3QkEsNkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSx3QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsOEJBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSx3QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsOEJBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURn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QUFBO0lIOEJoSDtNRzdCQSxpQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsMkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxpQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsMkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxpQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsMkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxpQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNEJBRGdILEVBQUE7SUhrQmxIO01HekJFLFlBQW1CLEVBQUE7SUg2QnJCO01HekJFLFlBQW1CLEVBQUE7SUhpQ25CO01HN0JBLGdDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxpQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsMkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxpQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsMkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxpQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsMkJBRGdILEVBQUE7SUg4QmhIO01HN0JBLGlDQURnSCxFQUFBO0lIOEJoSDtNRzdCQSxpQ0FEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsNEJBRGdILEVBQUEsRUhnQy9HO0VMOENDO0lLNURKO01HekJFLFlBQW1CLEVBQUE7SUg2QnJCO01HekJFLFlBQW1CLEVBQUE7SUhpQ25CO01HN0JBLDZCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEseUJBRGdILEVBQUE7SUhrQmxIO01HekJFLFlBQW1CLEVBQUE7SUg2QnJCO01HekJFLFlBQW1CLEVBQUE7SUhpQ25CO01HN0JBLDZCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEseUJBRGdILEVBQUE7SUhrQmxIO01HekJFLFlBQW1CLEVBQUE7SUg2QnJCO01HekJFLFlBQW1CLEVBQUE7SUhpQ25CO01HN0JBLDZCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEsd0JBRGdILEVBQUE7SUg4QmhIO01HN0JBLDhCQURnSCxFQUFBO0lIOEJoSDtNRzdCQSw4QkFEZ0gsRUFBQTtJSDhCaEg7TUc3QkEseUJBRGdILEVBQUEsRUhnQy9HOztBQXlTRDtFTzNYSSw4QkFBbUMsRUFBQTtFWmdJckM7SUsyUEY7TU8zWEksNkJBQW1DLEVBQUEsRVA2WHRDO0VMN1BDO0lLMlBGO01PM1hJLDBCQUFtQyxFQUFBLEVQNlh0Qzs7QUw3UEM7RUsrUEE7SU8vWEUsNkJBQW1DLEVBQUEsRVBpWXBDOztBTGpRRDtFSytQQTtJTy9YRSwwQkFBbUMsRUFBQSxFUGlZcEM7O0FRcktMOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBbUJFLFNBQVM7RUFDVCxVQUFVLEVBQUE7O0FBSVo7RUFDRSxtQm5CbEUwQjtFbUJvRTFCLGtCQUFrQjtFQUNsQixpQkNqUnVCO0VEa1J2QixrQ25CckV5QyxFQUFBOztBbUJ5RTNDOztFQUVFLGtCQUFrQjtFQUNsQixvQkFBb0IsRUFBQTs7QUFJdEI7O0VBRUUsaUJuQjVLcUI7RW1CNktyQixvQkFBb0IsRUFBQTs7QXZCaURwQjtFdUI1Q0EsY25CNUZpQjtFbUI2RmpCLG9CQUFvQixFQUFBOztBQUl0Qjs7Ozs7O0VBTUUsb0VuQm5Na0U7RW1Cb01sRSxrQm5CaElzQjtFbUJpSXRCLGdCQ3RUb0I7RUR1VHBCLGNuQmhJa0I7RW1CaUlsQixrQ25CNUdzQyxFQUFBO0VtQmtHeEM7Ozs7OztJQWFJLGNBQWM7SUFDZCxjbkIzTmUsRUFBQTs7QW1Cb09iO0VBSUksZWZ2UDZDO0VlbVE3QyxnQkN0Vlc7RUQ4VlgsYUFBYTtFQU9iLHVCbkIzS21CLEVBQUE7O0FtQjRJdkI7RUFJSSxrQmZ2UDZDO0VlbVE3QyxnQkN0Vlc7RUQ4VlgsYUFBYTtFQU9iLHVCbkIzS21CLEVBQUE7O0FtQjRJdkI7RUFJSSxpQmZ2UDZDO0VlbVE3QyxnQkN0Vlc7RUQ4VlgsYUFBYTtFQU9iLHVCbkIzS21CLEVBQUE7O0FtQjRJdkI7RUFJSSxrQmZ2UDZDO0VlbVE3QyxnQkN0Vlc7RUQ4VlgsYUFBYTtFQU9iLHVCbkIzS21CLEVBQUE7O0FtQjRJdkI7RUFJSSxtQmZ2UDZDO0VlbVE3QyxnQkN0Vlc7RUQ4VlgsYUFBYTtFQU9iLHVCbkIzS21CLEVBQUE7O0FtQjRJdkI7RUFJSSxlZnZQNkM7RWVtUTdDLGdCQ3RWVztFRDhWWCxhQUFhO0VBT2IsdUJuQjNLbUIsRUFBQTs7QU01QnpCO0Vhd0tFO0lBSUksbUJmdlA2QyxFQUFBO0VlbVBqRDtJQUlJLGVmdlA2QyxFQUFBO0VlbVBqRDtJQUlJLG1CZnZQNkMsRUFBQTtFZW1QakQ7SUFJSSxtQmZ2UDZDLEVBQUE7RWVtUGpEO0lBSUksZWZ2UDZDLEVBQUE7RWVtUGpEO0lBSUksbUJmdlA2QyxFQUFBLEVlb1JoRDs7QXZCbkdMO0V1QjBHQSxvQkFBb0I7RUFDcEIsY25CelJjO0VtQjBSZCxxQm5Cckp5QjtFbUJ1SnpCLGVBQWUsRUFBQTtFQUxqQjtJQVNJLGNuQjVKMEMsRUFBQTtFbUJtSjlDO0lBZ0JJLFNBQVMsRUFBQTs7QXZCdEtYO0V1QjRLQSxXQUFXO0VBRVgsa0JmbFRxRDtFZW1UckQsU0FBUztFQUNULG9CbkJ4S3lCO0VtQjBLekIsYUFBYTtFQUNiLGVBQWU7RUFDZixnQ25CelNpQjtFbUIwU2pCLGNBQWMsRUFBQTs7QUFJaEI7OztFQUdFLG1CbkJsTTBCO0VtQm1NMUIsNEJuQmpMeUI7RW1Ca0x6QixpQkNoWnVCLEVBQUE7O0FEb1p6QjtFQUNFLGtCQUFrQixFQUFBOztBQUlwQjtFQUNFLHFCbkIzTHNCO0VtQjRMdEIscUJuQjlMa0IsRUFBQTs7QW1Ca01wQjtFQUNFLHFCbkJqTXNCLEVBQUE7O0FtQnFNeEI7RUFFSSxxQm5CdE0yQjtFbUJ1TTNCLGdCQUFnQixFQUFBOztBQUtwQjtFQUNFLG1CbkI1TXlCLEVBQUE7RW1CMk0zQjtJQUlJLHFCbkI3TThCO0ltQjhNOUIsaUJuQjlUbUIsRUFBQTs7QW1CbVV2QjtFQUNFLGdCbkIzTzBCO0VtQjRPMUIsc0NmMVdxRDtFZTJXckQsK0JuQjVWaUIsRUFBQTtFbUJ5Vm5CO0lBTUksaUJDNWJxQjtJRDZickIsY25CN1ZhLEVBQUE7O0FtQmtXakI7RUFDRSxjQUFjO0VBQ2Qsb0JmdFhxRDtFZXVYckQsY25CcldlLEVBQUE7RW1Ca1dqQjtJQU1JLGFuQi9OZ0IsRUFBYTs7QW1Cb09qQztFQUNFLGlDbkI3V1c7RW1COFdYLFlBQVk7RUFDWixxQkFBcUIsRUFBQTs7QXZCNVFyQjtFdUJpUkEsU0FBUyxFQUFBOztBQUlYO0VBQ0UscUNmNVlxRDtFZThZckQseUJuQi9YaUI7RW1CZ1lq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bEI7SUF1R1kseUJ4Qi9RSSxFQUFBO0V3QndLaEI7SUF1R1kseUJ4QjlRSSxFQUFBO0V3QnVLaEI7SUF1R1kseUJ4QjdRRSxFQUFBO0V3QnNLZDtJQWdISSxXQUFXO0lBQ1gsV0FBVztJQUNYLGVBQWdDLEVBQUE7O0FBR3BDO0VBR0kscUJBQXFCLEVBQUE7O0FqQ3cwRzNCOztFa0M5bUhFLGNBQWM7RUFDZCw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxpQkFMc0o7RUFNdEosZ0JyQkh1RDtFcUJJdkQsZXpCaVorQjtFeUIvWS9CLHlCekJTbUI7RXlCUm5CLGdCekIrQmU7RXlCOUJmLHlCekJZYTtFeUJYYixzRHpCVWE7VXlCVmIsOEN6QlVhO0V5QlJiLG9CekJpWXlCO0V5QmhZekIsZXJCWnVEO0VxQmF2RCxtQnpCdUIyQjtFeUJ0QjNCLGdCekJicUI7RXlCY3JCLGN6QklhO0V5QkRYLDJFekJ1WThEO0V5QnZZOUQsbUV6QnVZOEQ7RXlCdlk5RCwyRHpCdVk4RDtFeUJ2WTlELG9GekJ1WThEO0V5QmxYOUQsd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0IsRUFBQTtFbEN5bEhsQjs7SWtDem1IRSxhQUFhO0lBQ2IsdUJ6Qk5lO0l5Qk9mLHlCekJMVztJeUJNWCxtQ3pCWGlCO1l5QldqQiwyQnpCWGlCO0l5QmNmLDJFekI0WDREO0l5QjVYNUQsbUV6QjRYNEQ7SXlCNVg1RCwyRHpCNFg0RDtJeUI1WDVELG9GekI0WDRELEVBQUE7O0FKMkY5RDtFNkJ4Y0EsZUFBZSxFQUFBO0VBRGpCO0lBSUksWUFBWSxFQUFBOztBQUloQjtFQUlJLGN6QnhDZSxFQUFBOztBeUJvQ25CO0VBSUksY3pCeENlLEVBQUE7O0F5Qm9DbkI7RUFJSSxjekJ4Q2UsRUFBQTs7QXlCb0NuQjtFQUlJLGN6QnhDZSxFQUFBOztBeUJvQ25COztFQUlJLGN6QnhDZSxFQUFBOztBeUJvQ25COzs7RUFVSSx5QnpCaERjO0V5QmlEZCxtQnpCMFY2QixFQUFBOztBVCt2R25DOztFa0NsbEhJLHdCQUFnQjtLQUFo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QS9DZ0I7RUErQ2hCLCtCQS9DZ0I7TUErQ2hCLHFCQS9DZ0I7VUErQ2hCLHVCQS9DZ0I7RUFnRGhCLHlCQXhDZ0I7RUF3Q2hCLDJCQXhDZ0I7TUF3Q2hCLHNCQXhDZ0I7VUF3Q2hCLG1CQXhDZ0I7RUQyRmQsNkJBQXFCO01BQXJCLDBCQUFxQjtVQUFyQixxQkFBcUIsRUFBQTs7QUFNbkI7RUNuQ0osNEJEa0NnQjtFQ2xDaEIsZ0JEa0NnQjtNQ2xDaEIsaUJEa0NnQjtVQ2xDaEIsUURrQ2dCLEVBQUE7O0FBQ1o7RUNuQ0osNEJEa0NnQjtFQ2xDaEIsZ0JEa0NnQjtNQ2xDaEIsaUJEa0NnQjtVQ2xDaEIsUURrQ2dCLEVBQUE7O0FBQ1o7RUNuQ0osNEJEa0NnQjtFQ2xDaEIsZ0JEa0NnQjtNQ2xDaEIsaUJEa0NnQjtVQ2xDaEIsUURrQ2dCLEVBQUE7O0FBQ1o7RUNuQ0osNEJEa0NnQjtFQ2xDaEIsZ0JEa0NnQjtNQ2xDaEIsaUJEa0NnQjtVQ2xDaEIsUURrQ2dCLEVBQUE7O0FBQ1o7RUNuQ0osNEJEa0NnQjtFQ2xDaEIsZ0JEa0NnQjtNQ2xDaEIsaUJEa0NnQjtVQ2xDaEIsUURrQ2dCLEVBQUE7O0FBQ1o7RUNuQ0osNEJEa0NnQjtFQ2xDaEIsZ0JEa0NnQjtNQ2xDaEIsaUJEa0NnQjtVQ2xDaEIsUURrQ2dCLEVBQUE7O0F6Q3dEWjtFeUN2REE7SUNuQ0osNEJEa0NnQjtJQ2xDaEIsZ0JEa0NnQjtRQ2xDaEIsaUJEa0NnQjtZQ2xDaEIsUURrQ2dCLEVBQUE7RUFDWjtJQ25DSiw0QkRrQ2dCO0lDbENoQixnQkRrQ2dCO1FDbENoQixpQkRrQ2dCO1lDbENoQixRRGtDZ0IsRUFBQTtFQUNaO0lDbkNKLDRCRGtDZ0I7SUNsQ2hCLGdCRGtDZ0I7UUNsQ2hCLGlCRGtDZ0I7WUNsQ2hCLFFEa0NnQixFQUFBO0VBQ1o7SUNuQ0osNEJEa0NnQjtJQ2xDaEIsZ0JEa0NnQjtRQ2xDaEIsaUJEa0NnQjtZQ2xDaEIsUURrQ2dCLEVBQUE7RUFDWjtJQ25DSiw0QkRrQ2dCO0lDbENoQixnQkRrQ2dCO1FDbENoQixpQkRrQ2dC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TSxXQUFXO0lBQ1gsT0FBTyxFQUFBLEVBRVY7O0FBR0g7RUFDRSxrQkFBa0I7RUFDbEIsa0NBQWtDO0VBQ2xDLG9CQUFvQjtFQUNwQixnQkFBZ0I7RUFDaEIsbUJBQW1CLEVBQUE7RTdEbUVmO0k2RHhFTjtNQVFNLGVBQWUsRUFBQSxFQUtsQjtFQWJIO0lBV00sY0FBYyxFQUFBOztBQUtwQjtFQUNFLGdCQUFnQixFQUFBOztBQUdsQjtFQUNFLG9CQUFhO0VBQWIscUJBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYixTQUFTO0VBQ1QsbUJBQW1CLEVBQUE7RUFDbkI7SUFDRSxXQUFXO0lBQ1gsbUJBQWM7SUFBZCxzQkFBYztRQUFkLGtCQUFjO1lBQWQsY0FBYyxFQUFBO0VBR2Y7SUFFRyxlQUFlO0lBQ2YsaUJBQWlCLEVBQUE7SUFIcEI7TUFLSyxjbkVaVSxFQUFBOztBbUVrQmxCLG9CQUFBIiwiZmlsZSI6ImFwcC1ydGwuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLndvZmYyP3M0ZHNveW54enpcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24udHRmP3M0ZHNveW54enpcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24ud29mZj9zNGRzb3lueHp6XCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24uc3ZnP3M0ZHNveW54enojaWNvbW9vblwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBibG9jazsgfVxuXG4uaWNvbW9vbi1pY29uIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBuZXZlcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmljb24tZW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKlcIjtcbiAgY29sb3I6ICM2ZDZkNmQ7IH1cblxuLmljb24tZmI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKRcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24taG9tZS0yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSlXCI7IH1cblxuLmljb24tcHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKZcIjsgfVxuXG4uaWNvbi13aGF0c2FwcDI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKdcIjtcbiAgY29sb3I6ICM2ZDZkNmQ7IH1cblxuLmljb24teDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kqlwiO1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uaWNvbi10d2l0dGVyLXg6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKJcIjsgfVxuXG4uaWNvbi1wcmludGVyMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ko1wiOyB9XG5cbi5pY29uLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKFcIjsgfVxuXG4uaWNvbi1pbnN0YWdyYW0xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSfXCI7IH1cblxuLmljb24tc25hcGNoYXQtZ2hvc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJZcIjsgfVxuXG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSXXCI7IH1cblxuLmljb24tY2FtZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSSXCI7IH1cblxuLmljb24td2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKhcIjsgfVxuXG4uaWNvbi1zcGhlcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKBcIjsgfVxuXG4uaWNvbi10ZWxlZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6knVwiOyB9XG5cbi5pY29uLXByaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJxcIjsgfVxuXG4uaWNvbi1saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kmFwiOyB9XG5cbi5pY29uLWdvb2dsZS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSZXCI7IH1cblxuLmljb24tcGludGVyZXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSaXCI7IH1cblxuLmljb24taW5zdGFncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSbXCI7IH1cblxuLmljb24td2hhdHNhcHAxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSVXCI7IH1cblxuLmljb24tZGlzbGlrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kkFwiOyB9XG5cbi5pY29uLWxpa2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJFcIjsgfVxuXG4uaWNvbi1lbnZlbG9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kk1wiOyB9XG5cbi5pY29uLWNvbW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJRcIjsgfVxuXG4uaWNvbi11ay1mbGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7piVXCI7IH1cblxuLmljb24tdXMtZmxhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6YllwiOyB9XG5cbi5pY29uLWdvb2dsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kgFwiOyB9XG5cbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIFcIjsgfVxuXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kglwiOyB9XG5cbi5pY29uLWFycm93LWRvd24yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSDXCI7IH1cblxuLmljb24tYXJyb3ctbGVmdDI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIRcIjsgfVxuXG4uaWNvbi1hcnJvdy1yaWdodDI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIVcIjsgfVxuXG4uaWNvbi1hcnJvdy11cDI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIZcIjsgfVxuXG4uaWNvbi1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSHXCI7IH1cblxuLmljb24tYXJyb3ctbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kiFwiOyB9XG5cbi5pY29uLWFycm93LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSJXCI7IH1cblxuLmljb24tYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIpcIjsgfVxuXG4uaWNvbi1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSLXCI7IH1cblxuLmljb24tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIxcIjsgfVxuXG4uaWNvbi11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSNXCI7IH1cblxuLmljb24taGFtYnVyZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSOXCI7IH1cblxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSPXCI7IH1cblxuLmljb24tc291bmQtd2F2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6knlwiOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0Ryb2lkQXJhYmljS3VmaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9Ecm9pZEt1ZmktUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvRHJvaWRLdWZpLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9Ecm9pZEt1ZmktUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRHJvaWRBcmFiaWNLdWZpJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogODAwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0Ryb2lkS3VmaS1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9Ecm9pZEt1ZmktQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0Ryb2lkS3VmaS1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXInO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItRXh0cmFCb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLUV4dHJhQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItRXh0cmFCb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0FiZG8gTWFzdGVyJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLUV4dHJhTGlnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItRXh0cmFMaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItRXh0cmFMaWdodC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0FiZG8gTWFzdGVyIG91dGxpbmUnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXJvdXRsaW5lLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyb3V0bGluZS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXJvdXRsaW5lLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXIgQm9vayc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1Cb29rLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLUJvb2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLUJvb2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1CbGFjay53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1CbGFjay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItQmxhY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1EZW1pQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1EZW1pQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItRGVtaUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3RlciBOb3JtYWwnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItTm9ybWFsLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLU5vcm1hbC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItTm9ybWFsLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXInO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItTGlnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItTGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLUxpZ2h0LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXInO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItSGVhdnkud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItSGVhdnkud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLUhlYXZ5LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXInO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItTWVkaXVtLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLU1lZGl1bS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItTWVkaXVtLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXInO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItVGhpbi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1UaGluLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1UaGluLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXInO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItU2VtaUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItU2VtaUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9BYmRvTWFzdGVyLVNlbWlCb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXInO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FiZG9NYXN0ZXItUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQWJkb01hc3Rlci1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNC4zXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cbi8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMiAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5maWdjYXB0aW9uLFxuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovIH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cbiAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi8gfVxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovIH1cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00OGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiLCBUYWhvbWEsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjgxRTFFO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IH1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnJvdyB7XG4gIG1heC13aWR0aDogNjEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAucm93OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAucm93IC5yb3cuY29sbGFwc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnJvdy5leHBhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgLnJvdy5leHBhbmRlZCAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5yb3c6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1uLCAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmNvbHVtbi5lbmQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmNvbHVtbi5yb3cucm93LCAucm93LnJvdy5jb2x1bW5zIHtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC04LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG5cbi5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAtMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLTMge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC1wdXNoLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAyNSU7IH1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC0yNSU7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC0zMy4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiAyNSU7IH1cblxuLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC00MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLXJpZ2h0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLTYge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC1wdXNoLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiA1MCU7IH1cblxuLnNtYWxsLXB1bGwtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC01MCU7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLXJpZ2h0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC01OC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLXJpZ2h0OiA1MCU7IH1cblxuLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC02Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLXJpZ2h0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5zbWFsbC1wdXNoLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiA3NSU7IH1cblxuLnNtYWxsLXB1bGwtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC03NSU7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLXJpZ2h0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC04My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLXJpZ2h0OiA3NSU7IH1cblxuLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC05MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1yaWdodDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW4sIC5zbWFsbC11cC0yID4gLmNvbHVtbnMge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5zbWFsbC11cC01ID4gLmNvbHVtbnMge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAyMCU7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW4sIC5zbWFsbC11cC04ID4gLmNvbHVtbnMge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAxMi41JTsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLWNvbGxhcHNlIC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5leHBhbmRlZC5yb3cgLnNtYWxsLWNvbGxhcHNlLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuLnNtYWxsLWNlbnRlcmVkIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCxcbi5zbWFsbC1wdXNoLTAsXG4uc21hbGwtcHVsbC0wIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IC04LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogLTE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAyNSU7IH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogLTI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IC0zMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNSU7IH1cbiAgLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1yaWdodDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1MCU7IH1cbiAgLm1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogLTUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IC01OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1MCU7IH1cbiAgLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1yaWdodDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA3NSU7IH1cbiAgLm1lZGl1bS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogLTc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IC04My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3NSU7IH1cbiAgLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMjAlOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5leHBhbmRlZC5yb3cgLm1lZGl1bS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIC5tZWRpdW0tY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5tZWRpdW0tY2VudGVyZWQsIC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCxcbiAgLm1lZGl1bS1wdXNoLTAsXG4gIC5tZWRpdW0tcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogLTE2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAyNSU7IH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtMjUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNSU7IH1cbiAgLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1MCU7IH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNTAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1MCU7IH1cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA3NSU7IH1cbiAgLmxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNzUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3NSU7IH1cbiAgLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1yaWdodDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbiwgLmxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAxMi41JTsgfVxuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5sYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmV4cGFuZGVkLnJvdyAubGFyZ2UtY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgLmxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAubGFyZ2UtY2VudGVyZWQsIC5sYXJnZS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsXG4gIC5sYXJnZS1wdXNoLTAsXG4gIC5sYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbi5jb2x1bW4tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jb2x1bW4tYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICAgIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uZ3JpZC1jb250YWluZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zMTI1cmVtO1xuICBtYXgtd2lkdGg6IDYxLjVyZW07XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mdWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cblxuLmdyaWQteCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cblxuLmNlbGwge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWluLWhlaWdodDogMHB4O1xuICBtaW4td2lkdGg6IDBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlbGwuYXV0byB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuY2VsbC5zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtZnVsbCwgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teDpub3QoLmdyaWQteCkgPiAuY2VsbCB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi14IHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjMxMjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuMzEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC4zNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMC42MjVyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAwLjc1cmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjM3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDAuNjI1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMC43NXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pOyB9IH1cblxuLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTAuMzEyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjMxMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuMzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNXJlbTsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4zMTI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuMzEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuMzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtOyB9IH1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogMTIuNSU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMC42MjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDAuNjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAwLjYyNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMjUlIC0gMC42MjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDAuNjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAwLjYyNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMC42MjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEyLjUlIC0gMC42MjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDAuNzVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAwLjc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMC43NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxcmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDFyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDFyZW0pOyB9IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDAlICsgMC4zMTI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tcmlnaHQ6IDguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDguMzMzMzMlICsgMC4zMTI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tcmlnaHQ6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygxNi42NjY2NyUgKyAwLjMxMjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1yaWdodDogMjUlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDI1JSArIDAuMzEyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLXJpZ2h0OiAzMy4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoMzMuMzMzMzMlICsgMC4zMTI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tcmlnaHQ6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg0MS42NjY2NyUgKyAwLjMxMjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1yaWdodDogNTAlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSArIDAuMzEyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLXJpZ2h0OiA1OC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoNTguMzMzMzMlICsgMC4zMTI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tcmlnaHQ6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg2Ni42NjY2NyUgKyAwLjMxMjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1yaWdodDogNzUlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDc1JSArIDAuMzEyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1yaWdodDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg4My4zMzMzMyUgKyAwLjMxMjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoOTEuNjY2NjclICsgMC4zMTI1cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDAlICsgMC4zNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoOC4zMzMzMyUgKyAwLjM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMTYuNjY2NjclICsgMC4zNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1yaWdodDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDI1JSArIDAuMzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygzMy4zMzMzMyUgKyAwLjM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoNDEuNjY2NjclICsgMC4zNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1yaWdodDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSArIDAuMzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1OC4zMzMzMyUgKyAwLjM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoNjYuNjY2NjclICsgMC4zNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1yaWdodDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDc1JSArIDAuMzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDgzLjMzMzMzJSArIDAuMzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDkxLjY2NjY3JSArIDAuMzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDAlICsgMC41cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg4LjMzMzMzJSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDE2LjY2NjY3JSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDI1JSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDMzLjMzMzMzJSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDQxLjY2NjY3JSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDU4LjMzMzMzJSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDY2LjY2NjY3JSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDc1JSArIDAuNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoODMuMzMzMzMlICsgMC41cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg5MS42NjY2NyUgKyAwLjVyZW0pOyB9IH1cblxuLmdyaWQteSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAuZ3JpZC15ID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXkgPiAuc21hbGwtZnVsbCwgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS1mdWxsLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogMjUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogNTAlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogNzUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gIG1hcmdpbi10b3A6IC0wLjMxMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjMxMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgcGFkZGluZy10b3A6IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjM3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjMxMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjMxMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC4zNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAwLjYyNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAwLjc1cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuMzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDAuNjI1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDAuNzVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTsgfSB9XG5cbi5ncmlkLWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDB2dzsgfVxuXG4uY2VsbCAuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jZWxsLWJsb2NrIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG5cbi5jZWxsLWJsb2NrLXkge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG5cbi5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLmNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlwZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5cGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5cGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbi5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgaGVpZ2h0OiAxMDB2aDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuLmNlbGwgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMC4zMTI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC4zMTI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuMzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMC42MjVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDAuMzEyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMC43NXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMC42MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAwLjYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDAuNjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAwLjYyNXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDAuNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAwLjc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMC43NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAwLjc1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDFyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxcmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMC42MjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAwLjc1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxcmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAwLjc1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDFyZW0pOyB9IH1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCIsIFRhaG9tYSwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogODAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogIzg4ODg4ODsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG5cbmg0LCAuaDQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9XG4gIGg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjZWMxYTJlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzk0MGMxOTsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogNjEuNXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODg4ODtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG5vbCB7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM4ODg4ODg7IH1cbiAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBjb2xvcjogIzMzMzMzMzsgfVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogIzMzMzMzMzsgfVxuICBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJQgXCI7IH1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwMDAwMDA7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg4ODg4ODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhZGZlMTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFkZmUxO1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzMzMzMzMzsgfVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBwICsgLnN0YXQge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtOyB9XG5cbnVsLm5vLWJ1bGxldCwgb2wubm8tYnVsbGV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMzMzMztcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NlMTEyMztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLnRpbnkge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24uc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5idXR0b24ucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMjEwMjE7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI4MUUxRTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjAxODE4O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24ud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI4MUUxRTtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3Mge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLmhvbGxvdyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VjMWEyZTtcbiAgICBjb2xvcjogI2VjMWEyZTsgfVxuICAgIC5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzc5MGExNTtcbiAgICAgIGNvbG9yOiAjNzkwYTE1OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3c6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VjMWEyZTtcbiAgICAgICAgY29sb3I6ICNlYzFhMmU7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlYzFhMmU7XG4gICAgICBjb2xvcjogI2VjMWEyZTsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzc5MGExNTtcbiAgICAgICAgY29sb3I6ICM3OTBhMTU7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWMxYTJlO1xuICAgICAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyODFFMUU7XG4gICAgICBjb2xvcjogIzI4MUUxRTsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNDBmMGY7XG4gICAgICAgIGNvbG9yOiAjMTQwZjBmOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMjgxRTFFO1xuICAgICAgICAgIGNvbG9yOiAjMjgxRTFFOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgICAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmNsZWFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWMxYTJlO1xuICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gICAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzc5MGExNTtcbiAgICAgIGNvbG9yOiAjNzkwYTE1OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWMxYTJlO1xuICAgICAgICBjb2xvcjogI2VjMWEyZTsgfVxuICAgIC5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLmJ1dHRvbi5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWMxYTJlO1xuICAgICAgY29sb3I6ICNlYzFhMmU7IH1cbiAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNzkwYTE1O1xuICAgICAgICBjb2xvcjogIzc5MGExNTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VjMWEyZTtcbiAgICAgICAgICBjb2xvcjogI2VjMWEyZTsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMjgxRTFFO1xuICAgICAgY29sb3I6ICMyODFFMUU7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE0MGYwZjtcbiAgICAgICAgY29sb3I6ICMxNDBmMGY7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzI4MUUxRTtcbiAgICAgICAgICBjb2xvcjogIzI4MUUxRTsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3Mge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuYWxlcnQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICAgICAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cywgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZWMxYTJlOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZWMxYTJlOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMyODFFMUU7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgIHRvcDogLTAuMWVtO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG5hLmJ1dHRvbjpob3ZlciwgYS5idXR0b246Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODg4ODg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICBbdHlwZT0ndGV4dCddOmZvY3VzLCBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywgW3R5cGU9J2RhdGUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBbdHlwZT0nbW9udGgnXTpmb2N1cywgW3R5cGU9J3dlZWsnXTpmb2N1cywgW3R5cGU9J2VtYWlsJ106Zm9jdXMsIFt0eXBlPSdudW1iZXInXTpmb2N1cywgW3R5cGU9J3NlYXJjaCddOmZvY3VzLCBbdHlwZT0ndGVsJ106Zm9jdXMsIFt0eXBlPSd0aW1lJ106Zm9jdXMsIFt0eXBlPSd1cmwnXTpmb2N1cywgW3R5cGU9J2NvbG9yJ106Zm9jdXMsXG4gIHRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMCBzb2xpZCAjMzMzMzMzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjODg4ODg4O1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIHRleHRhcmVhW3Jvd3NdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXQ6OnBsYWNlaG9sZGVyLFxudGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM4ODg4ODg7IH1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhZGZlMTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG5bdHlwZT0nc3VibWl0J10sXG5bdHlwZT0nYnV0dG9uJ10ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5bdHlwZT0nZmlsZSddLFxuW3R5cGU9J2NoZWNrYm94J10sXG5bdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbjogMCAwIDFyZW07IH1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcblt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWxbZm9yXSxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbFtmb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxubGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbmxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW4tbGVmdDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjODg4ODg4O1xuICBiYWNrZ3JvdW5kOiAjZGFkZmUxO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4td2lkdGg6IDA7IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMTI1cmVtIDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODg4ODg7IH1cbiAgLmZpZWxkc2V0IGxlZ2VuZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1yaWdodDogLTAuMTg3NXJlbTtcbiAgICBwYWRkaW5nOiAwIDAuMTg3NXJlbTsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjODg4ODg4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjg1MSwgNTEsIDUxJTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7IH0gfVxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAwIHNvbGlkICMzMzMzMzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICM4ODg4ODg7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFkZmUxO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlZGViOyB9XG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5icmVhZGNydW1icyB7XG4gIG1hcmdpbjogMCAwIDAuNXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCAwLjNyZW07XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgY29udGVudDogXCLigLpcIjtcbiAgICAgIGNvbG9yOiAjMjgxRTFFOyB9XG4gIC5icmVhZGNydW1icyBhIHtcbiAgICBjb2xvcjogIzI4MUUxRTsgfVxuICAgIC5icmVhZGNydW1icyBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5icmVhZGNydW1icyAuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAjODg4ODg4O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmNhbGxvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjMjgxRTFFOyB9XG4gIC5jYWxsb3V0ID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5jYWxsb3V0ID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNhbGxvdXQucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZGRlMDtcbiAgICBjb2xvcjogIzI4MUUxRTsgfVxuICAuY2FsbG91dC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlM2Q5ZDk7XG4gICAgY29sb3I6ICMyODFFMUU7IH1cbiAgLmNhbGxvdXQuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UxZmFlYTtcbiAgICBjb2xvcjogIzI4MUUxRTsgfVxuICAuY2FsbG91dC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2Q5O1xuICAgIGNvbG9yOiAjMjgxRTFFOyB9XG4gIC5jYWxsb3V0LmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdlNGUxO1xuICAgIGNvbG9yOiAjMjgxRTFFOyB9XG4gIC5jYWxsb3V0LnNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtOyB9XG4gIC5jYWxsb3V0LmxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuXG4uY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgYm9yZGVyOiAwIHNvbGlkICNkYWRmZTE7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMjgxRTFFOyB9XG4gIC5jYXJkID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtZGl2aWRlciB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZGFkZmUxOyB9XG4gIC5jYXJkLWRpdmlkZXIgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1zZWN0aW9uIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLWltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4OyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gICAgcmlnaHQ6IDAuNjZyZW07XG4gICAgdG9wOiAwLjMzZW07XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAubWVudSBhLFxuICAubWVudSAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLm1lbnUgaW5wdXQsXG4gIC5tZW51IHNlbGVjdCxcbiAgLm1lbnUgYSxcbiAgLm1lbnUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51IGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lbnUsIC5tZW51Lmhvcml6b250YWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZW51LnZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZW51LmV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5tZW51LnNpbXBsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5tZW51LnNpbXBsZSBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAgIC5tZW51LnNpbXBsZSBhIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubWVkaXVtLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVudS5sYXJnZS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS5sYXJnZS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubGFyZ2Utc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICAubWVudS5uZXN0ZWQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAubWVudS5pY29ucyBhIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZW51Lmljb24tdG9wIGEsIC5tZW51Lmljb24tcmlnaHQgYSwgLm1lbnUuaWNvbi1ib3R0b20gYSwgLm1lbnUuaWNvbi1sZWZ0IGEge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tbGVmdCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tbGVmdCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXJpZ2h0IGxpIGEge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cbiAgLm1lbnUuaWNvbi10b3AgbGkgYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51Lmljb24tYm90dG9tIGxpIGEge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaSxcbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVudSAuaXMtYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogI2VjMWEyZTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubWVudSAuYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogI2VjMWEyZTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubWVudS5hbGlnbi1yaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLWxlZnQgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIC5tZW51LmFsaWduLWxlZnQgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLWxlZnQudmVydGljYWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAubWVudS5hbGlnbi1sZWZ0LnZlcnRpY2FsIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lbnUuYWxpZ24tbGVmdCAubmVzdGVkIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLm1lbnUuYWxpZ24tY2VudGVyIGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1lbnUuYWxpZ24tY2VudGVyIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudSAubWVudS10ZXh0IHtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuXG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucmVzcG9uc2l2ZS1lbWJlZCxcbi5mbGV4LXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lLFxuICAucmVzcG9uc2l2ZS1lbWJlZCBvYmplY3QsXG4gIC5yZXNwb25zaXZlLWVtYmVkIGVtYmVkLFxuICAucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyxcbiAgLmZsZXgtdmlkZW8gaWZyYW1lLFxuICAuZmxleC12aWRlbyBvYmplY3QsXG4gIC5mbGV4LXZpZGVvIGVtYmVkLFxuICAuZmxleC12aWRlbyB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogI2VjMWEyZTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmxhYmVsLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICNlYzFhMmU7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmxhYmVsLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzI4MUUxRTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubGFiZWwuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAubGFiZWwud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAubGFiZWwuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5tZWRpYS1vYmplY3QgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ubWFpbi1zZWN0aW9uIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG5cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucGFnaW5hdGlvbiBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMDYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYWdpbmF0aW9uIGxpOmxhc3QtY2hpbGQsIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFnaW5hdGlvbiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gIC5wYWdpbmF0aW9uIGEsXG4gIC5wYWdpbmF0aW9uIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAucGFnaW5hdGlvbiBhOmhvdmVyLFxuICAgIC5wYWdpbmF0aW9uIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZGFkZmUxOyB9XG4gIC5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYmFja2dyb3VuZDogI2VjMWEyZTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgLnBhZ2luYXRpb24gLmRpc2FibGVkIHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29sb3I6ICM4ODg4ODg7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29udGVudDogJ1xcMjAyNic7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBhYic7IH1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBiYic7IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjJmMmYyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICAgIGNvbG9yOiAjMjgxRTFFOyB9XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICAgIGNvbG9yOiAjMjgxRTFFOyB9XG4gIHRoZWFkIHRyLFxuICB0Zm9vdCB0ciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgdGhlYWQgdGgsXG4gIHRoZWFkIHRkLFxuICB0Zm9vdCB0aCxcbiAgdGZvb3QgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjsgfVxuICB0YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICB0YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjJmMmYyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0OyB9XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cblxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuICAudGFibGUtc2Nyb2xsIHRhYmxlIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogc29saWQgNHB4ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG5cbmEudGh1bWJuYWlsIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDsgfVxuICBhLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjM2LCAyNiwgNDYsIDAuNSk7IH1cbiAgYS50aHVtYm5haWwgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBjbGlwLXBhdGg6IG5vbmU7IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi1qdXN0aWZ5IHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgtY2hpbGQtYXV0byB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuXG4uZmxleC1kaXItcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuLmZvbnQtd2lkZSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI1cmVtOyB9XG5cbi5mb250LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLmZvbnQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5mb250LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMCB7XG4gIG1hcmdpbi10b3A6IDByZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDByZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0wIHtcbiAgcGFkZGluZy10b3A6IDByZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMHJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXRvcC0wIHtcbiAgbWFyZ2luLXRvcDogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0wIHtcbiAgcGFkZGluZy10b3A6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXJpZ2h0LTAge1xuICBtYXJnaW4tcmlnaHQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0wIHtcbiAgcGFkZGluZy1yaWdodDogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tYm90dG9tLTAge1xuICBtYXJnaW4tYm90dG9tOiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctYm90dG9tLTAge1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tbGVmdC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTAge1xuICBwYWRkaW5nLWxlZnQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWhvcml6b250YWwtMCB7XG4gIG1hcmdpbi1yaWdodDogMHJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWhvcml6b250YWwtMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDByZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi12ZXJ0aWNhbC0wIHtcbiAgbWFyZ2luLXRvcDogMHJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctdmVydGljYWwtMCB7XG4gIHBhZGRpbmctdG9wOiAwcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi0xIHtcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLTEge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTEge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctdG9wLTEge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tcmlnaHQtMSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXJpZ2h0LTEge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ib3R0b20tMSB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1sZWZ0LTEge1xuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWxlZnQtMSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4taG9yaXpvbnRhbC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctaG9yaXpvbnRhbC0xIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTEge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy12ZXJ0aWNhbC0xIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLTIge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMnJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctMiB7XG4gIHBhZGRpbmctdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi10b3AtMiB7XG4gIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy10b3AtMiB7XG4gIHBhZGRpbmctdG9wOiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctcmlnaHQtMiB7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWJvdHRvbS0yIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0yIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctbGVmdC0yIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTIge1xuICBtYXJnaW4tcmlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTIge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdmVydGljYWwtMiB7XG4gIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTIge1xuICBwYWRkaW5nLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMyB7XG4gIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0zIHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXRvcC0zIHtcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0zIHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXJpZ2h0LTMge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0zIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tYm90dG9tLTMge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctYm90dG9tLTMge1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tbGVmdC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTMge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWhvcml6b250YWwtMyB7XG4gIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWhvcml6b250YWwtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi12ZXJ0aWNhbC0zIHtcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBhZGRpbmctdmVydGljYWwtMyB7XG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnNlcGFyYXRvci1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuc2VwYXJhdG9yLWNlbnRlcjo6YmVmb3JlLCAuc2VwYXJhdG9yLWNlbnRlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5zZXBhcmF0b3ItY2VudGVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNlcGFyYXRvci1jZW50ZXI6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjZWMxYTJlO1xuICAgIG1hcmdpbjogMXJlbSBhdXRvIDA7IH1cblxuLnNlcGFyYXRvci1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC5zZXBhcmF0b3ItbGVmdDo6YmVmb3JlLCAuc2VwYXJhdG9yLWxlZnQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuc2VwYXJhdG9yLWxlZnQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2VwYXJhdG9yLWxlZnQ6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjZWMxYTJlO1xuICAgIG1hcmdpbjogMXJlbSBhdXRvIDA7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4uc2VwYXJhdG9yLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAuc2VwYXJhdG9yLXJpZ2h0OjpiZWZvcmUsIC5zZXBhcmF0b3ItcmlnaHQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuc2VwYXJhdG9yLXJpZ2h0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNlcGFyYXRvci1yaWdodDo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDAuMTI1cmVtIHNvbGlkICNlYzFhMmU7XG4gICAgbWFyZ2luOiAxcmVtIGF1dG8gMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1sb2FkaW5nIC5zbGljay1saXN0IHtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuL2FqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsgfVxuXG4vKiBJY29ucyAqL1xuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyNHB4O1xuICB3aWR0aDogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB6LWluZGV4OiAxOyB9XG4gIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbiAgLnNsaWNrLW5leHQ6aG92ZXIsXG4gIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMC43NTsgfVxuICAuc2xpY2stcHJldi5zbGljay1kaXNhYmxlZCxcbiAgLnNsaWNrLW5leHQuc2xpY2stZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTcyLCAxNzIsIDE3MiwgMC41KTsgfVxuICAgIC5zbGljay1wcmV2LnNsaWNrLWRpc2FibGVkOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgICAgY29sb3I6IHJnYmEoMTcyLCAxNzIsIDE3MiwgMC41KTtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6IDhweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiA4cHg7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIu6kiFwiOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLupIpcIjsgfVxuXG4uc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiA4cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dCB7XG4gICAgbGVmdDogOHB4O1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLupIpcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi7qSIXCI7IH1cblxuLyogRG90cyAqL1xuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1kb3RzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjc1OyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgb3BhY2l0eTogMTsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb250YWluZXItZGl2aWRlci1yaWdodCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGFkZmUxOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRhaW5lci1kaXZpZGVyLXJpZ2h0IHtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkYWRmZTE7XG4gICAgICBib3JkZXItYm90dG9tOiAwOyB9IH1cblxuLmF2YXRhciB7XG4gIGhlaWdodDogNDBweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWluLXdpZHRoOiA0MHB4OyB9XG4gIC5hdmF0YXIuYXZhdGFyLXNtYWxsIHtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5hdmF0YXIuYXZhdGFyLWxhcmdlIHtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLm1iMCB7XG4gIG1hcmdpbi1ib3R0b206IDByZW0gIWltcG9ydGFudDsgfVxuXG4ubWIxIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYjIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iMyB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4udHlwZS1zaWRlbGluZXMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudHlwZS1zaWRlbGluZXMgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAudHlwZS1zaWRlbGluZXMgc3BhbjpiZWZvcmUsIC50eXBlLXNpZGVsaW5lcyBzcGFuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDk5OTlweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAycHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gICAgLnR5cGUtc2lkZWxpbmVzIHNwYW46YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAxMDAlOyB9XG4gICAgLnR5cGUtc2lkZWxpbmVzIHNwYW46YWZ0ZXIge1xuICAgICAgbGVmdDogMTAwJTsgfVxuXG4udHlwZS1zaWRlbGluZXMtZG90dGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnR5cGUtc2lkZWxpbmVzLWRvdHRlZCBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIC50eXBlLXNpZGVsaW5lcy1kb3R0ZWQgc3BhbjpiZWZvcmUsIC50eXBlLXNpZGVsaW5lcy1kb3R0ZWQgc3BhbjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiA5OTk5cHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvcmRlci10b3Atc3R5bGU6IGRvdHRlZDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDJweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgICAudHlwZS1zaWRlbGluZXMtZG90dGVkIHNwYW46YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAxMDAlOyB9XG4gICAgLnR5cGUtc2lkZWxpbmVzLWRvdHRlZCBzcGFuOmFmdGVyIHtcbiAgICAgIGxlZnQ6IDEwMCU7IH1cblxuLmRvdWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmRvdWJsZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41ZW07IH1cbiAgICAuZG91YmxlIHNwYW46YmVmb3JlLCAuZG91YmxlIHNwYW46YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogOTk5OXB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDJweDtcbiAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAgICAgaGVpZ2h0OiAwLjVlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjI1ZW07IH1cbiAgICAuZG91YmxlIHNwYW46YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAxMDAlOyB9XG4gICAgLmRvdWJsZSBzcGFuOmFmdGVyIHtcbiAgICAgIGxlZnQ6IDEwMCU7IH1cblxuLmN1c3RvbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmN1c3RvbSBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gICAgLmN1c3RvbSBzcGFuOmJlZm9yZSwgLmN1c3RvbSBzcGFuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvcmRlci10b3Atc3R5bGU6IGRvdHRlZDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDRweDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICMyOTgwYjk7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gICAgLmN1c3RvbSBzcGFuOmJlZm9yZSB7XG4gICAgICByaWdodDogMTAwJTsgfVxuICAgIC5jdXN0b20gc3BhbjphZnRlciB7XG4gICAgICBsZWZ0OiAxMDAlOyB9XG5cbi5jdXN0b20tMiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmN1c3RvbS0yIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVlbTsgfVxuICAgIC5jdXN0b20tMiBzcGFuOmJlZm9yZSwgLmN1c3RvbS0yIHNwYW46YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogOTk5OXB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDRweDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICMyN2FlNjA7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gICAgLmN1c3RvbS0yIHNwYW46YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAxMDAlOyB9XG4gICAgLmN1c3RvbS0yIHNwYW46YWZ0ZXIge1xuICAgICAgbGVmdDogMTAwJTsgfVxuXG4udGhpbmcge1xuICB6LWluZGV4OiA0MDAwOyB9XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7IH1cblxuLmNsZWFyZml4OjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5uYXYtY29udGFpbmVyID4gdWwge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubmF2LWNvbnRhaW5lciA+IHVsIHtcbiAgICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuICAudXJkdS10aGVtZSAubmF2LWNvbnRhaW5lciA+IHVsIHtcbiAgICBmb250LXNpemU6IDIxcHg7IH1cbiAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpLmFjdGl2ZSA+IGE6aG92ZXIge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGk6aG92ZXIgPiBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9IH1cbiAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpOmhvdmVyID4gdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgLW1vei10cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAtbXMtdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgLW8tdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpOmhvdmVyIC5zdWItbWVnYS1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgLW1zLXRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIC1vLXRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaS5hY3RpdmUgPiBhOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nOiAxMXB4IDhweCAxMXB4IDE2cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzI4MUUxRTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAxMnB4IDE2cHggMTJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYTpob3ZlciwgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYS5hY3RpdmUge1xuICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2VjMWEyZTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaSA+IGE6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4ubmF2LWNvbnRhaW5lciA+IHVsID4gbGkgPiB1bCxcbi5uYXYtY29udGFpbmVyID4gdWwgbGkgPiAuc3ViLW1lZ2EtbWVudSB7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIHotaW5kZXg6IDIwMDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiAwLjVzIGFsbDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkgPiB1bCxcbiAgICAubmF2LWNvbnRhaW5lciA+IHVsIGxpID4gLnN1Yi1tZWdhLW1lbnUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaSA+IHVsIGxpIGEsXG4gIC5uYXYtY29udGFpbmVyID4gdWwgbGkgPiAuc3ViLW1lZ2EtbWVudSBsaSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkgPiB1bCBsaSBhOmFmdGVyLFxuICAgIC5uYXYtY29udGFpbmVyID4gdWwgbGkgPiAuc3ViLW1lZ2EtbWVudSBsaSBhOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0xcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWMxYTJlO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaSA+IHVsIGxpIGE6aG92ZXIsXG4gICAgLm5hdi1jb250YWluZXIgPiB1bCBsaSA+IC5zdWItbWVnYS1tZW51IGxpIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNlYzFhMmU7IH1cbiAgICAgIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaSA+IHVsIGxpIGE6aG92ZXI6YWZ0ZXIsXG4gICAgICAubmF2LWNvbnRhaW5lciA+IHVsIGxpID4gLnN1Yi1tZWdhLW1lbnUgbGkgYTpob3ZlcjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uYXYtY29udGFpbmVyID4gdWwgPiBsaSA+IHVsIGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0NzQ3NDc7IH1cbiAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gdWwgbGkgYSB7XG4gICAgcGFkZGluZzogMTZweCAyMnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDsgfVxuXG4ubmF2LWNvbnRhaW5lciA+IHVsIGxpID4gLnN1Yi1tZWdhLW1lbnUgbGkgYSB7XG4gIHBhZGRpbmc6IDEycHggMCAxMHB4IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7IH1cblxuLnN1Yi1tZWdhLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAyMHB4OyB9XG5cbi5tZW51LXZpc2libGUge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUtdmlzaWJsZSAuYWQtYmxvY2staGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH0gfVxuXG4ubWVudS12aXNpYmxlICNtYWluLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5tZW51LXZpc2libGUgI25hdi1wYW5lbCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tZW51LXZpc2libGUgLnN1YmhlYWRlci1ibG9jayB1bCBsaS5lZGl0aW9uLCAubWVudS12aXNpYmxlIC5zdWJoZWFkZXItYmxvY2sgdWwgbGkuc2VhcmNoIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLm1lbnUtdmlzaWJsZSBtYWluLFxuLm1lbnUtdmlzaWJsZSAubWFpbi1oZWFkZXItaW5uZXIsXG4ubWVudS12aXNpYmxlICNtYWluLWZvb3RlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm5hdi1wYW5lbC13cmFwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLm1lbnUtdmlzaWJsZSAubmF2LXBhbmVsLXdyYXAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgei1pbmRleDogOTk5OTk5OTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbiNuYXYtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgI25hdi1wYW5lbCB7XG4gICAgICB3aWR0aDogMTEwMHB4O1xuICAgICAgbWFyZ2luOiBhdXRvOyB9IH1cblxuLm5hdi1wYW5lbCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLm5hdi1wYW5lbCB1bCB7XG4gICAgICBtYXJnaW46IDAgLTFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAubmF2LXBhbmVsIHVsIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcGFkZGluZzogMCAzNXB4O1xuICAgICAgLXdlYmtpdC1jb2x1bW5zOiAyO1xuICAgICAgLW1vei1jb2x1bW5zOiAyO1xuICAgICAgY29sdW1uczogMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAubmF2LXBhbmVsIHVsIHVsIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4ODg4ODg7IH0gfVxuICAubmF2LXBhbmVsIHVsIHVsIGxpOm5vdCg6bGFzdC1jaGlsZCkgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaTpub3QoLmV4cGFuZGVkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwOyB9XG5cbi5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkuZXhwYW5kZWQge1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgbWF4LWhlaWdodDogNjAwcHg7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpLmV4cGFuZGVkID4gYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZWMxYTJlOyB9XG4gICAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaS5leHBhbmRlZCA+IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNlYzFhMmU7IH1cbiAgICAubWVudS12aXNpYmxlIC5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkuZXhwYW5kZWQgPiBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAubWVudS12aXNpYmxlIC5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkuZXhwYW5kZWQgPiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNlYzFhMmU7IH1cblxuLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gIC5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkgPiB1bCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSA+IHVsIGxpOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMjRweDtcbiAgICAgICAgY29udGVudDogXCLupIRcIjsgfVxuICAgICAgW2Rpcj1cImx0clwiXSAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwi7qSFXCI7IH1cbiAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSA+IHVsIGEge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIHBhZGRpbmc6IDZweCAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gdWwgYSB7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gdWwgYSB7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMDtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gdWwgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfSB9XG5cbi5uYXYtcGFuZWwgZm9ybS5zZWFyY2gge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uYXYtcGFuZWwgLnRvcGljcyAudG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm5hdi1wYW5lbCAudG9waWNzIC5leHBhbmRlZCAudG9nZ2xlIHNwYW4ge1xuICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IH1cblxuLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSB7XG4gIG1heC1oZWlnaHQ6IDQwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7IH1cbiAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSAudG9nZ2xlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwN1wiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDJweDtcbiAgICB3aWR0aDogNDAlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpIC50b2dnbGUgaSB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogNDBweDsgfVxuICAgIC5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkgLnRvZ2dsZTpob3ZlciB7XG4gICAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4ubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gYSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgcGFkZGluZzogOXB4IDIwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gYSB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSA+IGEge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgcGFkZGluZzogOXB4IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAubWVudS12aXNpYmxlIC5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9IH1cblxuLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSA+IGE6aG92ZXIge1xuICBjb2xvcjogI2VjMWEyZTsgfVxuXG4vKkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjE5cHgpIHtcbiAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSA+IHVsIHtcbiAgICAtd2Via2l0LWNvbHVtbnM6IDI7XG4gICAgLW1vei1jb2x1bW5zOiAyO1xuICAgIGNvbHVtbnM6IDI7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MjBweCkgYW5kIChtYXgtd2lkdGg6IDkyOXB4KSB7XG4gIC5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkgPiB1bCB7XG4gICAgLXdlYmtpdC1jb2x1bW5zOiAzO1xuICAgIC1tb3otY29sdW1uczogMztcbiAgICBjb2x1bW5zOiAzO1xuICB9XG59Ki9cbi5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkgPiB1bCBhOmhvdmVyIHtcbiAgY29sb3I6ICNlYzFhMmU7IH1cblxuLm5hdi1wYW5lbCAuc29jaWFscy1hcmVhIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgcGFkZGluZzogMTNweCAwOyB9XG5cbi5uYXYtcGFuZWwgLnNvY2lhbHMtYXJlYSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4ubmF2LXBhbmVsIC5zb2NpYWxzLWFyZWEgaDYge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5uYXYtcGFuZWwgLnNvY2lhbHMtYXJlYSAuc29jaWFscy1idG5zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5uYXYtcGFuZWwgLnNvY2lhbHMtYXJlYSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2VjMWEyZTsgfVxuXG4ubmF2LXBhbmVsIC5zZWNCdXR0b25zIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLm5hdi1wYW5lbCAuc2VjQnV0dG9ucyBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uc3Vic2NyaWJlLWZpZWxkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS4zNzVlbSkge1xuICAgIC5zdWJzY3JpYmUtZmllbGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjsgfVxuICAgICAgLnN1YnNjcmliZS1maWVsZCBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgICAuc3Vic2NyaWJlLWZpZWxkIGEge1xuICAgICAgICBjb2xvcjogIzI4MUUxRTsgfVxuICAgICAgICAuc3Vic2NyaWJlLWZpZWxkIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjZWMxYTJlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubmF2LXBhbmVsID4gdWw6YWZ0ZXIsXG4gIC5uYXYtcGFuZWwgPiB1bDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm5hdi1wYW5lbCA+IHVsOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubmF2LXBhbmVsIC5zb2NpYWxzLWFyZWEge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5uYXYtcGFuZWwgLnNlY0J1dHRvbnMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSB7XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDE1NHB4O1xuICAgIG1hcmdpbjogMCAyMHB4O1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpOm50aC1jaGlsZCg2KSB7XG4gICAgY2xlYXI6IHJpZ2h0OyB9IH1cblxuI25vdGZvdW5kIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA0NTBweDsgfVxuXG4jbm90Zm91bmQgLm5vdGZvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5ub3Rmb3VuZCB7XG4gIG1heC13aWR0aDogNzEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAxOTBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7IH1cblxuLm5vdGZvdW5kIC5pbnB1dC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm5vdGZvdW5kIC5ub3Rmb3VuZC00MDQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiAxNTBweDsgfVxuXG4ubm90Zm91bmQgLm5vdGZvdW5kLTQwNCBoMSB7XG4gIGNvbG9yOiAjZWMxYTJlO1xuICBmb250LXNpemU6IDE1MHB4O1xuICBtYXJnaW46IDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubm90Zm91bmQgaDIge1xuICBjb2xvcjogIzI5MjkyOTtcbiAgZm9udC1zaXplOiAyOHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5ub3Rmb3VuZCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBjb2xvcjogIzMzMzsgfVxuXG4ubm90Zm91bmQgYSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgY29sb3I6ICMyOTI5Mjk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDRweCAxNXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBib3gtc2hhZG93OiAwcHggNHB4IDE1cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4ycyBhbGw7XG4gIHRyYW5zaXRpb246IDAuMnMgYWxsOyB9XG5cbi5ub3Rmb3VuZCBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5ub3Rmb3VuZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5ub3Rmb3VuZCAubm90Zm91bmQtNDA0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAubm90Zm91bmQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4OyB9IH1cblxuYm9keS5zaG93cy12aWRlbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIGJvZHkuc2hvd3MtdmlkZW8gYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgYm9keS5zaG93cy12aWRlbyAuc2VjdGlvbi10aXRsZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgYm9keS5zaG93cy12aWRlbyAubG9nby1kZWZhdWx0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuc2hvd3MtdmlkZW8gLmxvZ28td2hpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIGJvZHkuc2hvd3MtdmlkZW8gaGVhZGVyI21haW4taGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG4gICAgYm9keS5zaG93cy12aWRlbyBoZWFkZXIjbWFpbi1oZWFkZXIgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgYm9keS5zaG93cy12aWRlbyBoZWFkZXIjbWFpbi1oZWFkZXIgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gIGJvZHkuc2hvd3MtdmlkZW8gLmFkLWJsb2NrLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4uc2hvd3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuc2hvd3NfX2Jhbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogNjAwcHg7IH1cbiAgICAuc2hvd3NfX2Jhbm5lci1pbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwOyB9XG4gICAgICAuc2hvd3NfX2Jhbm5lci1pbWcgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAuc2hvd3NfX2Jhbm5lci1pbmZvIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDQ7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAuc2hvd3NfX2Jhbm5lci1pbmZvIHtcbiAgICAgICAgICB3aWR0aDogNDAlOyB9IH1cbiAgICAuc2hvd3NfX2Jhbm5lci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMjBweDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAuc2hvd3NfX2Jhbm5lci10aXRsZSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAuc2hvd3NfX2Jhbm5lci10aXRsZSBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiA5MHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICAgICAgLnNob3dzX19iYW5uZXItdGl0bGUgc3BhbjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICAgIGhlaWdodDogOTAlOyB9XG4gICAgLnNob3dzX19iYW5uZXItZGVzYyBwIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5zaG93c19faW50cm8ge1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAuc2hvd3NfX2ludHJvIHtcbiAgICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gICAgLnNob3dzX19pbnRybyBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgICAuc2hvd3NfX2ludHJvIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG4gIC5zaG93cyAuZHVyYXRpb24ge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMC41cmVtO1xuICAgIGxlZnQ6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBwYWRkaW5nOiA0cHggNHB4IDNweDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4uc2hvd3MtZmVhdHVyZWRfX3BhZ2UtdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC5zaG93cy1mZWF0dXJlZF9fcGFnZS10aXRsZTphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNzksIDE3OSwgMTc5LCAwLjUpOyB9XG4gIC5zaG93cy1mZWF0dXJlZF9fcGFnZS10aXRsZSBoMiB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zaG93cy1mZWF0dXJlZCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgyIGEge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uc2hvd3MtZmVhdHVyZWQgLmFydGljbGUtaXRlbS5tZWRpYS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIzNiwgMjYsIDQ2LCAwLjgpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAtMTZweDtcbiAgdGV4dC1pbmRlbnQ6IDNweDtcbiAgei1pbmRleDogNDsgfVxuICBbZGlyPVwicnRsXCJdIC5zaG93cy1mZWF0dXJlZCAuYXJ0aWNsZS1pdGVtLm1lZGlhLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSB7XG4gICAgdGV4dC1pbmRlbnQ6IC0zcHg7IH1cblxuLnNob3dzLWZlYXR1cmVkIC5hcnRpY2xlLWl0ZW0ubWVkaWEtdmlkZW8gLmFydGljbGUtaXRlbS1pbWcgYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxuXG4uc2hvd3MtZmVhdHVyZWQgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtdmlkZW8gLmFydGljbGUtaXRlbS1pbWcge1xuICBoZWlnaHQ6IGF1dG87IH1cbiAgLnNob3dzLWZlYXR1cmVkIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB3aWR0aDogNTZweDtcbiAgICBoZWlnaHQ6IDU2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDU2cHg7IH1cblxuLnNob3dzLWl0ZW1zIHtcbiAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAuc2hvd3MtaXRlbXMgLnNob3dzLWl0ZW0gLmFydGljbGUtaXRlbS10aXRsZSBhIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gIC5zaG93cy1pdGVtcyAuc2hvd3MtaXRlbSAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUge1xuICAgIHdpZHRoOiAyM3B4O1xuICAgIGhlaWdodDogMjNweDtcbiAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDI2LCA0NiwgMC41KTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgei1pbmRleDogMTtcbiAgICBib3R0b206IDA7XG4gICAgdGV4dC1pbmRlbnQ6IC0zcHg7XG4gICAgbWFyZ2luOiAwLjVyZW07IH1cbiAgLnNob3dzLWl0ZW1zX19jdGEge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnNob3dzLWl0ZW1zX19jdGEgLmJ1dHRvbiB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uc2hvd3MtdmlkZW8ge1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gIC5zaG93cy12aWRlb19faW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC5zaG93cy12aWRlb19faW5mby1jb3VudCB7XG4gICAgICBmb250LXNpemU6IDEzcHg7IH1cbiAgLnNob3dzLXZpZGVvX19jdXJyZW50IC5hcnRpY2xlLWl0ZW0tbWVkaWEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAyMjVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuc2hvd3MtdmlkZW9fX2N1cnJlbnQgLmFydGljbGUtaXRlbS1tZWRpYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiA1NTVweDsgfSB9XG4gICAgLnNob3dzLXZpZGVvX19jdXJyZW50IC5hcnRpY2xlLWl0ZW0tbWVkaWEgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDsgfVxuICAuc2hvd3MtdmlkZW9fX2xvYWRlciB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgI2UwZTBlMDtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgIzY4Njg2ODtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgbGVmdDogNDYlO1xuICAgIHRvcDogNDMlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA1OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAuc2hvd3MtdmlkZW9fX2xvYWRlciB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAubWFpbi1oZWFkZXItaW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDQwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLm1haW4taGVhZGVyX19uYXZiYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAzMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFpbi1oZWFkZXJfX25hdmJhciB7XG4gICAgd2lkdGg6IDEyNTBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLm1haW4taGVhZGVyX19uYXZiYXIgLm5hdi1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgLyogSUUgYW5kIEVkZ2UgKi9cbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgLyogRmlyZWZveCAqLyB9XG4gICAgLm1haW4taGVhZGVyX19uYXZiYXIgLm5hdi1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLm1haW4taGVhZGVyX19uYXZiYXIgLm5hdi1jb250YWluZXIgPiAubWVudSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAubWFpbi1oZWFkZXJfX25hdmJhciAubmF2LWNvbnRhaW5lciA+IC5tZW51IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5zZWFyY2gtYmxvY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uc2VhcmNoLWZvcm0tYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5zZWFyY2gtZm9ybS1ibG9jayBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgYm9yZGVyLXRvcDogMC41cHggc29saWQgIzg4ODtcbiAgICBib3JkZXItcmlnaHQ6IDAuNXB4IHNvbGlkICM4ODg7XG4gICAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgIzg4ODtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHdpZHRoOiAyNjBweDtcbiAgICBoZWlnaHQ6IDM0cHg7IH1cbiAgLnNlYXJjaC1mb3JtLWJsb2NrIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWMxYTJlO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4jbWFpbi1mb290ZXIge1xuICBtYXJnaW46IDJyZW0gMCAwO1xuICBwYWRkaW5nOiAyNHB4O1xuICBjb2xvcjogIzI4MUUxRTtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICBbZGlyPVwicnRsXCJdICNtYWluLWZvb3RlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOThweDsgfSB9XG4gIC5lbmctdGhlbWUgI21haW4tZm9vdGVyLFxuICAudHVya2lzaC10aGVtZSAjbWFpbi1mb290ZXIge1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAjbWFpbi1mb290ZXIgaDYge1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBbZGlyPVwicnRsXCJdICNtYWluLWZvb3RlciBoNiB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuICAjbWFpbi1mb290ZXIgdWwubWVudS52ZXJ0aWNhbCB7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAjbWFpbi1mb290ZXIgdWwubWVudS52ZXJ0aWNhbCB7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgI21haW4tZm9vdGVyIHVsLm1lbnUudmVydGljYWwgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgcGFkZGluZzogNnB4IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4xOyB9XG4gICAgICAjbWFpbi1mb290ZXIgdWwubWVudS52ZXJ0aWNhbCBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNlYzFhMmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAjbWFpbi1mb290ZXIgLnNvY2lhbC1idG4ge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gI21haW4tZm9vdGVyIC5zb2NpYWwtYnRuIGkge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG5cbi5tYWluLWZvb3Rlci1iZWZvcmUge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgW2Rpcj1cInJ0bFwiXSAubWFpbi1mb290ZXItaW5uZXJfX2dyaWQgPiAuY2VsbDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItbGVmdDogMC41cHggc29saWQgI2U3ZTdlNzsgfSB9XG5cbi5tYWluLWZvb3Rlci1pbm5lciA+IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5tYWluLWZvb3Rlci1pbm5lciA+IHVsIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAgIC5tYWluLWZvb3Rlci1pbm5lciA+IHVsIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG4gIC5tYWluLWZvb3Rlci1pbm5lciA+IHVsID4gbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAubWFpbi1mb290ZXItaW5uZXIgPiB1bCA+IGxpOm50aC1vZi10eXBlKDQpIHtcbiAgICAgIG9yZGVyOiA1OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAubWFpbi1mb290ZXItaW5uZXIgPiB1bCA+IGxpIHtcbiAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLm1haW4tZm9vdGVyLWlubmVyID4gdWwgPiBsaTpudGgtb2YtdHlwZSgyKSwgLm1haW4tZm9vdGVyLWlubmVyID4gdWwgPiBsaTpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgIGdyaWQtcm93OiBzcGFuIDE7XG4gICAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxOyB9XG4gICAgICAubWFpbi1mb290ZXItaW5uZXIgPiB1bCA+IGxpOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgb3JkZXI6IDU7IH1cbiAgICAgIC5tYWluLWZvb3Rlci1pbm5lciA+IHVsID4gbGk6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgICBvcmRlcjogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAgICAgLm1haW4tZm9vdGVyLWlubmVyID4gdWwgPiBsaSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGZsZXg6IDEgMCAxNDVweDsgfVxuICAgICAgICAubWFpbi1mb290ZXItaW5uZXIgPiB1bCA+IGxpOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICBvcmRlcjogMDsgfSB9XG4gICAgLm1haW4tZm9vdGVyLWlubmVyID4gdWwgPiBsaTpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGdyaWQtcm93OiBzcGFuIDI7XG4gICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMjsgfVxuXG4ubWFpbi1mb290ZXItYWZ0ZXIge1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmxvZ28tZm9vdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9IH1cblxuLmxvZ28tZm9vdGVyIGltZyB7XG4gIGhlaWdodDogODBweDsgfVxuXG5saSAubG9nby1mb290ZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuLmZvb3Rlci1saW5rcyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbWFyZ2luLXRvcDogLTdweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY2xlYXI6IHJpZ2h0O1xuICAtd2Via2l0LWNvbHVtbnM6IDI7XG4gIC1tb3otY29sdW1uczogMjtcbiAgY29sdW1uczogMjtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAwO1xuICAtbW96LWNvbHVtbi1nYXA6IDA7XG4gIGNvbHVtbi1nYXA6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmZvb3Rlci1saW5rcyB7XG4gICAgICBwYWRkaW5nLXRvcDogMnJlbTsgfSB9XG4gIC5mb290ZXItbGlua3MgYSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjMjgxRTFFOyB9XG4gICAgLmZvb3Rlci1saW5rcyBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDUwcHgpIHtcbiAgICAuZm9vdGVyLWxpbmtzIHtcbiAgICAgIC13ZWJraXQtY29sdW1uczogMztcbiAgICAgIC1tb3otY29sdW1uczogMztcbiAgICAgIGNvbHVtbnM6IDM7XG4gICAgICAtd2Via2l0LWNvbHVtbi1nYXA6IDIwcHg7XG4gICAgICAtbW96LWNvbHVtbi1nYXA6IDIwcHg7XG4gICAgICBjb2x1bW4tZ2FwOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZm9vdGVyLWxpbmtzIHtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgICAgLXdlYmtpdC1jb2x1bW5zOiAyO1xuICAgICAgLW1vei1jb2x1bW5zOiAyO1xuICAgICAgY29sdW1uczogMjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlci1saW5rcyB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGNsZWFyOiBub25lO1xuICAgICAgLXdlYmtpdC1jb2x1bW5zOiAzO1xuICAgICAgLW1vei1jb2x1bW5zOiAzO1xuICAgICAgY29sdW1uczogMztcbiAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNDBweDtcbiAgICAgIC1tb3otY29sdW1uLWdhcDogNDBweDtcbiAgICAgIGNvbHVtbi1nYXA6IDQwcHg7IH0gfVxuXG4uZm9vdGVyLW1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5mb290ZXItbWVudSB7XG4gICAgICBtYXJnaW4tdG9wOiAzNnB4O1xuICAgICAgcGFkZGluZy10b3A6IDEycHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmZvb3Rlci1tZW51IHtcbiAgICAgICAgZ2FwOiAxNnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmZvb3Rlci1tZW51OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcbiAgICAgIGhlaWdodDogMC41cHg7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwOyB9IH1cbiAgLmZvb3Rlci1tZW51IGEge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAuZm9vdGVyLW1lbnUgYSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gICAgLmZvb3Rlci1tZW51IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNlYzFhMmU7IH1cblxuLmNvcHlyaWdodCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjODg4ODg4O1xuICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5jb3B5cmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb3B5cmlnaHQge1xuICAgICAgbWFyZ2luLXRvcDogODlweDsgfSB9XG5cbi5mb290ZXItZXh0cmEtbGlua3Mge1xuICBmb250LXNpemU6IDEycHg7IH1cbiAgLmZvb3Rlci1leHRyYS1saW5rcyBhIHtcbiAgICBwYWRkaW5nOiAwIDAuNzVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmZmZmOyB9XG4gICAgLmZvb3Rlci1leHRyYS1saW5rcyBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiB7XG4gIC5uby1zcGFjZXIge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC5uby10b3Atc3BhY2VyIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubm8tYm90dG9tLXNwYWNlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm5vLWxlZnQtc3BhY2VyIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5uby1yaWdodC1zcGFjZXIge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAudG9wLXNwYWNlci0teGwge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAudG9wLXNwYWNlci0tbCB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnRvcC1zcGFjZXItLW0ge1xuICAgIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuICAudG9wLXNwYWNlciB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnRvcC1zcGFjZXItLXMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAudG9wLXNwYWNlci0teHMge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5ib3R0b20tc3BhY2VyLS14bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5ib3R0b20tc3BhY2VyLS1sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW0gIWltcG9ydGFudDsgfVxuICAuYm90dG9tLXNwYWNlci0tbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5ib3R0b20tc3BhY2VyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAuYm90dG9tLXNwYWNlci0tcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweCAhaW1wb3J0YW50OyB9XG4gIC5ib3R0b20tc3BhY2VyLS14cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG4uc21hbGwtdXAtMSAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC0xIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbWFsbC11cC0yIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuLnNtYWxsLXVwLTIgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYWxsLXVwLTMgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTMgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4uc21hbGwtdXAtMyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uc21hbGwtdXAtNCAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC00IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbWFsbC11cC01IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuLnNtYWxsLXVwLTUgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYWxsLXVwLTYgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTYgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4uc21hbGwtdXAtNiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uc21hbGwtdXAtNyAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC03IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbWFsbC11cC04IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5zbWFsbC11cC04IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuLnNtYWxsLXVwLTggLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGl1bS11cC0xIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC0xIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC0yIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC0yIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC0zIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC0zIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC00IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC00IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC01IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC01IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC02IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC02IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC03IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC03IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC04IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtOCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC04IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTEgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtMiAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTIgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtMyAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTMgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtNCAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTQgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtNSAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTUgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtNiAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTYgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtNyAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTcgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtOCAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtOCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTggLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbmJvZHkge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgcGFkZGluZy10b3A6IDY5cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBib2R5IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMTVweDsgfSB9XG4gIFtkaXI9XCJydGxcIl0gYm9keSB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgYm9keS5wZXJzaWFuLXNpbXBsZSB7XG4gICAgcGFkZGluZzogMDsgfVxuXG4uY2FyZC5jYXJkLWl0ZW0uY2FyZC1wb2RjYXN0IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuXG4uZ3V0dGVycy0xeCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIC5ndXR0ZXJzLTF4ID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuLmd1dHRlcnMtMngge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTEuMjVyZW07IH1cbiAgLmd1dHRlcnMtMnggPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH1cblxuLmd1dHRlcnMtbWFyZ2luLTF4IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgLmd1dHRlcnMtbWFyZ2luLTF4IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuXG4uZ3V0dGVycy1tYXJnaW4tMnggLmNlbGwge1xuICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9XG5cbi8qQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICBbZGlyPVwicnRsXCJdIHtcbiAgICAubGFyZ2UtdW5jZW50ZXJlZCwgLmxhcmdlLXB1c2gtMCwgLmxhcmdlLXB1bGwtMCB7XG4gICAgICBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG4gIH1cbn0qL1xuLnZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4uY2VudGVyLWVsZW1lbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4ucm91bmQge1xuICBib3JkZXItcmFkaXVzOiAxMDAwcHg7IH1cblxuLnVzZS1sb2FkZXIge1xuICBoZWlnaHQ6IDM2MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2FqYXgtbG9hZGVyLmdpZikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgdHJhbnNwYXJlbnQ7IH1cbiAgLnVzZS1sb2FkZXIgPiBkaXYge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGhlaWdodDogNDAwcHg7IH1cblxuLnVzZS1sb2FkZXIuc2xpY2staW5pdGlhbGl6ZWQuc2xpY2stbG9hZGVkIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAudXNlLWxvYWRlci5zbGljay1pbml0aWFsaXplZC5zbGljay1sb2FkZWQgPiBkaXYge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAudXNlLWxvYWRlci5zbGljay1pbml0aWFsaXplZC5zbGljay1sb2FkZWQuc2xpZGVyLW5hdiB7XG4gICAgYmFja2dyb3VuZDogIzAwMDAwMDsgfVxuXG4udXNlLWxvYWRlci5zbGljay1pbml0aWFsaXplZC5zbGljay1sb2FkZWQgLnNsaWNrLWxpc3QsXG4udXNlLWxvYWRlci5zbGljay1pbml0aWFsaXplZC5zbGljay1sb2FkZWQgYnV0dG9uIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW47IH1cblxuLnJvdW5kIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qXG4uaW5wdXQtZ3JvdXAud2l0aC1yYWRpdXMgPiAqOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCA1cHggNXB4IDA7XG59XG5cbi5pbnB1dC1ncm91cC53aXRoLXJhZGl1cyA+ICo6bGFzdC1jaGlsZCA+ICoge1xuICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweDtcbn1cbiovXG4uc2hvdy1mb3ItcHJpbnRhYmxlLWFyZWEge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmlucHV0LnJhZGl1cyxcbi5pbnB1dC1ncm91cCA+IGlucHV0OmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG5cbi5zZWFyY2gtZm9ybSBpbnB1dC5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50OyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMHJlbTsgfVxuXG4uYXJpYWwtaGVhZGluZyB7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgfVxuXG4uZm9udC1wcmltYXJ5IHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7IH1cblxuLmZvbnQtc2Vjb25kYXJ5IHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7IH1cblxuYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2UgMHMsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSAwcywgb3BhY2l0eSAwLjI1cyBlYXNlIDBzOyB9XG5cbmgxLFxuaDIsXG5oMyxcbmg0IHtcbiAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICBbZGlyPVwicnRsXCJdIGgxLCBbZGlyPVwicnRsXCJdXG4gIGgyLCBbZGlyPVwicnRsXCJdXG4gIGgzLCBbZGlyPVwicnRsXCJdXG4gIGg0IHtcbiAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gIC51cmR1LXRoZW1lIGgxLCAudXJkdS10aGVtZVxuICBoMiwgLnVyZHUtdGhlbWVcbiAgaDMsIC51cmR1LXRoZW1lXG4gIGg0IHtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG5cbi8qXG4ub2ZmLWNhbnZhcyB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmpzLW9mZi1jYW52YXMtZXhpdCB7XG4gIHotaW5kZXg6IDEwO1xufVxuKi9cbi8qW2Rpcj1cInJ0bFwiXSAuY2xvc2UtYnV0dG9uIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDFyZW07XG59Ki9cbi8qLnBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICNhYWE7XG59Ki9cbnAge1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgMC41cmVtOyB9XG4gIGZpZ3VyZS5yb3VuZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ubGVhZGVyYm9hcmQtYWQge1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uLnJhZGl1cyxcbi5idXR0b24ucmFkaXVzIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsXG4uYnV0dG9uLnNlY29uZGFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7IH1cblxuYnV0dG9uLmdyYXksXG4uYnV0dG9uLmdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZkNmQ2O1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICBidXR0b24uZ3JheTpob3ZlcixcbiAgLmJ1dHRvbi5ncmF5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgxRTFFO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi8qIC0tLS0tLSBuYXZpZ2F0aW9uLCBwYW5lbCBhbmQgc3RpY2t5IGhlYWRlciAtLS0tLS0gU1RBUlQgLS0tLS0tICovXG4jc3RpY2t5LWhlYWRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC0xMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZSAwcztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAjc3RpY2t5LWhlYWRlci5zdHVjay1oZWFkZXIge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDBweCAxcHggMnB4O1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDEwcHggMCAjY2NjY2NjO1xuICAgIC8qfiAuY2FudmFzLXBhbmVsIHtcbiAgICAgIHRvcDogNDBweDtcbiAgICB9Ki8gfVxuXG4uc3RpY2t5LWhlYWRlci1zcGFjZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4udG9nZ2xlLW5hdi1wYW5lbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMjgxRTFFO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMS41cmVtOyB9XG4gIC50b2dnbGUtbmF2LXBhbmVsOmhvdmVyIHtcbiAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4vKiAtLS0tLS0gbmF2aWdhdGlvbiwgcGFuZWwgYW5kIHN0aWNreSBoZWFkZXIgLS0tLS0tIEVORCAtLS0tLS0gKi9cbi5jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3cteDogY2xpcDsgfVxuXG5tYWluLFxuaGVhZGVyLFxuZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbm1haW4ge1xuICBtYXJnaW46IDAgYXV0byAzcmVtOyB9XG4gIC5wZXJzaWFuLXNpbXBsZSBtYWluIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIG1haW4gLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgbWFpbiAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICAgIG1heC13aWR0aDogNzY4cHg7IH0gfVxuXG4ubW9iaWxlLXdlYnZpZXcge1xuICBwYWRkaW5nOiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gLm1vYmlsZS13ZWJ2aWV3IHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5tb2JpbGUtd2VidmlldyBtYWluIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1vYmlsZS13ZWJ2aWV3IG1haW4ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAubW9iaWxlLXdlYnZpZXcgLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS10aXRsZSBoMSxcbiAgLm1vYmlsZS13ZWJ2aWV3IC5lbnRyeS1tZXRhLWZpZWxkLmVudHJ5LW1ldGEtYXV0aG9yID4gYSB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdGF0aWMtY29sdW1uLXdyYXAge1xuICAgIHdpZHRoOiA2NDBweDsgfSB9XG5cbi5lcXVhbGlzZS1jb2x1bW5zIC5jb250ZW50LXdyYXAsIC5lcXVhbGlzZS1jb2x1bW5zXG4uc3RhdGljLWNvbHVtbi13cmFwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5lcXVhbGlzZS1jb2x1bW5zIC5jb250ZW50LXdyYXAsIC5lcXVhbGlzZS1jb2x1bW5zXG4gICAgLnN0YXRpYy1jb2x1bW4td3JhcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuaGVhZGVyI21haW4taGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgei1pbmRleDogNTAwMDAwMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDAgMjJweDsgfVxuICAuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLCAuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTc4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyMTgsIDIyMywgMjI1LCAwLjUpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAxcHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuZHJvcGRvd24tbWVudSB7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDFweCAwOyB9XG4gIC5kcm9wZG93bi1tZW51IGxpIHtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5kcm9wZG93bi1tZW51IGxpOmhvdmVyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgd2lkdGg6IDVweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWMxYTJlO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5kcm9wZG93bi1tZW51IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZm9udC1mYW1pbHk6IFRhaG9tYTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIC5kcm9wZG93bi1tZW51IGxpIGEge1xuICAgICAgY29sb3I6ICMyODFFMUU7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDE2cHggMCAxNnB4IDI0cHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmRyb3Bkb3duLW1lbnUgbGkgYSB7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMjRweCAxNnB4IDA7IH1cbiAgICAgIC5kcm9wZG93bi1tZW51IGxpIGEgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgICAgIC5kcm9wZG93bi1tZW51IGxpIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2VjMWEyZTsgfVxuICAuZHJvcGRvd24tbWVudS5vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY2hlY2staWNvbiB7XG4gIHBhZGRpbmc6IDAgMC4yNXJlbTsgfVxuXG4uc2VhcmNoLWZvcm0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiAxNXB4IDI1cHggMTVweCAxOHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBsZWZ0OiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5zZWFyY2gtZm9ybSB7XG4gICAgICBwYWRkaW5nOiAxMnB4OyB9IH1cbiAgLnNlYXJjaC1mb3JtID4gZGl2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlYXJjaC1mb3JtLm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNlYXJjaC1mb3JtIHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAuc2VhcmNoLWZvcm0gLnNlYXJjaC1mb3JtLWlubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlYXJjaC1mb3JtIC5mb3JtLWZpZWxkLFxuICAuc2VhcmNoLWZvcm0gLmZvcm0taXRlbS5mb3JtLXR5cGUtdGV4dGZpZWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5zZWFyY2gtZm9ybSAuZm9ybS1maWVsZCBpbnB1dCxcbiAgICAuc2VhcmNoLWZvcm0gLmZvcm0taXRlbS5mb3JtLXR5cGUtdGV4dGZpZWxkIGlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgLnNlYXJjaC1mb3JtIC5idXR0b24sXG4gIC5zZWFyY2gtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5tYWluLWhlYWRlci1iZWZvcmUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyMTgsIDIyMywgMjI1LCAwLjcpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIFtkaXI9XCJydGxcIl0gLm1haW4taGVhZGVyLWJlZm9yZSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzIxMjEyMTsgfSB9XG4gIC5tYWluLWhlYWRlci1iZWZvcmVfX2lubmVyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAubWFpbi1oZWFkZXItYmVmb3JlX19pbm5lciB7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubWFpbi1oZWFkZXItYmVmb3JlX19pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFpbi1oZWFkZXItYmVmb3JlX19pbm5lciB7XG4gICAgICAgIHdpZHRoOiAxMjUwcHg7IH0gfVxuXG4ubWFnLW1ldGEge1xuICBwYWRkaW5nLXRvcDogMC41cmVtOyB9XG5cbi5zdWJoZWFkZXItYmxvY2sxIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5zdWJoZWFkZXItYmxvY2sxID4gdWwge1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5lbmctdGhlbWUgLnN1YmhlYWRlci1ibG9jazEgPiB1bCxcbiAgICAudHVya2lzaC10aGVtZSAuc3ViaGVhZGVyLWJsb2NrMSA+IHVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAuc3ViaGVhZGVyLWJsb2NrMSA+IHVsID4gbGk6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaTpob3ZlcjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgICAgLnN1YmhlYWRlci1ibG9jazEgPiB1bCA+IGxpLmFjY291bnQsIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaS5lZGl0aW9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaSA+IGEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAgIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaSA+IGEgLmJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnN1YmhlYWRlci1ibG9jazEgPiB1bCA+IGxpLnN1YnNjcmlwdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuMzc1ZW0pIHtcbiAgICAgICAgICAuc3ViaGVhZGVyLWJsb2NrMSA+IHVsID4gbGkuc3Vic2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgICAuc3ViaGVhZGVyLWJsb2NrMSA+IHVsID4gbGkuc3Vic2NyaXB0aW9uOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaS5zdWJzY3JpcHRpb24gYSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGNvbG9yOiAjMjgxRTFFO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMS4yNXJlbSAwIDA7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaS5zdWJzY3JpcHRpb24gYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxLjI1cmVtOyB9XG4gICAgICAgICAgLnN1YmhlYWRlci1ibG9jazEgPiB1bCA+IGxpLnN1YnNjcmlwdGlvbiBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gICAgICAgICAgLnN1YmhlYWRlci1ibG9jazEgPiB1bCA+IGxpLnN1YnNjcmlwdGlvbiBhIHN0cm9uZyB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7IH1cbiAgICAgIC5tYWluLWhlYWRlci1iZWZvcmUgLnN1YmhlYWRlci1ibG9jazEgPiB1bCA+IGxpLnF1aWNrLXNlYXJjaCB7XG4gICAgICAgIC8qQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH0qLyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLm1haW4taGVhZGVyLWJlZm9yZSAuc3ViaGVhZGVyLWJsb2NrMSA+IHVsID4gbGkucXVpY2stc2VhcmNoIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgLnN1YmhlYWRlci1ibG9jazEgPiB1bCA+IGxpLnF1aWNrLXNlYXJjaCBpIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICAgICAuc3ViaGVhZGVyLWJsb2NrMSA+IHVsID4gbGkuZWRpdGlvbiBidXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAwIDEuNjI1cmVtOyB9XG4gICAgICAuc3ViaGVhZGVyLWJsb2NrMSA+IHVsID4gbGkuZWRpdGlvbiBpIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAgIC5zdWJoZWFkZXItYmxvY2sxID4gdWwgPiBsaS5hY2NvdW50IGkge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuXG4uc3ViaGVhZGVyLWJsb2NrIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5zdWJoZWFkZXItYmxvY2sgPiB1bCB7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmVuZy10aGVtZSAuc3ViaGVhZGVyLWJsb2NrID4gdWwsXG4gICAgLnR1cmtpc2gtdGhlbWUgLnN1YmhlYWRlci1ibG9jayA+IHVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgIC5zdWJoZWFkZXItYmxvY2sgPiB1bCA+IGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgyMTgsIDIyMywgMjI1LCAwLjcpOyB9XG4gICAgICAuc3ViaGVhZGVyLWJsb2NrID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAuc3ViaGVhZGVyLWJsb2NrID4gdWwgPiBsaTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGk6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAgIC5zdWJoZWFkZXItYmxvY2sgPiB1bCA+IGxpLmFjY291bnQsIC5zdWJoZWFkZXItYmxvY2sgPiB1bCA+IGxpLmVkaXRpb24ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkgPiBhIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgICAuc3ViaGVhZGVyLWJsb2NrID4gdWwgPiBsaSA+IGEgLmJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkuc3Vic2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS4zNzVlbSkge1xuICAgICAgICAgIC5zdWJoZWFkZXItYmxvY2sgPiB1bCA+IGxpLnN1YnNjcmlwdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgICAgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkuc3Vic2NyaXB0aW9uOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5zdWJoZWFkZXItYmxvY2sgPiB1bCA+IGxpLnN1YnNjcmlwdGlvbiBhIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgY29sb3I6ICMyODFFMUU7XG4gICAgICAgICAgcGFkZGluZzogMCAxLjI1cmVtIDAgMDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkuc3Vic2NyaXB0aW9uIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMS4yNXJlbTsgfVxuICAgICAgICAgIC5zdWJoZWFkZXItYmxvY2sgPiB1bCA+IGxpLnN1YnNjcmlwdGlvbiBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gICAgICAgICAgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkuc3Vic2NyaXB0aW9uIGEgc3Ryb25nIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZweDsgfVxuICAgICAgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkucXVpY2stc2VhcmNoIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgICAgICAuc3ViaGVhZGVyLWJsb2NrID4gdWwgPiBsaS5xdWljay1zZWFyY2ggLmRyb3Bkb3duLXRvZ2dsZTpob3ZlciwgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkucXVpY2stc2VhcmNoIC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gICAgICAubWFpbi1oZWFkZXItYmVmb3JlIC5zdWJoZWFkZXItYmxvY2sgPiB1bCA+IGxpLnF1aWNrLXNlYXJjaCB7XG4gICAgICAgIC8qQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH0qLyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLm1haW4taGVhZGVyLWJlZm9yZSAuc3ViaGVhZGVyLWJsb2NrID4gdWwgPiBsaS5xdWljay1zZWFyY2gge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgICAuc3ViaGVhZGVyLWJsb2NrID4gdWwgPiBsaS5xdWljay1zZWFyY2ggaSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAgICAgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkuZWRpdGlvbiBidXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAwIDEuNjI1cmVtOyB9XG4gICAgICAuc3ViaGVhZGVyLWJsb2NrID4gdWwgPiBsaS5lZGl0aW9uIGkge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgICAgLnN1YmhlYWRlci1ibG9jayA+IHVsID4gbGkuYWNjb3VudCBpIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cblxuLmxvZ28ge1xuICBtYXJnaW46IDEycHggMDtcbiAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuICAubG9nbyBpbWcge1xuICAgIGhlaWdodDogMjdweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmxvZ28gaW1nLFxuICAgIC50dXJraXNoLXRoZW1lIC5sb2dvIGltZyB7XG4gICAgICBoZWlnaHQ6IDQ0cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubG9nbyBpbWcge1xuICAgICAgaGVpZ2h0OiAzNHB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5sb2dvIGltZyxcbiAgICAgIC50dXJraXNoLXRoZW1lIC5sb2dvIGltZyB7XG4gICAgICAgIGhlaWdodDogNTRweDsgfSB9XG5cbi5sb2dvLXdoaXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyMS44NzVlbSkge1xuICAubG9nby10eHQge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfSB9XG5cbi5ob2xkZXItYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBoZWFkZXIgLmhvbGRlci1hcmVhLFxuICAuc3ViaGVhZGVyLWJsb2NrIC5ob2xkZXItYXJlYSB7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5jdXJyZW50LXRpbWUsXG4uY3VycmVudC1pc3N1ZS1udW1iZXIge1xuICBmb250LWZhbWlseTogQXJpYWw7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4uZW50cnktY29tbWVudHMge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIC5lbnRyeS1jb21tZW50cyAuYm94LXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgICAuZW50cnktY29tbWVudHMgLmJveC10aXRsZSBoMyxcbiAgICAuZW50cnktY29tbWVudHMgLmJveC10aXRsZSBoNCB7XG4gICAgICBjb2xvcjogIzI4MUUxRTsgfVxuICAuZW50cnktY29tbWVudHMgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuZW50cnktY29tbWVudHMgYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2VjMWEyZSAhaW1wb3J0YW50OyB9XG5cbi5jb21tZW50cy1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICBib3JkZXI6IDJweCBzb2xpZCAjY2NjY2NjO1xuICBwYWRkaW5nOiAwIDAuNXJlbSAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuXG4uY29tbWVudHMtaGVhZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAtMjJweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5jb21tZW50cy1oZWFkIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jb21tZW50cy1oZWFkIGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZDogI2VjMWEyZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgLmNvbW1lbnRzLWhlYWQgaDQsXG4gIC5jb21tZW50cy1oZWFkIGg1IHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBtYXJnaW46IDFyZW0gMCAwOyB9XG5cbi5jb21tZW50cy1pbm5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkYWRmZTE7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgY29sb3I6ICM3MDcwNzA7IH1cbiAgLmNvbW1lbnRzLWlubmVyIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgLmNvbW1lbnRzLWlubmVyIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuY29tbWVudHMtaW5uZXIgbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmN1c3RvbS1pY29uLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiLVwiO1xuICBmb250LWZhbWlseTogdmVyZGFuYTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuXG4uZ3JpZC1pdGVtcy5zdHlsZS12MiAuYXJ0aWNsZS1pdGVtIHtcbiAgcGFkZGluZzogMXJlbSAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RhZGZlMTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjYmZiZmJmOyB9XG5cbi5ncmlkLWl0ZW1zLmhhcy1ib3R0b20tYm9yZGVyIC5hcnRpY2xlLWl0ZW0ge1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzI4MUUxRTsgfVxuXG4uZ3JpZC1pdGVtcy13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uZmlsbC1jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAwO1xuICBtYXJnaW46IGF1dG87XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5maWxsLWNvbnRlbnQuYWJzLWVsZW1lbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmFydGljbGUtaXRlbS1pbWcgLmZpbGwtY29udGVudCxcbiAgLmVudHJ5LW1lZGlhLWlubmVyLWltZyAuZmlsbC1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwOyB9XG5cbi5zaXplciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogNjYuNjY2NyU7XG4gIC8qLmVudHJ5LW1lZGlhLWlubmVyLWltZyAmIHtcbiAgICBwYWRkaW5nLXRvcDogNDAlO1xuICB9Ki8gfVxuICAuZW50cnktbWVkaWEgLnNpemVyIHtcbiAgICBwYWRkaW5nLXRvcDogNzUlOyB9XG4gIC53aXRoLXNxdWFyZS1zaXplciAuc2l6ZXIge1xuICAgIHBhZGRpbmctdG9wOiAxMDAlOyB9XG4gIC5ub2RlLXR5cGUtY2FydG9vbnMgLnNpemVyLFxuICAucGFnZS1jYXJ0b29ucyAuc2l6ZXIsXG4gIC5hcnRpY2xlLWJsb2NrLWNhcnRvb24gLnNpemVyIHtcbiAgICBwYWRkaW5nLXRvcDogNzIlOyB9XG5cbi5hcnRpY2xlLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5ibG9jay13cmFwcGVyIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC02cHg7IH1cbiAgICAgICAgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8gLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gICAgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8gLmFydGljbGUtaXRlbS1jb250ZW50ID4gOm5vdCguY2F0ZWdvcnktZmllbGQpIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYWJzLWJvdHRvbS1lbGVtZW50LCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpbyAuYWJzLWJvdHRvbS1lbGVtZW50IHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNHB4OyB9XG4gICAgICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYWJzLWJvdHRvbS1lbGVtZW50OmJlZm9yZSwgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtYXVkaW8gLmFicy1ib3R0b20tZWxlbWVudDpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzNiwgMjYsIDQ2LCAwLjgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiAtMTZweDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDNweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5hYnMtYm90dG9tLWVsZW1lbnQ6YmVmb3JlLCBbZGlyPVwicnRsXCJdIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hYnMtYm90dG9tLWVsZW1lbnQ6YmVmb3JlIHtcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTNweDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5zcGxhc2gtcm93ID4gLmdyaWQteCA+IC5jZWxsLmxhcmdlLTggPiAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYWJzLWJvdHRvbS1lbGVtZW50OmJlZm9yZSwgLnNwbGFzaC1yb3cgPiAuZ3JpZC14ID4gLmNlbGwubGFyZ2UtOCA+IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hYnMtYm90dG9tLWVsZW1lbnQ6YmVmb3JlIHtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiA2cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB0b3A6IC0yOHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDU2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTZweDsgfVxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuc3BsYXNoLXJvdyA+IC5ncmlkLXggPiAuY2VsbC5sYXJnZS04ID4gLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtdmlkZW8gLmFicy1ib3R0b20tZWxlbWVudDpiZWZvcmUsIFtkaXI9XCJydGxcIl0gLnNwbGFzaC1yb3cgPiAuZ3JpZC14ID4gLmNlbGwubGFyZ2UtOCA+IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hYnMtYm90dG9tLWVsZW1lbnQ6YmVmb3JlIHtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC02cHg7IH0gfVxuICAgIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hYnMtYm90dG9tLWVsZW1lbnQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTFlXCI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIC5zcGxhc2gtcm93IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9IH1cbiAgLmFydGljbGVzLWxpc3QgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFydGljbGVzLWxpc3QgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8gLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICBoZWlnaHQ6IDI2MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmFydGljbGUtaXRlbS52aWRlby1ncmlkLXN0b3J5LmltZy1hcy1iZyAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYXJ0aWNsZS1pdGVtLnZpZGVvLWdyaWQtc3RvcnkuaW1nLWFzLWJnIHtcbiAgICAgIGhlaWdodDogMzYwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuYXJ0aWNsZS1pdGVtLmZ1bGwtZ3JpZC1zdG9yeS5yZWxhdGVkLWNvbnRlbnQgaDIge1xuICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgLmFydGljbGUtaXRlbS5mdWxsLWdyaWQtc3RvcnkgLmFydGljbGUtaXRlbS1jYXRlZ29yeSB7XG4gICAgbWFyZ2luLXRvcDogLTI3cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuYXJ0aWNsZS1pdGVtLmZ1bGwtZ3JpZC1zdG9yeS5pbWctYXMtYmcgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy10b3A6IDU2LjI1JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuYXJ0aWNsZS1pdGVtLmZ1bGwtZ3JpZC1zdG9yeS5pbWctYXMtYmcge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7IH1cbiAgICAgIC5hcnRpY2xlLWl0ZW0uZnVsbC1ncmlkLXN0b3J5LmltZy1hcy1iZyAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAuYXJ0aWNsZS1pdGVtLmZ1bGwtZ3JpZC1zdG9yeS5pbWctYXMtYmcgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hcnRpY2xlLWl0ZW0uZnVsbC1ncmlkLXN0b3J5LmltZy1hcy1iZyB7XG4gICAgICBoZWlnaHQ6IDYwMHB4OyB9IH1cbiAgLmFydGljbGUtaXRlbS5oYWxmLWdyaWQtc3Rvcnkge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RhZGZlMTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLmFydGljbGUtaXRlbS5oYWxmLWdyaWQtc3RvcnkuaW1nLWFzLWJnIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmFydGljbGUtaXRlbS5oYWxmLWdyaWQtc3RvcnkuaW1nLWFzLWJnIHtcbiAgICAgICAgaGVpZ2h0OiAyOTBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmdyaWQtaXRlbXMubWVkaXVtLXVwLTMgLmFydGljbGUtaXRlbS5oYWxmLWdyaWQtc3RvcnkuaW1nLWFzLWJnIHtcbiAgICAgICAgaGVpZ2h0OiAyMzBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFydGljbGUtaXRlbS5zbWFsbC1ncmlkLXN0b3J5LmltZy1hcy1iZyB7XG4gICAgICBoZWlnaHQ6IDIzMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYXJ0aWNsZS1pdGVtLmNhcmQtZ3JpZC1zdG9yeS5pbWctYXMtYmcge1xuICAgICAgaGVpZ2h0OiA2MDBweDsgfSB9XG4gIC5hcnRpY2xlLWl0ZW0uY2FyZC1ncmlkLXN0b3J5IC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgcGFkZGluZzogMC41cmVtIDEuMjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhZGZlMTsgfVxuICAuYXJ0aWNsZS1pdGVtLmhhbGYtY2FyZC1ncmlkLXN0b3J5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDZkNmQ2OyB9XG4gICAgLmFydGljbGUtaXRlbS5oYWxmLWNhcmQtZ3JpZC1zdG9yeS5pbWctYXMtYmcgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy10b3A6IDU2LjI1JTsgfVxuICAgIC5hcnRpY2xlLWl0ZW0uaGFsZi1jYXJkLWdyaWQtc3RvcnkgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtIDFyZW07IH1cbiAgLmFydGljbGUtaXRlbS5zbWFsbC1ncmlkLXN0b3J5IC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnksIC5hcnRpY2xlLWl0ZW0uaGFsZi1ncmlkLXN0b3J5IC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnksIC5hcnRpY2xlLWl0ZW0uY2FyZC1ncmlkLXN0b3J5IC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnksIC5hcnRpY2xlLWl0ZW0uaGFsZi1jYXJkLWdyaWQtc3RvcnkgLmFydGljbGUtaXRlbS1jYXRlZ29yeSB7XG4gICAgbWFyZ2luLXRvcDogLTE5cHg7IH1cbiAgLmdyaWQtaXRlbXMgLmFydGljbGUtaXRlbSB7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAuYXJ0aWNsZS1pdGVtIC5kdXJhdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMC41cmVtO1xuICAgIGxlZnQ6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBwYWRkaW5nOiA0cHggNHB4IDNweDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtdmlkZW8taGVybyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuOCk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgei1pbmRleDogMTtcbiAgICB0ZXh0LWluZGVudDogM3B4O1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuYXJ0aWNsZS1pdGVtLmFydGljbGUtdmlkZW8taGVybyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUge1xuICAgICAgdGV4dC1pbmRlbnQ6IC0zcHg7IH1cbiAgLmFydGljbGUtaXRlbS5hcnRpY2xlLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDI2LCA0NiwgMC44KTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRleHQtaW5kZW50OiAzcHg7XG4gICAgYm90dG9tOiAwLjVyZW07XG4gICAgcmlnaHQ6IDAuNXJlbTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmFydGljbGUtaXRlbS5hcnRpY2xlLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSB7XG4gICAgICB0ZXh0LWluZGVudDogLTNweDsgfVxuXG4uaGFsZi1jYXJkLWdyaWQtc3RvcmllcyAuY2VsbCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLmFydGljbGUtaXRlbS1pbm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwOyB9XG5cbi5pbWctYXMtYmcgLmFydGljbGUtaXRlbS1pbWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmltZy1hcy1iZyAuYXJ0aWNsZS1pdGVtLWltZyA+IGEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTsgfVxuXG4uYXJ0aWNsZS1pdGVtLWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaG9yb3Njb3Blcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gIC5jYXJkIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5hcnRpY2xlLWl0ZW0taW1nIGE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlIDBzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UgMHMsIG9wYWNpdHkgMC4yNXMgZWFzZSAwczsgfVxuICAuYXJ0aWNsZS1pdGVtLWltZyBhOmhvdmVyOmFmdGVyLCAuYXJ0aWNsZS1pdGVtLWltZyBhLmhvdmVyZWQtaW1nOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTsgfVxuXG4uYXJ0aWNsZS1pdGVtLXRpdGxlIGEge1xuICBjb2xvcjogIzI4MUUxRTsgfVxuICAuYXJ0aWNsZS1pdGVtLXRpdGxlIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZWMxYTJlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC52aWRlby1ncmlkLXN0b3J5IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9IH1cblxuLnBsYXlsaXN0IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDYge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmhhbGYtY2FyZC1ncmlkLXN0b3J5IC5hcnRpY2xlLWl0ZW0tdGl0bGUgLmFydGljbGUtaXRlbS1jb250ZW50IGg0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG5cbi5vYmplY3QtaXRlbSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMjJweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuZW5nLXRoZW1lIC5vYmplY3QtaXRlbSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2LFxuICAudHVya2lzaC10aGVtZSAub2JqZWN0LWl0ZW0gLmFydGljbGUtaXRlbS10aXRsZSBoNiB7XG4gICAgZm9udC1zaXplOiAxNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLm9iamVjdC1pdGVtIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDYge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZW5nLXRoZW1lIC5zcGxhc2gtcm93IC5vYmplY3QtaXRlbSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2LFxuICAgIC50dXJraXNoLXRoZW1lIC5zcGxhc2gtcm93IC5vYmplY3QtaXRlbSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG5cbi5ibG9jay13cmFwcGVyIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDYge1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbi5hcnRpY2xlLWl0ZW0tdGl0bGUgLm1lZGlhLXByZWZpeCB7XG4gIGNvbG9yOiAjZWMxYTJlO1xuICBtYXJnaW4tbGVmdDogMC40cmVtOyB9XG5cbi5hcnRpY2xlLWl0ZW0tYXV0aG9yIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICNlYzFhMmU7IH1cbiAgLnVyZHUtdGhlbWUgLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuYXJ0aWNsZXMtbGlzdC5jYXJkcyAuYXJ0aWNsZS1pdGVtLWF1dGhvciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnVyZHUtdGhlbWUgcCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtOyB9XG5cbi5hcnRpY2xlLWl0ZW0tYXV0aG9yMSB7XG4gIG1hcmdpbi10b3A6IDAuM3JlbTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMzM3ZTgxOyB9XG4gIC51cmR1LXRoZW1lIC5hcnRpY2xlLWl0ZW0tYXV0aG9yMSB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5hcnRpY2xlLWl0ZW0tYXV0aG9yMSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmFydGljbGUtaXRlbS1jYXRlZ29yeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHotaW5kZXg6IDE7IH1cbiAgLmFydGljbGUtaXRlbS1jYXRlZ29yeSBhIHtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMnB4IDhweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYXJ0aWNsZS1pdGVtLWNhdGVnb3J5IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5hcnRpY2xlLWl0ZW0tbGFiZWxzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgei1pbmRleDogMTtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI2cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEwcHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuYXJ0aWNsZS1pdGVtLWxhYmVscyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogaW5pdGlhbDsgfVxuICAuZmxleC1kaXItY29sdW1uLXJldmVyc2UgLmFydGljbGUtaXRlbS1sYWJlbHMge1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmVuZy10aGVtZSAuYXJ0aWNsZS1pdGVtLWxhYmVscyxcbiAgLnR1cmtpc2gtdGhlbWUgLmFydGljbGUtaXRlbS1sYWJlbHMge1xuICAgIGZvbnQtc2l6ZTogMTFweDsgfVxuICAuYXJ0aWNsZS1pdGVtLWxhYmVscyBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWMxYTJlO1xuICAgIHBhZGRpbmc6IDRweCA4cHggMnB4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAuYXJ0aWNsZS1pdGVtLWxhYmVscyBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4ubGl2ZS1ibG9nIHtcbiAgYmFja2dyb3VuZDogI2ZmZmQzODtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDRweCA4cHggMnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmxlYWQge1xuICBwYWRkaW5nLXRvcDogMTZweDsgfVxuICAubGVhZCBwIHtcbiAgICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmVuZy10aGVtZSAubGVhZCBwLFxuICAgIC50dXJraXNoLXRoZW1lIC5sZWFkIHAge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5lbmctdGhlbWUgLmFydGljbGUtaGVybyAuYWJzLWJvdHRvbS1lbGVtZW50IC5sZWFkIHAsXG4gICAgICAudHVya2lzaC10aGVtZSAuYXJ0aWNsZS1oZXJvIC5hYnMtYm90dG9tLWVsZW1lbnQgLmxlYWQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5hYnMtYm90dG9tLWVsZW1lbnQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTZweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwOyB9XG4gIC5hYnMtYm90dG9tLWVsZW1lbnQgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYWJzLWJvdHRvbS1lbGVtZW50IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNlYzFhMmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLnNwbGFzaC1yb3cgLmFicy1ib3R0b20tZWxlbWVudCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuICAuYWJzLWJvdHRvbS1lbGVtZW50IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQsXG4gIC5hYnMtYm90dG9tLWVsZW1lbnQgLmFydGljbGUtaXRlbS10aXRsZSBoNSxcbiAgLmFicy1ib3R0b20tZWxlbWVudCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC52aWRlby1ncmlkLXN0b3J5IC5hYnMtYm90dG9tLWVsZW1lbnQge1xuICAgIHBhZGRpbmc6IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudmlkZW8tZ3JpZC1zdG9yeSAuYWJzLWJvdHRvbS1lbGVtZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7IH0gfVxuXG4uYWJzLWJvdHRvbS1lbGVtZW50MSB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHRvcDogMHJlbTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDdweCk7IH1cbiAgLmFicy1ib3R0b20tZWxlbWVudDEgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYWJzLWJvdHRvbS1lbGVtZW50MSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFicy1ib3R0b20tZWxlbWVudDEge1xuICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7IH0gfVxuICAuYWJzLWJvdHRvbS1lbGVtZW50MSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LFxuICAuYWJzLWJvdHRvbS1lbGVtZW50MSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg1LFxuICAuYWJzLWJvdHRvbS1lbGVtZW50MSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC52aWRlby1ncmlkLXN0b3J5IC5hYnMtYm90dG9tLWVsZW1lbnQxIHtcbiAgICBwYWRkaW5nOiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnZpZGVvLWdyaWQtc3RvcnkgLmFicy1ib3R0b20tZWxlbWVudDEge1xuICAgICAgICBwYWRkaW5nLXRvcDogODBweDsgfSB9XG5cbi5wbGF5LWljb24ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHBhZGRpbmc6IDhweCA2cHggOHB4IDEwcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuOCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcmlnaHQ6IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBsYXktaWNvbiB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBwYWRkaW5nOiAxMnB4IDEwcHggMTJweCAxNnB4OyB9IH1cbiAgLmZ1bGwtZ3JpZC1zdG9yeSAucGxheS1pY29uLFxuICAuY2FyZC1ncmlkLXN0b3J5IC5wbGF5LWljb24ge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBwYWRkaW5nOiAxNnB4IDE0cHggMTZweCAyMnB4OyB9XG4gIC5vYmplY3QtaXRlbSAucGxheS1pY29uIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgcGFkZGluZzogN3B4IDZweCA3cHggOXB4O1xuICAgIHRvcDogN3B4O1xuICAgIHJpZ2h0OiA3cHg7IH1cbiAgLnBsYXlsaXN0IC5wbGF5LWljb24ge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICB0b3A6IDVweDtcbiAgICByaWdodDogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwYWRkaW5nOiA2cHggNXB4IDZweCA3cHg7IH1cblxuLnBsYXlsaXN0LXdyYXBwZXIge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtaW4taGVpZ2h0OiAyNDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG5zcGFuLmF1dGhvciB7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjZWMxYTJlOyB9XG4gIC51cmR1LXRoZW1lIHNwYW4uYXV0aG9yIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLmhlYWRsaW5lcy1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2ZmZjtcbiAgbWFyZ2luOiAxNnB4IDAgMCA4cHg7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmhlYWRsaW5lcy1saXN0IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5oZWFkbGluZXMtbGlzdCBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gIC5hYnMtYm90dG9tLWVsZW1lbnQgLmhlYWRsaW5lcy1saXN0IGEge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmFicy1ib3R0b20tZWxlbWVudCAuaGVhZGxpbmVzLWxpc3QgYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2VjMWEyZTsgfVxuICAuaGFsZi1jYXJkLWdyaWQtc3RvcnkgLmhlYWRsaW5lcy1saXN0IHtcbiAgICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG4gICAgLmhhbGYtY2FyZC1ncmlkLXN0b3J5IC5oZWFkbGluZXMtbGlzdCBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG4gIC5oZWFkbGluZXMtbGlzdC5oYXMtc2VwYXJhdG9yIGxpIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAgMC43NXJlbSAxLjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkYWRmZTE7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5oZWFkbGluZXMtbGlzdC5oYXMtc2VwYXJhdG9yIGxpOmJlZm9yZSB7XG4gICAgICB0b3A6IDEzcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5oZWFkbGluZXMtbGlzdC5oYXMtc2VwYXJhdG9yIGxpIHtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtIDAuNzVyZW0gMDsgfVxuICAuaGVhZGxpbmVzLWxpc3QgbGkge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZy1yaWdodDogMi4yZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgLmVuZy10aGVtZSAuaGVhZGxpbmVzLWxpc3QgbGksXG4gICAgLnR1cmtpc2gtdGhlbWUgLmhlYWRsaW5lcy1saXN0IGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmhlYWRsaW5lcy1saXN0IGxpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAuaGVhZGxpbmVzLWxpc3QgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICByaWdodDogOHB4O1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvc3ZnL3doaXRlX2Fycm93LnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxNnB4OyB9XG4gICAgICAudXJkdS10aGVtZSAuaGVhZGxpbmVzLWxpc3QgbGk6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAtN3B4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5oZWFkbGluZXMtbGlzdCBsaTpiZWZvcmUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICBmaWx0ZXI6IEZsaXBIO1xuICAgICAgICAtbXMtZmlsdGVyOiBcIkZsaXBIXCI7XG4gICAgICAgIHRvcDogMnB4OyB9XG5cbi5oZWFkbGluZXMtbGlzdC5ocmVmYmxhY2sgYSB7XG4gIGNvbG9yOiBibGFjazsgfVxuICAuaGVhZGxpbmVzLWxpc3QuaHJlZmJsYWNrIGEgOmhvdmVyIHtcbiAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4uZGF0ZS1maWVsZCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM4ODg4ODg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIHNlY3Rpb24uc2VjdGlvbi5ib3R0b20tc3BhY2VyLS1zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbi5zZWN0aW9uLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5zZWN0aW9uLXRpdGxlIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlY3Rpb24tdGl0bGUgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDsgfVxuICAgIC5lbmctdGhlbWUgLnNlY3Rpb24tdGl0bGUgaDIsXG4gICAgLnR1cmtpc2gtdGhlbWUgLnNlY3Rpb24tdGl0bGUgaDIge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgLnR1cmtpc2gtdGhlbWUgLnNlY3Rpb24tdGl0bGUgaDIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuc2VjdGlvbi10aXRsZSBhOm5vdCguc2VlLWFsbCkge1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnNlY3Rpb24tdGl0bGUgYTpub3QoLnNlZS1hbGwpOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gIC5zZWN0aW9uLXRpdGxlLmhhcy1kb3QgaDI6YmVmb3JlLFxuICAuc2VjdGlvbi10aXRsZS5oYXMtZG90IGgzOmJlZm9yZSxcbiAgLnNlY3Rpb24tdGl0bGUuaGFzLWRvdCBoNDpiZWZvcmUsXG4gIC5zZWN0aW9uLXRpdGxlLmhhcy1kb3QgaDU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZWMxYTJlO1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgICAuZW5nLXRoZW1lIC5zZWN0aW9uLXRpdGxlLmhhcy1kb3QgaDI6YmVmb3JlLFxuICAgIC50dXJraXNoLXRoZW1lIC5zZWN0aW9uLXRpdGxlLmhhcy1kb3QgaDI6YmVmb3JlLCAuZW5nLXRoZW1lXG4gICAgLnNlY3Rpb24tdGl0bGUuaGFzLWRvdCBoMzpiZWZvcmUsXG4gICAgLnR1cmtpc2gtdGhlbWVcbiAgICAuc2VjdGlvbi10aXRsZS5oYXMtZG90IGgzOmJlZm9yZSwgLmVuZy10aGVtZVxuICAgIC5zZWN0aW9uLXRpdGxlLmhhcy1kb3QgaDQ6YmVmb3JlLFxuICAgIC50dXJraXNoLXRoZW1lXG4gICAgLnNlY3Rpb24tdGl0bGUuaGFzLWRvdCBoNDpiZWZvcmUsIC5lbmctdGhlbWVcbiAgICAuc2VjdGlvbi10aXRsZS5oYXMtZG90IGg1OmJlZm9yZSxcbiAgICAudHVya2lzaC10aGVtZVxuICAgIC5zZWN0aW9uLXRpdGxlLmhhcy1kb3QgaDU6YmVmb3JlIHtcbiAgICAgIG1hcmdpbi10b3A6IDFweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLnNlY3Rpb24tdGl0bGUuaGFzLWxvZ28gaDI6YmVmb3JlLFxuICAuc2VjdGlvbi10aXRsZS5oYXMtbG9nbyBoMzpiZWZvcmUsXG4gIC5zZWN0aW9uLXRpdGxlLmhhcy1sb2dvIGg0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWcvbG9nby1pY29uLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweCAzMHB4O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0zcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zZWN0aW9uLXRpdGxlLmhhcy1sb2dvIGgyOmJlZm9yZSwgW2Rpcj1cInJ0bFwiXVxuICAgIC5zZWN0aW9uLXRpdGxlLmhhcy1sb2dvIGgzOmJlZm9yZSwgW2Rpcj1cInJ0bFwiXVxuICAgIC5zZWN0aW9uLXRpdGxlLmhhcy1sb2dvIGg0OmJlZm9yZSB7XG4gICAgICB0b3A6IDFweDsgfVxuXG4uc2VlLWFsbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNlYzFhMmU7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZy1sZWZ0OiAyMXB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi10b3A6IC05cHg7IH1cbiAgLnNlZS1hbGw6aG92ZXIge1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnNlZS1hbGw6aG92ZXI6YWZ0ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLnNlZS1hbGw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICBmb250LXNpemU6IDAuNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VjMWEyZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZWMxYTJlO1xuICAgIHRleHQtaW5kZW50OiAxcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zZWUtYWxsOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTA4XCI7IH1cblxuLmNhdGVnb3J5LWZpZWxkIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjNweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG4gIC5lbmctdGhlbWUgLmNhdGVnb3J5LWZpZWxkLFxuICAudHVya2lzaC10aGVtZSAuY2F0ZWdvcnktZmllbGQge1xuICAgIGZvbnQtc2l6ZTogMTFweDsgfVxuICAudHVya2lzaC10aGVtZSAuY2F0ZWdvcnktZmllbGQge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LWZpZWxkIHtcbiAgICBmb250LXNpemU6IDExcHg7IH1cbiAgLnVyZHUtdGhlbWUgLmNhdGVnb3J5LWZpZWxkIHtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cblxuLmNhdGVnb3J5LWZpZWxkMSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICAuY2F0ZWdvcnktZmllbGQxIGEge1xuICAgIGNvbG9yOiAjMzM3ZTgxOyB9XG4gIC5lbmctdGhlbWUgLmNhdGVnb3J5LWZpZWxkMSxcbiAgLnR1cmtpc2gtdGhlbWUgLmNhdGVnb3J5LWZpZWxkMSB7XG4gICAgZm9udC1zaXplOiAxMXB4OyB9XG4gIC50dXJraXNoLXRoZW1lIC5jYXRlZ29yeS1maWVsZDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LWZpZWxkMSB7XG4gICAgZm9udC1zaXplOiAxMXB4OyB9XG4gIC51cmR1LXRoZW1lIC5jYXRlZ29yeS1maWVsZDEge1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jYXJkcyAub2JqZWN0cy1saXN0IC5vYmplY3QtaXRlbSAubWVkaWEtb2JqZWN0IC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5jYXJkcyAub2JqZWN0cy1saXN0IC5vYmplY3QtaXRlbSAubWVkaWEtb2JqZWN0Lm1lZGlhLXZpZGVvIC5tZWRpYS1vYmplY3QtaW1nOmJlZm9yZSwgLmNhcmRzIC5vYmplY3RzLWxpc3QgLm9iamVjdC1pdGVtIC5tZWRpYS1vYmplY3QubWVkaWEtYXVkaW8gLm1lZGlhLW9iamVjdC1pbWc6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDI2LCA0NiwgMC44KTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB6LWluZGV4OiAxO1xuICBib3R0b206IDA7XG4gIHRleHQtaW5kZW50OiA2cHg7XG4gIG1hcmdpbjogMC41cmVtOyB9XG4gIFtkaXI9XCJydGxcIl0gLmNhcmRzIC5vYmplY3RzLWxpc3QgLm9iamVjdC1pdGVtIC5tZWRpYS1vYmplY3QubWVkaWEtdmlkZW8gLm1lZGlhLW9iamVjdC1pbWc6YmVmb3JlLCBbZGlyPVwicnRsXCJdIC5jYXJkcyAub2JqZWN0cy1saXN0IC5vYmplY3QtaXRlbSAubWVkaWEtb2JqZWN0Lm1lZGlhLWF1ZGlvIC5tZWRpYS1vYmplY3QtaW1nOmJlZm9yZSB7XG4gICAgdGV4dC1pbmRlbnQ6IC0zcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2FyZHMgLm9iamVjdHMtbGlzdCAub2JqZWN0LWl0ZW0gLm1lZGlhLW9iamVjdC5tZWRpYS12aWRlbyAubWVkaWEtb2JqZWN0LWltZzpiZWZvcmUsIC5jYXJkcyAub2JqZWN0cy1saXN0IC5vYmplY3QtaXRlbSAubWVkaWEtb2JqZWN0Lm1lZGlhLWF1ZGlvIC5tZWRpYS1vYmplY3QtaW1nOmJlZm9yZSB7XG4gICAgICB0b3A6IC0yNHB4O1xuICAgICAgbGVmdDogMDsgfSB9XG5cbi5jYXJkcyAub2JqZWN0cy1saXN0IC5vYmplY3QtaXRlbSAubWVkaWEtb2JqZWN0Lm1lZGlhLWF1ZGlvIC5tZWRpYS1vYmplY3QtaW1nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFlXCI7IH1cblxuLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbSB7XG4gIG1pbi1oZWlnaHQ6IDY5cHg7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNmQ2ZDY7IH1cbiAgW2Rpcj1cInJ0bFwiXSAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNnB4OyB9XG4gIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0gLm1lZGlhLW9iamVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtIC5tZWRpYS1vYmplY3QubWVkaWEtdmlkZW8gLm1lZGlhLW9iamVjdC1pbWc6YmVmb3JlLCAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtIC5tZWRpYS1vYmplY3QubWVkaWEtYXVkaW8gLm1lZGlhLW9iamVjdC1pbWc6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuOCk7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICB3aWR0aDogMzJweDtcbiAgICAgIGhlaWdodDogMzJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRleHQtaW5kZW50OiA2cHg7XG4gICAgICBtYXJnaW46IDAuNXJlbTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtIC5tZWRpYS1vYmplY3QubWVkaWEtdmlkZW8gLm1lZGlhLW9iamVjdC1pbWc6YmVmb3JlLCBbZGlyPVwicnRsXCJdIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0gLm1lZGlhLW9iamVjdC5tZWRpYS1hdWRpbyAubWVkaWEtb2JqZWN0LWltZzpiZWZvcmUge1xuICAgICAgICB0ZXh0LWluZGVudDogLTNweDsgfVxuICAgIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0gLm1lZGlhLW9iamVjdC5tZWRpYS1hdWRpbyAubWVkaWEtb2JqZWN0LWltZzpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MWVcIjsgfVxuXG4ubWVkaWEtb2JqZWN0LWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICAgIG1heC13aWR0aDogMTI4cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDNweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tZWRpYS1vYmplY3QtaW1nIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTI4cHg7IH0gfVxuICAubWVkaWEtb2JqZWN0LWltZ1tkYXRhLW1lZGlhPVwiandWaWRlb1wiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi13aWR0aDogMTI4cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLm1lZGlhLW9iamVjdC1pbWdbZGF0YS1tZWRpYT1cImp3VmlkZW9cIl0ge1xuICAgICAgICBtaW4td2lkdGg6IDEwM3B4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1lZGlhLW9iamVjdC1pbWdbZGF0YS1tZWRpYT1cImp3VmlkZW9cIl0ge1xuICAgICAgICBtaW4td2lkdGg6IDEyOHB4OyB9IH1cbiAgLmJsb2NrLXdyYXBwZXIgLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMHB4OyB9XG5cbi5lbnRyeS10aXRsZSBoMSB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbWFyZ2luLXRvcDogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5lbnRyeS10aXRsZSBoMSB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmVudHJ5LXRpdGxlIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMy4zNzVyZW07IH0gfVxuICAuZW50cnktdmlkZW8tY29udGFpbmVyIC5lbnRyeS10aXRsZSBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuICBbZGlyPVwicnRsXCJdIC5lbnRyeS10aXRsZSBoMSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBmb250LXNpemU6IDI1cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIFtkaXI9XCJydGxcIl0gLmVudHJ5LXRpdGxlIGgxIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTdweDtcbiAgICAgICAgZm9udC1zaXplOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAuZW50cnktdGl0bGUgaDEge1xuICAgICAgICBmb250LXNpemU6IDEuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBbZGlyPVwicnRsXCJdIC5lbnRyeS10aXRsZSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDsgfSB9XG5cbi5lbnRyeS1zdWJ0aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cbiAgLmVudHJ5LXN1YnRpdGxlIGgyIHtcbiAgICBjb2xvcjogIzU1NTU1NTtcbiAgICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5lbnRyeS1zdWJ0aXRsZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuZW50cnktc3VidGl0bGUgaDIge1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7IH1cblxuLmVudHJ5LW1ldGEge1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmVudHJ5LXZpZGVvLWNvbnRhaW5lciAuZW50cnktbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICBbZGlyPVwicnRsXCJdIC5lbnRyeS1tZXRhIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuICBbZGlyPVwicnRsXCJdIC5lbnRyeS1tZXRhID4gZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIgfFwiO1xuICAgIHBhZGRpbmc6IDAgNHB4IDAgNHB4O1xuICAgIGNvbG9yOiAjNTU1NTU1O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5lbnRyeS1tZXRhLWZpZWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLmVudHJ5LW1ldGEtZmllbGQge1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiOyB9XG4gIC5lbnRyeS1tZXRhLWZpZWxkLmVudHJ5LW1ldGEtYXV0aG9yIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZW50cnktbWV0YS1maWVsZC5lbnRyeS1tZXRhLWF1dGhvciA+IGEge1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5lbnRyeS1tZXRhLWZpZWxkLmVudHJ5LW1ldGEtYXV0aG9yID4gYSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cbiAgICAudXJkdS10aGVtZSAuZW50cnktbWV0YS1maWVsZC5lbnRyeS1tZXRhLWF1dGhvciA+IGEge1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG4gIC5lbnRyeS1tZXRhLWZpZWxkIHNwYW4sXG4gIC5lbnRyeS1tZXRhLWZpZWxkIHRpbWUge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM1NTU1NTU7IH1cbiAgICAudXJkdS10aGVtZSAuZW50cnktbWV0YS1maWVsZCBzcGFuLCAudXJkdS10aGVtZVxuICAgIC5lbnRyeS1tZXRhLWZpZWxkIHRpbWUge1xuICAgICAgd29yZC1zcGFjaW5nOiA0cHg7IH1cbiAgLmVudHJ5LW1ldGEtZmllbGQgYSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuZW50cnktbWV0YS1maWVsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjJyZW07IH0gfVxuXG4uZW50cnktcmVhZGluZy10aW1lIHtcbiAgY29sb3I6ICM1NTU1NTU7IH1cblxuLmVudHJ5LW1ldGEtY29tbWVudCBhIHtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuLmVudHJ5LW1ldGEtc2hhcmVzLWNvdW50IHtcbiAgY29sb3I6ICNlYzFhMmU7IH1cbiAgLmVudHJ5LW1ldGEtc2hhcmVzLWNvdW50IHNwYW4ge1xuICAgIGNvbG9yOiAjZWMxYTJlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDRweDsgfVxuXG5bZGlyPVwicnRsXCJdIC5hdXRob3ItdHdpdHRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZGlyZWN0aW9uOiBsdHI7IH1cblxuLmF1dGhvci10d2l0dGVyIGEge1xuICBjb2xvcjogIzU1NTU1NTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuICBbZGlyPVwibHRyXCJdIC5hdXRob3ItdHdpdHRlciBhOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJ8XCI7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIFtkaXI9XCJydGxcIl0gLmF1dGhvci10d2l0dGVyIGE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgIHBhZGRpbmc6IDRweDtcbiAgICBjb2xvcjogIzU1NTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZW50cnktbWV0YS13cmFwcGVyID4gLmdyaWQteCA+IC5jZWxsLnNocmluayB7XG4gICAgbWF4LXdpZHRoOiA2MCU7IH0gfVxuXG4uZW50cnktc3VtbWFyeSB7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjZWMxZjMxO1xuICBwYWRkaW5nOiAxNnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5lbnRyeS1zdW1tYXJ5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7IH0gfVxuICAuZW50cnktc3VtbWFyeSBoNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBmb250LXNpemU6IDI0cHg7IH1cbiAgLmVudHJ5LXN1bW1hcnkgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgLmVudHJ5LXN1bW1hcnkgdWwgbGk6Om1hcmtlciB7XG4gICAgICBmb250LXNpemU6IDlweDsgfVxuXG4uZW50cnktYXJ0aWNsZS10b3BwZXIge1xuICBwYWRkaW5nOiAwIDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZW50cnktYXJ0aWNsZS10b3BwZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zMTI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07XG4gICAgICBtYXgtd2lkdGg6IDYxLjVyZW07XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZW50cnktYXJ0aWNsZS10b3BwZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmVudHJ5LWFydGljbGUtdG9wcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtOyB9IH1cblxuLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS10aXRsZSBoMSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICBbZGlyPVwicnRsXCJdIC5lbnRyeS1oZWFkZXIuaGFzLWF2YXRhciAuZW50cnktdGl0bGUgaDEge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuICAudXJkdS10aGVtZSAuZW50cnktaGVhZGVyLmhhcy1hdmF0YXIgLmVudHJ5LXRpdGxlIGgxIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS1zdWJ0aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZW50cnktaGVhZGVyLmhhcy1hdmF0YXIgLmVudHJ5LXN1YnRpdGxlIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1N3B4KTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5lbnRyeS1oZWFkZXIuaGFzLWF2YXRhciAuZW50cnktbWV0YS13cmFwcGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTU3cHgpOyB9IH1cblxuLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS1tZXRhLXdyYXBwZXIgPiAuZ3JpZC14ID4gLmNlbGwuc2hyaW5rIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS1tZXRhLXdyYXBwZXIgPiAuZ3JpZC14ID4gLmNlbGwuc2hyaW5rIHtcbiAgICAgIG1heC13aWR0aDogNzUlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZW50cnktaGVhZGVyLmhhcy1hdmF0YXIgLmVudHJ5LW1ldGEtd3JhcHBlciA+IC5ncmlkLXggPiAuY2VsbC5zaHJpbmsge1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgW2Rpcj1cInJ0bFwiXSAuZW50cnktYXJ0aWNsZS1zaGFyZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDE0cHg7IH0gfVxuXG4uc2hhcmUtZmxvYXRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogbm9uZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMjBweDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjODg4ODg4O1xuICBwYWRkaW5nOiAxMHB4IDI0cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnNoYXJlLWZsb2F0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5zaGFyZS1mbG9hdGVyIC5zb2NpYWxzLWJ0bnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEycHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5zaGFyZS1mbG9hdGVyIC5zb2NpYWxzLWJ0bnMgLnNvY2lhbC1idG4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzZkNmQ2ZDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLnNoYXJlLWZsb2F0ZXIgLnNvY2lhbHMtYnRucyAuc29jaWFsLWJ0biBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG5cbi5zaGFyZS1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuZW50cnktdmlkZW8tY29udGFpbmVyIC5zaGFyZS1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFnZS1ub2RlIC5zaGFyZS1ibG9jayAuc29jaWFscy1idG5zIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLnBhZ2Utbm9kZSAuc2hhcmUtYmxvY2sgLnNvY2lhbHMtYnRucyAuc29jaWFsLWJ0biB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uZm9sbG93LWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5lbnRyeS12aWRlby1jb250YWluZXIgLmZvbGxvdy1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZm9sbG93LWZiLWluZm8ge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgY29sb3I6ICM4ODg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uY2FwdGlvbi1maWVsZCxcbi5kbmQtY2FwdGlvbi13cmFwcGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICM2ZDZkNmQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG4gIHBhZGRpbmc6IDEwcHg7IH1cblxuLmVudHJ5LWFydGljbGUuc2hpZnRlZC1hcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZW50cnktYXJ0aWNsZS5zaGlmdGVkLWFyZWEge1xuICAgICAgcGFkZGluZy1yaWdodDogODJweDtcbiAgICAgIHBhZGRpbmctbGVmdDogODJweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmVudHJ5LWFydGljbGUuc2hpZnRlZC1hcmVhIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMzBweCk7IH0gfVxuICAuZW50cnktYXJ0aWNsZS5zaGlmdGVkLWFyZWEgLnNoYXJlLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5lbnRyeS1hcnRpY2xlLnNoaWZ0ZWQtYXJlYSAuc2hhcmUtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA5MCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRvcDogMjBweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5lbnRyeS1hcnRpY2xlLnNoaWZ0ZWQtYXJlYSAuc2hhcmUtYmxvY2sge1xuICAgICAgICB0b3A6IDIyMHB4O1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH0gfVxuICAgIC5lbnRyeS1hcnRpY2xlLnNoaWZ0ZWQtYXJlYSAuc2hhcmUtYmxvY2sgLnNvY2lhbC1idG4ucm91bmQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuXG4uY29udGVudC13cmFwLWhvbGRlciB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRlbnQtd3JhcC1ob2xkZXIge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDYzNnB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudC13cmFwLWhvbGRlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzQ0cHgpOyB9IH1cblxuLnNpZGViYXItd3JhcC1ob2xkZXIge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMzA4cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2lkZWJhci13cmFwLWhvbGRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5lbnRyeS1tZWRpYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDsgfVxuICAuZW50cnktdmlkZW8tY29udGFpbmVyIC5lbnRyeS1tZWRpYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZW50cnktY29udGVudCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgLyo+IHA6bGFzdC1vZi10eXBlOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQ6ICNlYzFhMmU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDJweDtcbiAgfSovIH1cbiAgLmVudHJ5LWNvbnRlbnQgPiBoMiB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLmVudHJ5LWNvbnRlbnQgPiBoMSxcbiAgLmVudHJ5LWNvbnRlbnQgPiBoMixcbiAgLmVudHJ5LWNvbnRlbnQgPiBoMyB7XG4gICAgbWFyZ2luOiAycmVtIDAgMThweDtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gIFtkaXI9XCJydGxcIl0gLmVudHJ5LWNvbnRlbnQgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAuZW50cnktY29udGVudCBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsgfSB9XG4gIFtkaXI9XCJydGxcIl0gLmVudHJ5LWNvbnRlbnQgaDMge1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIFtkaXI9XCJydGxcIl0gLnBlcnNpYW4tdGhlbWUgLmVudHJ5LWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAudXJkdS10aGVtZSAuZW50cnktY29udGVudCB7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAudXJkdS10aGVtZSAuZW50cnktY29udGVudCBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmVudHJ5LWNvbnRlbnQgdGFibGUge1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLmVudHJ5LWNvbnRlbnQgdGFibGUge1xuICAgICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgICAgIC5lbnRyeS1jb250ZW50IHRhYmxlIHRoIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgICAgLmVudHJ5LWNvbnRlbnQgdGFibGUgdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG5cbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAwOyB9XG4gIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7IH0gfVxuICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGUgcCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICM1RDVENUQ7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDsgfVxuICAgIC51cmR1LXRoZW1lIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGUgPiBwOmZpcnN0LWNoaWxkIHtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4uYmxvY2txdW90ZS1tZXRhIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5ibG9ja3F1b3RlLW1ldGEgc3Ryb25nIHtcbiAgICBjb2xvcjogI2VjMWEyZTsgfVxuICAuYmxvY2txdW90ZS1tZXRhIHNwYW4ge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICBjb2xvcjogIzY0NjQ2NDsgfVxuXG4ucGFnZS10YXhvbm9teS10ZXJtLTYxIC5lbnRyeS1jb250ZW50ID4gcDpmaXJzdC1vZi10eXBlLFxuYmxvY2txdW90ZSA+IHA6Zmlyc3Qtb2YtdHlwZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICM1RDVENUQ7IH1cbiAgLnBhZ2UtdGF4b25vbXktdGVybS02MSAuZW50cnktY29udGVudCA+IHA6Zmlyc3Qtb2YtdHlwZTpiZWZvcmUsXG4gIGJsb2NrcXVvdGUgPiBwOmZpcnN0LW9mLXR5cGU6YmVmb3JlIHtcbiAgICAtd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA0N3B4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3N2Zy9xdW90ZS5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFyZ2luOiA0cHggMjRweCAyNHB4IDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wYWdlLXRheG9ub215LXRlcm0tNjEgLmVudHJ5LWNvbnRlbnQgPiBwOmZpcnN0LW9mLXR5cGU6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gICAgYmxvY2txdW90ZSA+IHA6Zmlyc3Qtb2YtdHlwZTpiZWZvcmUge1xuICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBpbml0aWFsOyB9XG5cbi5lbnRyeS10YWdzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBwYWRkaW5nOiAxMnB4IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDZkNmQ2O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q2ZDZkNjsgfVxuICAuZW50cnktdGFncyBzcGFuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMjgxRTFFO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gIC5lbnRyeS10YWdzIGEge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZzogMXB4IDhweCAwO1xuICAgIG1hcmdpbjogNHB4IDhweCA0cHggMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uZ2lneWEtbmV3c2xldHRlciB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4uZW50cnktcHJvbW90ZWQtc3RvcmllcyB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4uYm94LXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAvKiY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICNlYzFhMmU7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9Ki8gfVxuICAuYm94LXRpdGxlIGgyLFxuICAuYm94LXRpdGxlIGgzLFxuICAuYm94LXRpdGxlIGg0LFxuICAuYm94LXRpdGxlIGg1LFxuICAuYm94LXRpdGxlIGg2IHtcbiAgICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjb2xvcjogIzI4MUUxRTsgfVxuXG4uYmxvY2std3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuYmxvY2std3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAuYmxvY2std3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7IH0gfVxuXG4uYWQtYmxvY2staGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDE2cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmFkLWJsb2NrLWhlYWRlciB7XG4gICAgICBwYWRkaW5nOiAxMnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmFkLWJsb2NrLWhlYWRlciBzbWFsbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLmJsb2NrLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAvKiY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICNlYzFhMmU7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9Ki8gfVxuICAuYmxvY2stdGl0bGUgaDIsXG4gIC5ibG9jay10aXRsZSBoMyxcbiAgLmJsb2NrLXRpdGxlIGg0LFxuICAuYmxvY2stdGl0bGUgaDUsXG4gIC5ibG9jay10aXRsZSBoNiB7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY29sb3I6ICMyODFFMUU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuYmxvY2stdGl0bGUgaDMge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBjb2xvcjogIzg4ODg4ODsgfVxuICBbZGlyPVwicnRsXCJdIC5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgQjBCMEIwOyB9XG5cbi5pbmplY3RlZC1ibG9jayxcbi5pbmplY3RlZC1ibG9ja3Mge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzk3OTc5NztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5Nzk3OTc7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgW2Rpcj1cInJ0bFwiXSAuaW5qZWN0ZWQtYmxvY2ssIFtkaXI9XCJydGxcIl1cbiAgLmluamVjdGVkLWJsb2NrcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuICAuaW5qZWN0ZWQtYmxvY2sgLnZpZXdzLWZpZWxkLW5pZCxcbiAgLmluamVjdGVkLWJsb2NrcyAudmlld3MtZmllbGQtbmlkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5pbmplY3RlZC1ibG9jayB1bCxcbiAgLmluamVjdGVkLWJsb2NrcyB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuaW5qZWN0ZWQtYmxvY2sgdWwgbGksXG4gICAgLmluamVjdGVkLWJsb2NrcyB1bCBsaSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAuaW5qZWN0ZWQtYmxvY2sgdWwgbGk6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAgIC5pbmplY3RlZC1ibG9ja3MgdWwgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjBiMGIwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDsgfVxuICAgICAgLmluamVjdGVkLWJsb2NrIHVsIGxpID4gZGl2OmZpcnN0LWNoaWxkLFxuICAgICAgLmluamVjdGVkLWJsb2NrcyB1bCBsaSA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgICAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwOyB9XG4gIC5pbmplY3RlZC1ibG9jayBhLFxuICAuaW5qZWN0ZWQtYmxvY2tzIGEge1xuICAgIGNvbG9yOiAjRUMxQTJFO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiOyB9XG4gICAgLmluamVjdGVkLWJsb2NrIGE6aG92ZXIsXG4gICAgLmluamVjdGVkLWJsb2NrcyBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gIC5pbmplY3RlZC1ibG9jayBoNixcbiAgLmluamVjdGVkLWJsb2NrcyBoNiB7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY29sb3I6ICMzRDNEM0Q7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5pbmplY3RlZC1ibG9jayBoNiwgW2Rpcj1cInJ0bFwiXVxuICAgIC5pbmplY3RlZC1ibG9ja3MgaDYge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG5cbi5pbmplY3RlZC1ibG9jay13YXRjaC1tb3JlLFxuLmluamVjdGVkLWJsb2Nrcy13YXRjaC1tb3JlIHtcbiAgd2lkdGg6IDQ4JTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgcGFkZGluZzogMC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmluamVjdGVkLWJsb2NrLXdhdGNoLW1vcmUsXG4gICAgLmluamVjdGVkLWJsb2Nrcy13YXRjaC1tb3JlIHtcbiAgICAgIHdpZHRoOiAzNiU7IH0gfVxuICAuaW5qZWN0ZWQtYmxvY2std2F0Y2gtbW9yZSB1bCBsaSxcbiAgLmluamVjdGVkLWJsb2Nrcy13YXRjaC1tb3JlIHVsIGxpIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuaW5qZWN0ZWQtYmxvY2std2F0Y2gtbW9yZSB1bCBsaSA+IGRpdjpmaXJzdC1jaGlsZCxcbiAgICAuaW5qZWN0ZWQtYmxvY2tzLXdhdGNoLW1vcmUgdWwgbGkgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgIG1hcmdpbjogMCAwIDhweCAwOyB9XG4gIC5pbmplY3RlZC1ibG9jay13YXRjaC1tb3JlIGEsXG4gIC5pbmplY3RlZC1ibG9ja3Mtd2F0Y2gtbW9yZSBhIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZy10b3A6IDYuNXB4OyB9XG4gIC5pbmplY3RlZC1ibG9jay13YXRjaC1tb3JlIGg2LFxuICAuaW5qZWN0ZWQtYmxvY2tzLXdhdGNoLW1vcmUgaDYge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLmJyZWFkY3J1bWJzLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgbWFyZ2luLXRvcDogMTRweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5icmVhZGNydW1icy13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNHB4OyB9IH1cbiAgLmJyZWFkY3J1bWJzLXdyYXBwZXIgLmJyZWFkY3J1bWJzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmJyZWFkY3J1bWJzLXdyYXBwZXIgLmJyZWFkY3J1bWJzIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gICAgICAuYnJlYWRjcnVtYnMtd3JhcHBlciAuYnJlYWRjcnVtYnMgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjNUQ1RDVEOyB9XG4gICAgICAgIC5icmVhZGNydW1icy13cmFwcGVyIC5icmVhZGNydW1icyBsaSBhLmJyZWFkY3J1bWJzX19ob21lIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAjNzQ2ZjcwOyB9XG4gICAgICAgICAgLmJyZWFkY3J1bWJzLXdyYXBwZXIgLmJyZWFkY3J1bWJzIGxpIGEuYnJlYWRjcnVtYnNfX2hvbWU6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAuYnJlYWRjcnVtYnMtd3JhcHBlciAuYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIu6khFwiO1xuICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgY29sb3I6ICNhZGFiYWI7IH1cblxuLmVudHJ5LW1lZGlhLWlubmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuICAuZW50cnktbWVkaWEtaW5uZXIgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLmVudHJ5LW1lZGlhLWlubmVyLWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZ2FsbGVyeS1jb3VudCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgcGFkZGluZzogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA2cHg7XG4gIGxlZnQ6IDZweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyMzcsIDIzNywgMjM3LCAwLjY2Nik7IH1cblxuLmdhbGxlcnktdHJpZ2dlciB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSAuaW1hZ2VzIHVsIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmbG9hdDogcmlnaHQ7XG4gIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCAjZmZmO1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjZmZmO1xuICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNmZmY7XG4gIGhlaWdodDogMjAlO1xuICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLW1vZC1nYWxsZXJ5IC5pbWFnZXMgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgIGhlaWdodDogNzglO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmOyB9XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDZkNjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiA2MDBweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZ3JpZC1tb2QtZ2FsbGVyeSB7XG4gICAgaGVpZ2h0OiA2MDBweDsgfSB9XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IC5nYWxsZXJ5LXRpdGxlIHtcbiAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgLmltYWdlcyB7XG4gIGZsZXg6IDE7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgLmltYWdlcyB1bCB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGNvbG9yOiAjZWMxYTJlOyB9XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IGxpOmZpcnN0LWNoaWxkIGEge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA1MCU7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IDAgMDsgfVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSBsaTpmaXJzdC1jaGlsZCBhOmhvdmVyIHNwYW4ge1xuICBvcGFjaXR5OiAwLjU7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGk6bGFzdC1jaGlsZCBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RhZGZlMTtcbiAgY29sb3I6ICM1NTU7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGkuaW1hZ2Utc21hbGwge1xuICBiYWNrZ3JvdW5kLXNpemU6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgLnBhZ2VyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICAuZ3JpZC1tb2QtZ2FsbGVyeSAucGFnZXIgaSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLmdyaWQtbW9kLWdhbGxlcnkgLnBhZ2VyLm5leHQge1xuICAgIGxlZnQ6IDE1cHg7IH1cbiAgLmdyaWQtbW9kLWdhbGxlcnkgLnBhZ2VyLnByZXYge1xuICAgIHJpZ2h0OiAxNXB4OyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjIwcHgpIHtcbiAgLmdyaWQtbW9kLWdhbGxlcnkgLmdhbGxlcnktdGl0bGUge1xuICAgIG1pbi1oZWlnaHQ6IDYwcHg7IH0gfVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSBhOmhvdmVyIC5wYWdlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSAuYWRkaXRpb25hbC1waG90b3Mge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA0MHB4O1xuICBsaW5lLWhlaWdodDogNDZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1mYW1pbHk6IHNhbnMgc2VyaWY7IH1cbiAgLmdyaWQtbW9kLWdhbGxlcnkgLmFkZGl0aW9uYWwtcGhvdG9zIGkge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDsgfVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSAubGFiZWwge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICM1NTU1NTU7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBoZWlnaHQ6IDQwMHB4O1xuICBtYXJnaW46IDA7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGkge1xuICBoZWlnaHQ6IDI1JTtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSBsaTpmaXJzdC1jaGlsZCB7XG4gIGhlaWdodDogNTAlO1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDAwcHgpIHtcbiAgLmdyaWQtbW9kLWdhbGxlcnkgdWwge1xuICAgIGhlaWdodDogNTAwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgLmdyaWQtbW9kLWdhbGxlcnkgdWwge1xuICAgIGhlaWdodDogNTQwcHg7IH0gfVxuXG4ud2VpZ2h0LTEgLmdyaWQtbW9kLWdhbGxlcnkgbGk6bnRoLWNoaWxkKDJuKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7IH1cblxuLndlaWdodC0xIC5ncmlkLW1vZC1nYWxsZXJ5IGxpOm50aC1jaGlsZCgybiArIDEpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7IH1cblxuLmdyaWQtbW9kLWdhbGxlcnktd3JhcHBlciAuZ3JpZC1tb2QtZ2FsbGVyeSBsaSB7XG4gIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCAjZmZmO1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjZmZmO1xuICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNmZmY7XG4gIGhlaWdodDogMjAlO1xuICB3aWR0aDogMjUlOyB9XG5cbi5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQge1xuICBoZWlnaHQ6IDc4JTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmOyB9XG5cbi5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGk6bGFzdC1jaGlsZCBhIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7IH1cblxuLndlaWdodC0zIC5ncmlkLW1vZC1nYWxsZXJ5IGxpLFxuLndlaWdodC00IC5ncmlkLW1vZC1nYWxsZXJ5IGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgI2ZmZjtcbiAgaGVpZ2h0OiAyNSU7XG4gIHdpZHRoOiAyMCU7IH1cblxuLndlaWdodC0zIC5ncmlkLW1vZC1nYWxsZXJ5IGxpOmZpcnN0LWNoaWxkLFxuLndlaWdodC00IC5ncmlkLW1vZC1nYWxsZXJ5IGxpOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDgwJTsgfVxuXG4ud2VpZ2h0LTMgLmdyaWQtbW9kLWdhbGxlcnkgbGk6bGFzdC1jaGlsZCBhLFxuLndlaWdodC00IC5ncmlkLW1vZC1nYWxsZXJ5IGxpOmxhc3QtY2hpbGQgYSB7XG4gIHBhZGRpbmctdG9wOiAyNHB4OyB9XG5cbi53ZWlnaHQtMyAuZ3JpZC1tb2QtZ2FsbGVyeSAuYWRkaXRpb25hbC1waG90b3MsXG4ud2VpZ2h0LTQgLmdyaWQtbW9kLWdhbGxlcnkgLmFkZGl0aW9uYWwtcGhvdG9zIHtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBsaW5lLWhlaWdodDogNTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeS13cmFwcGVyIC5ncmlkLW1vZC1oYWxmLWhlaWdodCBoMSxcbi53ZWlnaHQtMyAuZ3JpZC1tb2QtZ2FsbGVyeSAubGFiZWwsXG4ud2VpZ2h0LTQgLmdyaWQtbW9kLWdhbGxlcnkgLmxhYmVsIHtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBsaW5lLWhlaWdodDogMzBweDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyMHB4KSB7XG4gIC5mdWxsLWFydGljbGUgLmdyaWQtbW9kLWdhbGxlcnkgbGkge1xuICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjZmZmO1xuICAgIGhlaWdodDogMjAlO1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmZ1bGwtYXJ0aWNsZSAuZ3JpZC1tb2QtZ2FsbGVyeSBsaTpmaXJzdC1jaGlsZCB7XG4gICAgaGVpZ2h0OiA3OCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7IH1cbiAgLmZ1bGwtYXJ0aWNsZSAuZ3JpZC1tb2QtZ2FsbGVyeSBsaTpsYXN0LWNoaWxkIGEge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgLmdyaWQtbW9kLWdhbGxlcnktd3JhcHBlciAuZ3JpZC1tb2QtZ2FsbGVyeSBsaTpudGgtY2hpbGQoMm4pIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXJpZ2h0OiAwIG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7IH1cbiAgLmdyaWQtbW9kLWdhbGxlcnktd3JhcHBlciAuZ3JpZC1tb2QtZ2FsbGVyeSBsaTpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXJpZ2h0OiAwIG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IDAgbm9uZTsgfVxuICAuZ3JpZC1tb2QtZ2FsbGVyeS13cmFwcGVyIC5ncmlkLW1vZC1nYWxsZXJ5IGxpOm50aC1jaGlsZChuICsgMikge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAyNSU7IH1cbiAgLmdyaWQtbW9kLWdhbGxlcnktd3JhcHBlciAuZ3JpZC1tb2QtZ2FsbGVyeSBsaTpmaXJzdC1jaGlsZCB7XG4gICAgaGVpZ2h0OiA1MCU7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA2NjhweCkge1xuICAuZ3JpZC1tb2QtZ2FsbGVyeS13cmFwcGVyIC5ncmlkLW1vZC1nYWxsZXJ5IGxpOm50aC1jaGlsZChuICsgMikge1xuICAgIGhlaWdodDogMjUlOyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGk6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgaGVpZ2h0OiAyMCU7IH0gfVxuXG5ib2R5LmZ1bGxzY3JlZW4tZ2FsbGVyeSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmdhbGxlcnktc3BlY2lmaWMtdHJpZ2dlciB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uZnVsbC1nYWxsZXJ5LFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogNjA1MDAwMDtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4uZnVsbC1nYWxsZXJ5IC5jbG9zZSxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmNsb3NlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgcGFkZGluZzogMTRweDtcbiAgY29sb3I6ICMyODFFMUU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4uZnVsbC1nYWxsZXJ5IC5jbG9zZTpob3Zlcixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmNsb3NlOmhvdmVyIHtcbiAgY29sb3I6ICNlYzFhMmU7IH1cblxuLmZ1bGwtZ2FsbGVyeSAuZ2FsbGVyeS10aXRsZSxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmdhbGxlcnktdGl0bGUge1xuICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgcGFkZGluZzogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiA0cmVtOyB9XG4gIC5mdWxsLWdhbGxlcnkgLmdhbGxlcnktdGl0bGUgLmdhbGxlcnktaWNvbixcbiAgLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuZ2FsbGVyeS10aXRsZSAuZ2FsbGVyeS1pY29uIHtcbiAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4uZnVsbC1nYWxsZXJ5IC5zY3JvbGxlcixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLnNjcm9sbGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4uZnVsbC1nYWxsZXJ5IC5nYWxsZXJ5LXdyYXBwZXIsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5nYWxsZXJ5LXdyYXBwZXIge1xuICBoZWlnaHQ6IDEwMHZoOyB9XG5cbi5nYWxsZXJ5LWlubmVyIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5mdWxsLWdhbGxlcnkgLmltYWdlcyxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmltYWdlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvKioge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH0qLyB9XG5cbi5mdWxsLWdhbGxlcnkgLmltYWdlcyBsaSxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmltYWdlcyBsaSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZ1bGwtZ2FsbGVyeSB1bCxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7IH1cblxuLmZ1bGwtZ2FsbGVyeSBsaSxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgbGkge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjsgfVxuXG4uZnVsbC1nYWxsZXJ5IGxpLmFjdGl2ZSxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgbGkuYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uZnVsbC1nYWxsZXJ5IGxpIGltZyxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgbGkgaW1nIHtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuXG4vKlxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MjBweCkge1xuICAuZnVsbC1nYWxsZXJ5IC5pY29uLWFycm93LWxlZnQsIC5mdWxsLWdhbGxlcnkgLmljb24tYXJyb3ctcmlnaHQge1xuICAgIG1hcmdpbi10b3A6IC0zMHB4XG4gIH1cblxuICAuZnVsbC1nYWxsZXJ5IC5pY29uLWFycm93LXJpZ2h0OmJlZm9yZSwgLmZ1bGwtZ2FsbGVyeSAuaWNvbi1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiA2MHB4XG4gIH1cbn1cbiovXG4uZnVsbC1nYWxsZXJ5IC5wYWdlcixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLnBhZ2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7IH1cbiAgLmZ1bGwtZ2FsbGVyeSAucGFnZXIgaSxcbiAgLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAucGFnZXIgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgICAuZnVsbC1nYWxsZXJ5IC5wYWdlciBpOmJlZm9yZSxcbiAgICAuZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5wYWdlciBpOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmZ1bGwtZ2FsbGVyeSAucGFnZXIgaTpiZWZvcmUsIFtkaXI9XCJydGxcIl1cbiAgICAuZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5wYWdlciBpOmJlZm9yZSB7XG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgZmlsdGVyOiBGbGlwSDtcbiAgICAgIC1tcy1maWx0ZXI6IFwiRmxpcEhcIjsgfVxuICAgIC5mdWxsLWdhbGxlcnkgLnBhZ2VyIGkuaWNvbi1hcnJvdy1sZWZ0LFxuICAgIC5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLnBhZ2VyIGkuaWNvbi1hcnJvdy1sZWZ0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgLypbZGlyPVwicnRsXCJdICYge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH0qLyB9XG4gICAgLmZ1bGwtZ2FsbGVyeSAucGFnZXIgaS5pY29uLWFycm93LXJpZ2h0LFxuICAgIC5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLnBhZ2VyIGkuaWNvbi1hcnJvdy1yaWdodCB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgLypbZGlyPVwicnRsXCJdICYge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH0qLyB9XG5cbi5mdWxsLWdhbGxlcnkgLnBhZ2VyLnByZXYsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5wYWdlci5wcmV2IHtcbiAgd2lkdGg6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIC8qW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9Ki8gfVxuXG4uZnVsbC1nYWxsZXJ5IC5wYWdlci5uZXh0LFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAucGFnZXIubmV4dCB7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiA1MCU7XG4gIC8qW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9Ki8gfVxuXG4uZ2FsbGVyeS1pbm5lciAucGFnZXIucHJldjpob3ZlciBpLFxuLmdhbGxlcnktaW5uZXIgLnBhZ2VyLm5leHQ6aG92ZXIgaSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7IH1cblxuLmZ1bGwtZ2FsbGVyeSAubGVnZW5kcyxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmxlZ2VuZHMge1xuICBwYWRkaW5nOiAyMHB4OyB9XG5cbi5mdWxsLWdhbGxlcnkgLmxlZ2VuZHMgaDIsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5sZWdlbmRzIGgyIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmZ1bGwtZ2FsbGVyeSAubGVnZW5kcyBoMiAuY291bnRlcixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmxlZ2VuZHMgaDIgLmNvdW50ZXIge1xuICBjb2xvcjogI2VjMWEyZTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cblxuLmZ1bGwtZ2FsbGVyeSAubGVnZW5kcyBwLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAubGVnZW5kcyBwIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uZnVsbC1nYWxsZXJ5IC5sZWdlbmRzIC5jcmVkaXRzLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAubGVnZW5kcyAuY3JlZGl0cyB7XG4gIGNvbG9yOiAjODg4OyB9XG5cbi5mdWxsLWdhbGxlcnkgLmxlZ2VuZHMgOmxhc3QtY2hpbGQsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5sZWdlbmRzIDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZnVsbC1nYWxsZXJ5IC5sZWdlbmRzIGEsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5sZWdlbmRzIGEge1xuICBjb2xvcjogI2VjMWEyZSAhaW1wb3J0YW50OyB9XG5cbi5mdWxsLWdhbGxlcnkgLmxlZ2VuZHMgYTpob3Zlcixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmxlZ2VuZHMgYTpob3ZlciB7XG4gIGNvbG9yOiAjOTQwYzE5ICFpbXBvcnRhbnQ7IH1cblxuLmZ1bGwtZ2FsbGVyeSAuYWQtYnV0dG9uLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuYWQtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMjgxRTFFOyB9XG5cbi5mdWxsLWdhbGxlcnkgLmFkLWJ1dHRvbiBpbWcsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5hZC1idXR0b24gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5mdWxsLWdhbGxlcnkgLmFkLW1wdSxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmFkLW1wdSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgfVxuICAuZnVsbC1nYWxsZXJ5IC5hZC1tcHUgLnByZW1pdW0tY29udGVudCxcbiAgLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuYWQtbXB1IC5wcmVtaXVtLWNvbnRlbnQge1xuICAgIHdpZHRoOiAzMDBweDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkzMHB4KSB7XG4gIC5mdWxsLWdhbGxlcnkgLmFkLWJ1dHRvbixcbiAgLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuYWQtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mdWxsLWdhbGxlcnkgLmFkLW1wdSxcbiAgLmZ1bGwtZ2FsbGVyeSAuYWQtbXB1IGltZyxcbiAgLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuYWQtbXB1LFxuICAuZnVsbC1nYWxsZXJ5IC5hZC1tcHUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZnVsbC1nYWxsZXJ5IC5hZC1tcHUsXG4gIC5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmFkLW1wdSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgLmZ1bGwtZ2FsbGVyeSAuaW1hZ2VzLFxuICAuZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5pbWFnZXMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzQwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmZ1bGwtZ2FsbGVyeSAubGVnZW5kcyxcbiAgLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAubGVnZW5kcyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDM0MHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7IH0gfVxuXG4uZnVsbC1nYWxsZXJ5LmdhbGxlcnktb3Blbixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMuZ2FsbGVyeS1vcGVuIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG5cbi5wcmVtaXVtLWNvbnRlbnQge1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbjogMCBhdXRvIDAuNzVyZW07IH1cbiAgLnNpZGViYXItd3JhcCAucHJlbWl1bS1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zaWRlYmFyLXdyYXAgLnByZW1pdW0tY29udGVudCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzIxMjEyMTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjEyMTIxO1xuICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnByZW1pdW0tY29udGVudCB7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAucHJlbWl1bS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDVweCAwIDA7IH0gfVxuICAucHJlbWl1bS1jb250ZW50IC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmc6IDRweCA4cHggOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG4gICAgW2Rpcj1cImx0clwiXSAucHJlbWl1bS1jb250ZW50IC50aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByZW1pdW0tY29udGVudCAudGl0bGUge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICBjb2xvcjogIzIxMjEyMTsgfVxuICAgIC5wcmVtaXVtLWNvbnRlbnQgLnRpdGxlIGg2IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbi5kbXB1IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmRtcHUge1xuICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgIG1hcmdpbjogMDsgfSB9XG5cbi5tcHUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubXB1IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTsgfSB9XG5cbi5yaWdodC1wb3NpdGlvbiA+IC5ncmlkLXgge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucmlnaHQtcG9zaXRpb24gPiAuZ3JpZC14IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sZWZ0LXBvc2l0aW9uID4gLmdyaWQteCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmVpZ2h0LWFydGljbGVzLWRtcHUgLmFydGljbGVzLWxpc3Q6bm90KC5jYXJkcykgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q2ZDZkNjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5laWdodC1hcnRpY2xlcy1kbXB1IC5hcnRpY2xlcy1saXN0Om5vdCguY2FyZHMpIC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgIHdpZHRoOiAxMzhweDtcbiAgICBtaW4taGVpZ2h0OiA5MnB4OyB9XG4gICAgLmVpZ2h0LWFydGljbGVzLWRtcHUgLmFydGljbGVzLWxpc3Q6bm90KC5jYXJkcykgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMzhweDsgfSB9XG5cbi5laWdodC1hcnRpY2xlcy1kbXB1IC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0sXG4uc2l4LWFydGljbGVzLW1wdSAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNmQ2ZDY7IH1cbiAgLmVpZ2h0LWFydGljbGVzLWRtcHUgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbTpsYXN0LWNoaWxkLFxuICAuc2l4LWFydGljbGVzLW1wdSAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4uc2l4LWFydGljbGVzLW1wdSAubWVkaWEtb2JqZWN0LWltZyxcbi5zZXZlbi1hcnRpY2xlcyAubWVkaWEtb2JqZWN0LWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnNpeC1hcnRpY2xlcy1tcHUgLm1lZGlhLW9iamVjdC1pbWcgaW1nLFxuICAgIC5zZXZlbi1hcnRpY2xlcyAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMjZweDsgfSB9XG5cbi5zaXgtYXJ0aWNsZXMtbXB1IC5hcnRpY2xlLWl0ZW0tYXV0aG9yLFxuLnNldmVuLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tYXV0aG9yIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnNpeC1hcnRpY2xlcy1tcHUgLmFydGljbGVzLWxpc3QsXG4gIC5zZXZlbi1hcnRpY2xlcyAuYXJ0aWNsZXMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gIC5zaXgtYXJ0aWNsZXMtbXB1IC5jZWxsLm1lZGl1bS0xMiAuYXJ0aWNsZXMtbGlzdCAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IsXG4gIC5zZXZlbi1hcnRpY2xlcyAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDZkNmQ2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2l4LWFydGljbGVzLW1wdSAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm9iamVjdHMtbGlzdCxcbiAgLnNldmVuLWFydGljbGVzIC5jZWxsLm1lZGl1bS0xMiAuYXJ0aWNsZXMtbGlzdCAub2JqZWN0cy1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gIC5zaXgtYXJ0aWNsZXMtbXB1IC5jZWxsLm1lZGl1bS0xMiAuYXJ0aWNsZXMtbGlzdCAub2JqZWN0LWl0ZW0sXG4gIC5zZXZlbi1hcnRpY2xlcyAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm9iamVjdC1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMyUgLSA4cHgpO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5zaXgtYXJ0aWNsZXMtbXB1IC5jZWxsLm1lZGl1bS0xMiAuYXJ0aWNsZXMtbGlzdCAuYXJ0aWNsZS1pdGVtLWF1dGhvcixcbiAgLnNldmVuLWFydGljbGVzIC5jZWxsLm1lZGl1bS0xMiAuYXJ0aWNsZXMtbGlzdCAuYXJ0aWNsZS1pdGVtLWF1dGhvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC5zaXgtYXJ0aWNsZXMtbXB1IC5jZWxsLm1lZGl1bS0xMiAuYXJ0aWNsZXMtbGlzdCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2LFxuICAuc2V2ZW4tYXJ0aWNsZXMgLmNlbGwubWVkaXVtLTEyIC5hcnRpY2xlcy1saXN0IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDYge1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cbiAgLnNpeC1hcnRpY2xlcy1tcHUgLmNlbGwubWVkaXVtLTEyIC5hcnRpY2xlcy1saXN0IC5tZWRpYS1vYmplY3QsXG4gIC5zZXZlbi1hcnRpY2xlcyAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm1lZGlhLW9iamVjdCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgIC5zaXgtYXJ0aWNsZXMtbXB1IC5jZWxsLm1lZGl1bS0xMiAuYXJ0aWNsZXMtbGlzdCAubWVkaWEtb2JqZWN0IC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCxcbiAgICAuc2V2ZW4tYXJ0aWNsZXMgLmNlbGwubWVkaXVtLTEyIC5hcnRpY2xlcy1saXN0IC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuc2l4LWFydGljbGVzLW1wdSAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LXNlY3Rpb246bGFzdC1jaGlsZCxcbiAgICAuc2V2ZW4tYXJ0aWNsZXMgLmNlbGwubWVkaXVtLTEyIC5hcnRpY2xlcy1saXN0IC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDE2cHg7IH1cbiAgICAuc2l4LWFydGljbGVzLW1wdSAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LWltZyxcbiAgICAuc2V2ZW4tYXJ0aWNsZXMgLmNlbGwubWVkaXVtLTEyIC5hcnRpY2xlcy1saXN0IC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuc2l4LWFydGljbGVzLW1wdSAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LWltZzphZnRlcixcbiAgICAgIC5zZXZlbi1hcnRpY2xlcyAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LWltZzphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXRvcDogNjYuODA2NyU7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuc2l4LWFydGljbGVzLW1wdSAuY2VsbC5tZWRpdW0tMTIgLmFydGljbGVzLWxpc3QgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LWltZyBpbWcsXG4gICAgICAuc2V2ZW4tYXJ0aWNsZXMgLmNlbGwubWVkaXVtLTEyIC5hcnRpY2xlcy1saXN0IC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwOyB9IH1cblxuLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbSxcbi5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLFxuLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0ge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8gLmFydGljbGUtaXRlbS1pbWcsXG4gIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyAuYXJ0aWNsZS1pdGVtLWltZyxcbiAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtdmlkZW8gLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLCAuZm91ci1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUsXG4gIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUsXG4gIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUsXG4gIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUsXG4gIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuOCk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgei1pbmRleDogMTtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiAtMjRweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRleHQtaW5kZW50OiA2cHg7XG4gICAgbWFyZ2luOiAwLjVyZW07IH1cbiAgICBbZGlyPVwicnRsXCJdIC5mb3VyLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSwgW2Rpcj1cInJ0bFwiXSAuZm91ci1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUsIFtkaXI9XCJydGxcIl1cbiAgICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtdmlkZW8gLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gICAgLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSwgW2Rpcj1cInJ0bFwiXVxuICAgIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUsIFtkaXI9XCJydGxcIl1cbiAgICAudHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtYXVkaW8gLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlIHtcbiAgICAgIHRleHQtaW5kZW50OiAtNnB4O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBpbml0aWFsOyB9XG4gIFtkaXI9XCJydGxcIl0gLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtdmlkZW8tbWlkZGxlIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSwgW2Rpcj1cInJ0bFwiXSAuZm91ci1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpby1taWRkbGUgLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlby1taWRkbGUgLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpby1taWRkbGUgLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlby1taWRkbGUgLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpby1taWRkbGUgLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlIHtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgYm90dG9tOiAtMjRweDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGluaXRpYWw7IH1cbiAgLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtYXVkaW8gLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLFxuICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtYXVkaW8gLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLFxuICAudHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtYXVkaW8gLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxZVwiOyB9XG5cbi5mb3VyLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tY29udGVudCxcbi5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQsXG4udHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ibG9jay13cmFwcGVyIC5mb3VyLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tY29udGVudCwgLmJsb2NrLXdyYXBwZXJcbiAgICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1jb250ZW50LCAuYmxvY2std3JhcHBlclxuICAgIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICAgICAgbWluLWhlaWdodDogaW5pdGlhbDsgfSB9XG5cbi5mb3VyLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tY29udGVudDEsXG4uY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1jb250ZW50MSxcbi50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQxIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmJsb2NrLXdyYXBwZXIgLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1jb250ZW50MSwgLmJsb2NrLXdyYXBwZXJcbiAgICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1jb250ZW50MSwgLmJsb2NrLXdyYXBwZXJcbiAgICAudHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS1jb250ZW50MSB7XG4gICAgICBtaW4taGVpZ2h0OiBpbml0aWFsOyB9IH1cblxuLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1hdXRob3IsXG4uY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1hdXRob3IsXG4udHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1pbWcsXG4uY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1pbWcsXG4udHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS1pbWcge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1kZXNjLFxuLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tZGVzYyxcbi50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLWRlc2Mge1xuICBmb250LXNpemU6IDE1cHg7IH1cblxuLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS10aXRsZSBoNCxcbi5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LFxuLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuZm91ci1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LCBbZGlyPVwicnRsXCJdXG4gIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LCBbZGlyPVwicnRsXCJdXG4gIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0IHtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGZvbnQtc2l6ZTogMTdweDsgfVxuICAudXJkdS10aGVtZSAuZm91ci1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LCAudXJkdS10aGVtZVxuICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS10aXRsZSBoNCwgLnVyZHUtdGhlbWVcbiAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQge1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICBsaW5lLWhlaWdodDogMC44OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIyLjVlbSkge1xuICAgIC5mb3VyLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQsXG4gICAgLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQsXG4gICAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm91ci1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LFxuICAgIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LFxuICAgIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG5cbi5mb3VyLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXg6IDE7IH1cblxuLmZvdXItYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICBtYXJnaW4tdG9wOiBhdXRvOyB9XG5cbi5mb3VyLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgZmxleDogbm9uZTtcbiAgaGVpZ2h0OiAxMjhweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5mb3VyLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIGhlaWdodDogMTUycHg7IH0gfVxuXG4uZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtdmlkZW8gLmFicy1ib3R0b20tZWxlbWVudCxcbi5mb3VyLWFydGljbGVzMSAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpbyAuYWJzLWJvdHRvbS1lbGVtZW50LFxuLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5hYnMtYm90dG9tLWVsZW1lbnQsXG4uY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtYXVkaW8gLmFicy1ib3R0b20tZWxlbWVudCxcbi50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYWJzLWJvdHRvbS1lbGVtZW50LFxuLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hYnMtYm90dG9tLWVsZW1lbnQge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTgwcHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmZvdXItYXJ0aWNsZXMxIC5jZWxsLm1lZGl1bS02LmxhcmdlLTYsXG4gIC5jYXJkcy1hcnRpY2xlcyAuY2VsbC5tZWRpdW0tNi5sYXJnZS02LFxuICAudHdvLWFydGljbGVzLWNvbXBhY3QgLmNlbGwubWVkaXVtLTYubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDk3LjUlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfSB9XG5cbi5mb3VyLWFydGljbGVzMSAuYXJ0aWNsZS1pdGVtLFxuLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0sXG4udHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICAuZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8gLmFydGljbGUtaXRlbS1pbWcsXG4gIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyAuYXJ0aWNsZS1pdGVtLWltZyxcbiAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmZvdXItYXJ0aWNsZXMxIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSwgLmZvdXItYXJ0aWNsZXMxIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSxcbiAgLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSxcbiAgLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSxcbiAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSxcbiAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDI2LCA0NiwgMC44KTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgei1pbmRleDogMTtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiAtMjRweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRleHQtaW5kZW50OiA2cHg7XG4gICAgbWFyZ2luOiAwLjVyZW07IH1cbiAgICBbZGlyPVwicnRsXCJdIC5mb3VyLWFydGljbGVzMSAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUsIFtkaXI9XCJydGxcIl0gLmZvdXItYXJ0aWNsZXMxIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSwgW2Rpcj1cInJ0bFwiXVxuICAgIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUsIFtkaXI9XCJydGxcIl1cbiAgICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtYXVkaW8gLmFydGljbGUtaXRlbS1pbWc6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gICAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSwgW2Rpcj1cInJ0bFwiXVxuICAgIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpbyAuYXJ0aWNsZS1pdGVtLWltZzpiZWZvcmUge1xuICAgICAgdGV4dC1pbmRlbnQ6IC02cHg7IH1cbiAgLmZvdXItYXJ0aWNsZXMxIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSxcbiAgLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSxcbiAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLWF1ZGlvIC5hcnRpY2xlLWl0ZW0taW1nOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MWVcIjsgfVxuXG4uZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS1jb250ZW50LFxuLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tY29udGVudCxcbi50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmJsb2NrLXdyYXBwZXIgLmZvdXItYXJ0aWNsZXMxIC5hcnRpY2xlLWl0ZW0tY29udGVudCwgLmJsb2NrLXdyYXBwZXJcbiAgICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1jb250ZW50LCAuYmxvY2std3JhcHBlclxuICAgIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICAgICAgbWluLWhlaWdodDogaW5pdGlhbDsgfSB9XG5cbi5mb3VyLWFydGljbGVzMSAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQxLFxuLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tY29udGVudDEsXG4udHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS1jb250ZW50MSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ibG9jay13cmFwcGVyIC5mb3VyLWFydGljbGVzMSAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQxLCAuYmxvY2std3JhcHBlclxuICAgIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQxLCAuYmxvY2std3JhcHBlclxuICAgIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQxIHtcbiAgICAgIG1pbi1oZWlnaHQ6IGluaXRpYWw7IH0gfVxuXG4uZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS1hdXRob3IsXG4uY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1hdXRob3IsXG4udHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuLmZvdXItYXJ0aWNsZXMxIC5hcnRpY2xlLWl0ZW0taW1nLFxuLmNhcmRzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0taW1nLFxuLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5mb3VyLWFydGljbGVzMSAuYXJ0aWNsZS1pdGVtLWRlc2MsXG4uY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS1kZXNjLFxuLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0tZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTVweDsgfVxuXG4uZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS10aXRsZSBoNCxcbi5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LFxuLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS10aXRsZSBoNCwgW2Rpcj1cInJ0bFwiXVxuICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS10aXRsZSBoNCwgW2Rpcj1cInJ0bFwiXVxuICAudHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS10aXRsZSBoNCB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBmb250LXNpemU6IDE3cHg7IH1cbiAgLnVyZHUtdGhlbWUgLmZvdXItYXJ0aWNsZXMxIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQsIC51cmR1LXRoZW1lXG4gIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LCAudXJkdS10aGVtZVxuICAudHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS10aXRsZSBoNCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyMi41ZW0pIHtcbiAgICAuZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS10aXRsZSBoNCxcbiAgICAuY2FyZHMtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS10aXRsZSBoNCxcbiAgICAudHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS10aXRsZSBoNCB7XG4gICAgICBmb250LXNpemU6IDE3cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb3VyLWFydGljbGVzMSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LFxuICAgIC5jYXJkcy1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0LFxuICAgIC50d28tYXJ0aWNsZXMtY29tcGFjdCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG5cbi5mb3VyLWFydGljbGVzMSBhcnRpY2xlLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ubWVkaWEtdmlkZW8sXG4uY2FyZHMtYXJ0aWNsZXMgYXJ0aWNsZS5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvLFxuLnR3by1hcnRpY2xlcy1jb21wYWN0IGFydGljbGUuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyB7XG4gIGJvcmRlcjogMHB4O1xuICBtYXJnaW4tYm90dG9tOiA5cHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAudHdvLWFydGljbGVzLWNvbXBhY3QgLmFydGljbGUtaXRlbS1pbWcge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnR3by1hcnRpY2xlcy1jb21wYWN0IC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aHJlZS1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyB7XG4gICAgaGVpZ2h0OiAyMjBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aHJlZS1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyB7XG4gICAgaGVpZ2h0OiAzMDBweDsgfSB9XG5cbi50aHJlZS1hcnRpY2xlcyAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyBoNCB7XG4gIGZvbnQtc2l6ZTogMTdweDsgfVxuXG4udXJkdS10aGVtZSAudGhyZWUtYXJ0aWNsZXMgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8gaDQge1xuICBmb250LXNpemU6IDIycHg7IH1cblxuLnNwbGFzaC1yb3cgPiAuZ3JpZC14ID4gLmNlbGwubGFyZ2UtOCA+IC5hcnRpY2xlLWl0ZW0ubWVkaWEtdmlkZW8gLmFicy1ib3R0b20tZWxlbWVudCxcbi5zcGxhc2gtcm93ID4gLmdyaWQteCA+IC5jZWxsLmxhcmdlLTggPiAuYXJ0aWNsZS1pdGVtLm1lZGlhLWF1ZGlvIC5hYnMtYm90dG9tLWVsZW1lbnQge1xuICBwYWRkaW5nLXRvcDogNDBweDsgfVxuXG4uc3BsYXNoLXJvdyAuYXJ0aWNsZXMtbGlzdCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uc3BsYXNoLXJvdyAuYXJ0aWNsZXMtbGlzdC5oYXMtcmVsYXRlZCAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnNwbGFzaC1yb3cgLmFydGljbGVzLWxpc3QuaGFzLXJlbGF0ZWQgLmFicy1ib3R0b20tZWxlbWVudCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBhZGRpbmctbGVmdDogOHB4OyB9XG4gIC5zcGxhc2gtcm93IC5hcnRpY2xlcy1saXN0Lmhhcy1yZWxhdGVkIC5hYnMtYm90dG9tLWVsZW1lbnQgLmFydGljbGUtaXRlbS10aXRsZSBhIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZmZmO1xuICAgIHBhZGRpbmc6IDAgMCA4cHggOHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc3BsYXNoLXJvdyAuYXJ0aWNsZXMtbGlzdC5oYXMtcmVsYXRlZCAuYWJzLWJvdHRvbS1lbGVtZW50IC5hcnRpY2xlLWl0ZW0tdGl0bGUgYSB7XG4gICAgICBwYWRkaW5nOiAwIDhweCA4cHggMDsgfVxuXG4uc3BsYXNoLXJvdyAuYXJ0aWNsZXMtbGlzdC5oYXMtcmVsYXRlZCAuaGVhZGxpbmVzLWxpc3Qge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBtYXJnaW46IDAgMCAwLjVyZW0gMC41cmVtOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNwbGFzaC1yb3cgLmFydGljbGVzLWxpc3QuaGFzLXJlbGF0ZWQgLmhlYWRsaW5lcy1saXN0IHtcbiAgICBtYXJnaW46IDAgMC41cmVtIDAuNXJlbSAwOyB9XG4gIC5zcGxhc2gtcm93IC5hcnRpY2xlcy1saXN0Lmhhcy1yZWxhdGVkIC5oZWFkbGluZXMtbGlzdCBsaSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5zcGxhc2gtcm93IC5hcnRpY2xlcy1saXN0Lmhhcy1yZWxhdGVkIC5oZWFkbGluZXMtbGlzdCBsaSBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTsgfVxuXG4uZWlnaHQtYXJ0aWNsZXMgLmFydGljbGVzLWxpc3QgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5zZXZlbi1hcnRpY2xlcyAuZ3JpZC14ID4gZGl2OmZpcnN0LWNoaWxkLFxuICAudHdvLWFydGljbGVzIC5ncmlkLXggPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5lbmctdGhlbWUgLmVpZ2h0LWFydGljbGVzLWRtcHUgLmFydGljbGVzLWxpc3QgLmFydGljbGUtaXRlbS10aXRsZSBoNixcbiAgLnR1cmtpc2gtdGhlbWUgLmVpZ2h0LWFydGljbGVzLWRtcHUgLmFydGljbGVzLWxpc3QgLmFydGljbGUtaXRlbS10aXRsZSBoNiB7XG4gICAgZm9udC1zaXplOiAxN3B4OyB9IH1cblxuLmFydGljbGVzLWxpc3Qge1xuICAvKkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfSovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmFydGljbGVzLWxpc3QuY2FyZHMgLm9iamVjdHMtbGlzdCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH1cbiAgICAuYXJ0aWNsZXMtbGlzdC5jYXJkcyAub2JqZWN0LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gM3B4KTtcbiAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5hcnRpY2xlLWl0ZW0tYXV0aG9yIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgLmFydGljbGVzLWxpc3QuY2FyZHMgLmFydGljbGUtaXRlbS10aXRsZSBoNiB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cbiAgICAuYXJ0aWNsZXMtbGlzdC5jYXJkcyAubWVkaWEtb2JqZWN0IHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgLmFydGljbGVzLWxpc3QuY2FyZHMgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuYXJ0aWNsZXMtbGlzdC5jYXJkcyAubWVkaWEtb2JqZWN0IC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxNjBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDE2cHg7IH1cbiAgICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1pbWc6bm90KFtkYXRhLW1lZGlhPVwiandWaWRlb1wiXSkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLmFydGljbGVzLWxpc3QuY2FyZHMgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LWltZzpub3QoW2RhdGEtbWVkaWE9XCJqd1ZpZGVvXCJdKTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNjYuODA2NyU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLmFydGljbGVzLWxpc3QuY2FyZHMgLm1lZGlhLW9iamVjdCAubWVkaWEtb2JqZWN0LWltZzpub3QoW2RhdGEtbWVkaWE9XCJqd1ZpZGVvXCJdKSBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGVzLWxpc3QuY2FyZHMge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAuYXJ0aWNsZXMtbGlzdC5jYXJkcyAub2JqZWN0cy1saXN0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5tZWRpYS1vYmplY3Qge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFydGljbGVzLWxpc3QuY2FyZHMgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgICAgICBmbGV4OiAxOyB9XG4gICAgICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAxNnB4OyB9XG4gICAgICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5tZWRpYS1vYmplY3QgLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5vYmplY3QtaXRlbSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDQ5LjQlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5hcnRpY2xlcy1saXN0LmNhcmRzIC5vYmplY3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm90dG9tOiAwOyB9IH1cblxuLmF1dGhvci1uYW1lIHtcbiAgY29sb3I6ICNlYzFhMmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuICAudXJkdS10aGVtZSAuYXV0aG9yLW5hbWUge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4uYXV0aG9yLWhlYWRsaW5lIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4yMnB4O1xuICBsaW5lLWhlaWdodDogMS40OyB9XG4gIC5lbmctdGhlbWUgLmF1dGhvci1oZWFkbGluZSxcbiAgLnR1cmtpc2gtdGhlbWUgLmF1dGhvci1oZWFkbGluZSB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIC5hdXRob3ItaGVhZGxpbmUgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYXV0aG9yLWhlYWRsaW5lIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNlYzFhMmU7IH1cblxuLnRocmVlLWFydGljbGVzLWhlYWRzaG90cyB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDZkNmQ2O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q2ZDZkNjtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50aHJlZS1hcnRpY2xlcy1oZWFkc2hvdHMgLnNsaWNrLXRyYWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC50aHJlZS1hcnRpY2xlcy1oZWFkc2hvdHMgLnNsaWNrLXRyYWNrIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG4gIC50aHJlZS1hcnRpY2xlcy1oZWFkc2hvdHMgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAudGhyZWUtYXJ0aWNsZXMtaGVhZHNob3RzIC5tZWRpYS1vYmplY3QtaW1nIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICBhbGlnbi1jb250ZW50OiBlbmQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnRocmVlLWFydGljbGVzLWhlYWRzaG90cyAuY2Fyb3VzZWwtaXRlbXMge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwIDIuNXJlbTsgfVxuICAudGhyZWUtYXJ0aWNsZXMtaGVhZHNob3RzIC5tZWRpYS1vYmplY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnRocmVlLWFydGljbGVzLWhlYWRzaG90cyAuYXV0aG9yLW5hbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDhweDsgfVxuICAudGhyZWUtYXJ0aWNsZXMtaGVhZHNob3RzIC5tZWRpYS1vYmplY3Qtc2VjdGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA4cHggMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLnRocmVlLWFydGljbGVzLWhlYWRzaG90cyAubWVkaWEtb2JqZWN0LXNlY3Rpb24tY29udGVudCAuYXV0aG9yLWhlYWRsaW5lIGEge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC51cmR1LXRoZW1lIC50aHJlZS1hcnRpY2xlcy1oZWFkc2hvdHMgLm1lZGlhLW9iamVjdC1zZWN0aW9uLWNvbnRlbnQgLmF1dGhvci1oZWFkbGluZSBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50aHJlZS1hcnRpY2xlcy1oZWFkc2hvdHMgLmNhcm91c2VsLWl0ZW1zIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICBbZGlyPVwicnRsXCJdIC50aHJlZS1hcnRpY2xlcy1oZWFkc2hvdHMgLmF1dGhvci1oZWFkbGluZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuICAudXJkdS10aGVtZSAudGhyZWUtYXJ0aWNsZXMtaGVhZHNob3RzIC5hdXRob3ItaGVhZGxpbmUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBtYXJnaW4tdG9wOiA3cHg7IH1cbiAgLnBlcnNpYW4tdGhlbWUgLnRocmVlLWFydGljbGVzLWhlYWRzaG90cyAuYXV0aG9yLWhlYWRsaW5lIHtcbiAgICBmb250LXNpemU6IDE1cHg7IH1cblxuLmF1dGhvci1maWVsZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYXV0aG9yLWZpZWxkIC5tZWRpYS1vYmplY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYXV0aG9yLWZpZWxkIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICAuYXV0aG9yLWZpZWxkIC5tZWRpYS1vYmplY3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuLmF1dGhvci1maWVsZC1pbWcgaW1nIHtcbiAgbWF4LXdpZHRoOiA3NXB4OyB9XG5cbi5hdXRob3ItZmllbGQtbmFtZSB7XG4gIGNvbG9yOiAjZWMxYTJlO1xuICBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTsgfVxuICBbZGlyPVwicnRsXCJdIC5hdXRob3ItZmllbGQtbmFtZSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuXG4uYXV0aG9yLWZpZWxkLWpvYi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICBmb250LXNpemU6IDE5cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjODg4ODg4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmF1dGhvci1maWVsZC1zb2NpYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmF1dGhvci1maWVsZC1zb2NpYWwgYSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM4ODg4ODg7IH1cbiAgICAuYXV0aG9yLWZpZWxkLXNvY2lhbCBhOmJlZm9yZSB7XG4gICAgICBjb2xvcjogIzg4ODg4ODtcbiAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuXG4uYXV0aG9yLWZpZWxkLWJpbyB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hdXRob3ItZmllbGQtYmlvIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuLmkxMDAtYmxvY2sge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uaW5saW5lLWdhbGxlcnkge1xuICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkNmQ2ZDY7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDZkNmQ2O1xuICBwYWRkaW5nOiA0cHggMCAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG5cbnNwYW4uZ2FsbGVyeS1pY29uIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMThweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogOHB4OyB9XG5cbi5pbmxpbmUtZ2FsbGVyeS1iZWZvcmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDhweCAwOyB9XG4gIC5pbmxpbmUtZ2FsbGVyeS1iZWZvcmUgaDQge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5pbmxpbmUtZ2FsbGVyeS1iZWZvcmUgLmlubGluZS1nYWxsZXJ5LWNvdW50IHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb2xvcjogI2VjMWEyZTtcbiAgICBmb250OiA3MDAgMTRweCBJbmRlcGVuZGVudCBTYW5zLCBzYW5zLXNlcmlmO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5pbmxpbmUtZ2FsbGVyeS1iZWZvcmUgLmlubGluZS1nYWxsZXJ5LWNvdW50OmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjOTQwYzE5OyB9XG5cbi5pbmxpbmUtZ2FsbGVyeS1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogNDkuNSU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuaW5saW5lLWdhbGxlcnktaW5uZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG5cbi5pbmxpbmUtZ2FsbGVyeS1wcmV2aWV3IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogNjYlOyB9XG4gIC5pbmxpbmUtZ2FsbGVyeS1wcmV2aWV3IC5zaXplciB7XG4gICAgcGFkZGluZy10b3A6IDgwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5pbmxpbmUtZ2FsbGVyeS1wcmV2aWV3IHtcbiAgICAgIHdpZHRoOiA3NSU7IH0gfVxuICAuaW5saW5lLWdhbGxlcnktcHJldmlldyAuY2hldnJvbi1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgei1pbmRleDogMztcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgLmlubGluZS1nYWxsZXJ5LXByZXZpZXcgLmNoZXZyb24taWNvbi5uZXh0LWljb24ge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuaW5saW5lLWdhbGxlcnktcHJldmlldyAuY2hldnJvbi1pY29uIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuaW5saW5lLWdhbGxlcnktcHJldmlldyAuY2hldnJvbi1pY29uLm5leHQtaWNvbiB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvOyB9XG5cbi5pbmxpbmUtZ2FsbGVyeS10aHVtYm5haWxzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgbWFyZ2luLXRvcDogMTJweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5pbmxpbmUtZ2FsbGVyeS10aHVtYm5haWxzIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGZsZXg6IDE7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfSB9XG5cbi5nYWxsZXJ5LXRodW1ibmFpbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSA4cHgpO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ2FsbGVyeS10aHVtYm5haWwge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMyUgLSA4cHgpOyB9IH1cbiAgLmdhbGxlcnktdGh1bWJuYWlsIC5zaXplciB7XG4gICAgcGFkZGluZy10b3A6IDgwJTsgfVxuXG4uYXV0aG9yLWF2YXRhciB7XG4gIHdpZHRoOiA3MnB4O1xuICBoZWlnaHQ6IDcycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luOiAxNnB4IDhweCAwIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZDFiMmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgW2Rpcj1cInJ0bFwiXSAuYXV0aG9yLWF2YXRhciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hdXRob3ItYXZhdGFyIHtcbiAgICAgIHdpZHRoOiAxMjVweDtcbiAgICAgIGhlaWdodDogMTI1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hdXRob3ItYXZhdGFyIHtcbiAgICAgIHdpZHRoOiAxMzdweDtcbiAgICAgIGhlaWdodDogMTM3cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuICAuaGFzLWF2YXRhciAuYXV0aG9yLWF2YXRhciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLnNlYXJjaC1mb3JtLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgLnNlYXJjaC1mb3JtLXdyYXBwZXIgLnBhZ2UtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgY29sb3I6ICMzMDM2Mzg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAuc2VhcmNoLWZvcm0td3JhcHBlciAucGFnZS10aXRsZSBoMSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAuc2VhcmNoLWZvcm0td3JhcHBlciAucGFnZS10aXRsZSBoMSBhIHtcbiAgICAgICAgY29sb3I6ICMyODFFMUU7IH1cblxuLnNlYXJjaC1mb3JtLW1haW4uc2VhcmNoYm94ID4gZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5zZWFyY2gtZm9ybS1tYWluLnNlYXJjaGJveCA+IGRpdiAuZm9ybS1pdGVtLmZvcm0tdHlwZS10ZXh0ZmllbGQge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4td2lkdGg6IDA7IH1cblxuLnNlYXJjaC1mb3JtLW1haW4gaW5wdXQuaW5wdXQtZ3JvdXAtZmllbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmZGZjOyB9XG5cbi5zZWFyY2gtZm9ybS1tYWluIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG5cbi5zZWFyY2gtZm9ybS1tYWluIC5idXR0b24ge1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODFFMUU7XG4gIHdpZHRoOiA0NXB4O1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuc2VhcmNoLWZvcm0tbWFpbiAuYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWMxYTJlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNlYXJjaC1mb3JtLW1haW4gLmJ1dHRvbiB7XG4gICAgICBtaW4td2lkdGg6IDVyZW07IH0gfVxuXG4uc2VhcmNoLW1ldGEge1xuICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxM3B4OyB9XG4gIC5zZWFyY2gtbWV0YSAuc2VhcmNoLXRlcm0ge1xuICAgIGNvbG9yOiAjNWY3MTc2OyB9XG4gICAgLnNlYXJjaC1tZXRhIC5zZWFyY2gtdGVybSBzcGFuIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiOyB9XG4gIC5zZWFyY2gtbWV0YSAudHlwbyB7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuc2VhcmNoLW1ldGEgLnR5cG8gc3BhbiB7XG4gICAgICBjb2xvcjogI2VjMWEyZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLnBvc3RzLWxpc3QgLmFydGljbGUtaXRlbSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5wb3N0cy1saXN0IC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuXG4uYXJ0aWNsZS1pdGVtLW1ldGEge1xuICBjb2xvcjogcmdiYSg0MCwgMzAsIDMwLCAwLjYpOyB9XG4gIC5hcnRpY2xlLWl0ZW0tbWV0YSBhIHtcbiAgICBjb2xvcjogcmdiYSgyMzYsIDI2LCA0NiwgMC44KTsgfVxuICAgIC5hcnRpY2xlLWl0ZW0tbWV0YSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5ob3Jvc2NvcGVzLWFydGljbGVzIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi5lbnRyeS12aWRlby1jb250YWluZXIge1xuICBwYWRkaW5nOiAxNnB4IDA7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG4gIC5lbnRyeS12aWRlby1jb250YWluZXIgaDEge1xuICAgIGZvbnQtc2l6ZTogMjFweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuZW50cnktdmlkZW8tY29udGFpbmVyIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4OyB9IH1cbiAgLmVudHJ5LXZpZGVvLWNvbnRhaW5lciAuZW50cnktc3VidGl0bGUgaDIsXG4gIC5lbnRyeS12aWRlby1jb250YWluZXIgLmVudHJ5LW1ldGEtZmllbGQgc3BhbixcbiAgLmVudHJ5LXZpZGVvLWNvbnRhaW5lciAuZW50cnktbWV0YS1maWVsZCB0aW1lLFxuICAuZW50cnktdmlkZW8tY29udGFpbmVyIC5lbnRyeS1tZXRhLWZpZWxkOmFmdGVyIHtcbiAgICBjb2xvcjogI2RhZGZlMTsgfVxuICAuZW50cnktdmlkZW8tY29udGFpbmVyIC5hdXRob3ItdHdpdHRlciBhLFxuICAuZW50cnktdmlkZW8tY29udGFpbmVyIC5lbnRyeS1tZXRhLWNvbW1lbnQgYSB7XG4gICAgY29sb3I6ICNkYWRmZTE7IH1cbiAgICAuZW50cnktdmlkZW8tY29udGFpbmVyIC5hdXRob3ItdHdpdHRlciBhOmhvdmVyLFxuICAgIC5lbnRyeS12aWRlby1jb250YWluZXIgLmVudHJ5LW1ldGEtY29tbWVudCBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gIC5lbnRyeS12aWRlby1jb250YWluZXIgLmVudHJ5LW1ldGEtc2hhcmVzLWNvdW50IHNwYW4ge1xuICAgIGNvbG9yOiAjZWMxYTJlOyB9XG5cbi5icmFuZGluZyB7XG4gIG1hcmdpbi10b3A6IC0wLjI1cmVtO1xuICBjb2xvcjogIzk5OTk5OTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTsgfVxuICAuYnJhbmRpbmcgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuYnJhbmRpbmcgYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4uc2hvdy1mb3ItcHJpbnRhYmxlLWFyZWEge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBwcmludCB7XG4gIC8qLmluamVjdGVkLWJsb2NrLCAuZW50cnktcHJvbW90ZWQtc3RvcmllcywgLnNoYXJlLWJsb2NrLCAuZm9sbG93LWJsb2NrLCAuaW5saW5lLWdhbGxlcnksIC5mdWxsLWdhbGxlcnksIC5yZXNwb25zaXZlLWVtYmVkLCBpZnJhbWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH0qL1xuICAvKlxuICAgaGVhZGVyLCBmb290ZXIsIC5zaWRlYmFyLXdyYXAtaG9sZGVyLCAuYnJlYWRjcnVtYnMtd3JhcHBlciwgLmVudHJ5LXRhZ3MsIC5lbnRyeS1jb21tZW50cywgLmluamVjdGVkLWJsb2NrLCAuZW50cnktcHJvbW90ZWQtc3RvcmllcywgLnNoYXJlLWJsb2NrLCAuZm9sbG93LWJsb2NrLCAuaW5saW5lLWdhbGxlcnksIC5mdWxsLWdhbGxlcnksIC5yZXNwb25zaXZlLWVtYmVkLCBpZnJhbWUge1xuICAgICBkaXNwbGF5OiBub25lO1xuICAgfVxuICAgLmNvbnRlbnQtd3JhcC1ob2xkZXIge1xuICAgICB3aWR0aDogMTAwJTtcbiAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgfVxuICAgLmVudHJ5LXRpdGxlIGgxIHtcbiAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICB9XG4gICAuZW50cnktbWV0YSB7XG4gICAgIHdpZHRoOiAxMDAlO1xuICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICB9XG4gICAuZW50cnktaGVhZGVyLmhhcy1hdmF0YXIgLmVudHJ5LW1ldGEtd3JhcHBlciA+IC5ncmlkLXggPiAuY2VsbC5zaHJpbmsge1xuICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICB9XG4gICAqLyB9XG5cbi51cmR1LXRoZW1lICoge1xuICB3b3JkLXNwYWNpbmc6IC0xcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLmhvcm9zY29wZS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMnJlbTsgfVxuICAuaG9yb3Njb3BlLWl0ZW0gYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuaG9yb3Njb3BlLWl0ZW0gYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4uaG9yb3Njb3BlLWl0ZW0taW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxcmVtIDEuNXJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuaG9yb3Njb3BlLWl0ZW0taW1nIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gM3JlbSAwOyB9IH1cbiAgLmhvcm9zY29wZS1pdGVtLWltZyBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGJvcmRlcjogc2lsdmVyIHNvbGlkIDFweDsgfVxuICAuZGFpbHktaG9yb3Njb3BlcyAuaG9yb3Njb3BlLWl0ZW0taW1nIGE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi2YrZiNmF2YpcIjsgfVxuICAud2Vla2x5LWhvcm9zY29wZXMgLmhvcm9zY29wZS1pdGVtLWltZyBhOmFmdGVyIHtcbiAgICBjb250ZW50OiBcItij2LPYqNmI2LnZilwiOyB9XG4gIC5tb250aGx5LWhvcm9zY29wZXMgLmhvcm9zY29wZS1pdGVtLWltZyBhOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIti02YfYsdmKXCI7IH1cbiAgLmRhaWx5LWhvcm9zY29wZXMgLmhvcm9zY29wZS1pdGVtLWltZyBhLFxuICAud2Vla2x5LWhvcm9zY29wZXMgLmhvcm9zY29wZS1pdGVtLWltZyBhLFxuICAubW9udGhseS1ob3Jvc2NvcGVzIC5ob3Jvc2NvcGUtaXRlbS1pbWcgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZGFpbHktaG9yb3Njb3BlcyAuaG9yb3Njb3BlLWl0ZW0taW1nIGE6aG92ZXIsXG4gICAgLndlZWtseS1ob3Jvc2NvcGVzIC5ob3Jvc2NvcGUtaXRlbS1pbWcgYTpob3ZlcixcbiAgICAubW9udGhseS1ob3Jvc2NvcGVzIC5ob3Jvc2NvcGUtaXRlbS1pbWcgYTpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjc7IH1cbiAgICAgIC5kYWlseS1ob3Jvc2NvcGVzIC5ob3Jvc2NvcGUtaXRlbS1pbWcgYTpob3ZlcjphZnRlcixcbiAgICAgIC53ZWVrbHktaG9yb3Njb3BlcyAuaG9yb3Njb3BlLWl0ZW0taW1nIGE6aG92ZXI6YWZ0ZXIsXG4gICAgICAubW9udGhseS1ob3Jvc2NvcGVzIC5ob3Jvc2NvcGUtaXRlbS1pbWcgYTpob3ZlcjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7IH1cbiAgICAuZGFpbHktaG9yb3Njb3BlcyAuaG9yb3Njb3BlLWl0ZW0taW1nIGE6YWZ0ZXIsXG4gICAgLndlZWtseS1ob3Jvc2NvcGVzIC5ob3Jvc2NvcGUtaXRlbS1pbWcgYTphZnRlcixcbiAgICAubW9udGhseS1ob3Jvc2NvcGVzIC5ob3Jvc2NvcGUtaXRlbS1pbWcgYTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMXJlbTtcbiAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLmRhaWx5LWhvcm9zY29wZXMgLmhvcm9zY29wZS1pdGVtLWltZyBhOmFmdGVyLFxuICAgICAgICAud2Vla2x5LWhvcm9zY29wZXMgLmhvcm9zY29wZS1pdGVtLWltZyBhOmFmdGVyLFxuICAgICAgICAubW9udGhseS1ob3Jvc2NvcGVzIC5ob3Jvc2NvcGUtaXRlbS1pbWcgYTphZnRlciB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogODBweDsgfSB9XG5cbi5ob3Jvc2NvcGUtaXRlbS1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uaG9yb3Njb3BlLWl0ZW0tbmFtZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG5cbi5ob3Jvc2NvcGUtaXRlbS1yYW5nZSB7XG4gIGZvbnQtc2l6ZTogMTVweDsgfVxuXG4ucmVsYXRlZC1ob3Jvc2NvcGUge1xuICBib3JkZXItdG9wOiA2cHggc29saWQgIzAwMDAwMDtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgLnJlbGF0ZWQtaG9yb3Njb3BlIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDBweDsgfVxuXG4vKiAtLS0tLSBMaXZlIGJsb2cgbGlzdCBzdHlsZXMgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuLlJlY2VudFBvc3RzV2lkZ2V0IGlmcmFtZVtzcmMqPVwiandwbGF5ZXJcIl0ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGl2ZWJsb2ctY2Fwc3VsZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4zMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zMTI1cmVtO1xuICAgIG1heC13aWR0aDogNjEuNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxpdmVibG9nLWNhcHN1bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpdmVibG9nLWNhcHN1bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH0gfVxuXG4ubGl2ZWJsb2ctY2Fwc3VsZSAuaW5uZXIge1xuICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweCAxNnB4O1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG5cbi5saXZlYmxvZy1jYXBzdWxlLmFjdGl2ZSAuaW5uZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmZDM4OyB9XG5cbi5saXZlYmxvZy1jYXBzdWxlIHNwYW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogOHB4OyB9XG4gIC5saXZlYmxvZy1jYXBzdWxlIHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubGl2ZWJsb2ctY2Fwc3VsZSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIC5saXZlYmxvZy1jYXBzdWxlIHNwYW46Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29uLWxpdmUtYmxvZy5wbmcpIG5vLXJlcGVhdCA1MCU7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cblxuLmxpdmVibG9nLWNhcHN1bGUgdGltZSB7XG4gIGZvbnQtc2l6ZTogMjBweDsgfVxuICBbZGlyPVwicnRsXCJdIC5saXZlYmxvZy1jYXBzdWxlIHRpbWUge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuXG5ib2R5LmFydGljbGUtbGl2ZWJsb2cgLmVudHJ5LWFydGljbGUtbGl2ZWJsb2cge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RhZGZlMTtcbiAgcGFkZGluZy10b3A6IDE4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5hcnRpY2xlLWxpdmVibG9nIC5lbnRyeS1hcnRpY2xlLWxpdmVibG9nIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMnB4OyB9IH1cblxuLmxpdmVibG9nIC5jb250ZW50IHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IC50d2l0dGVyLXdpZGdldCB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cblxuLmxpdmVibG9nIC5saXZlYmxvZy1jb250ZW50IC5jb250ZW50LFxuLmxiLWl0ZW1zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5sYi1pdGVtcyB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4ubGItaXRlbSB7XG4gIGNvbG9yOiAjMjgxZTFlOyB9XG5cbi5saXZlYmxvZyAubGl2ZWJsb2ctY29udGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg4ODtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IC0yNHB4IDAgMCAyOHB4O1xuICBoZWlnaHQ6IDY4cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAubGl2ZWJsb2cgLmxpdmVibG9nLWNvbnRlbnQ6YmVmb3JlIHtcbiAgICBtYXJnaW46IC0yNHB4IDI4cHggMCAwOyB9XG5cbi5saXZlYmxvZyAucG9zdC1kYXRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250OiA3MDAgMTdweCBJbmRlcGVuZGVudCBTYW5zLCBzYW5zLXNlcmlmO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDI0cHggMCAyNHB4IDIwcHg7XG4gIGNvbG9yOiAjODg4OyB9XG4gIFtkaXI9XCJydGxcIl0gLmxpdmVibG9nIC5wb3N0LWRhdGUge1xuICAgIG1hcmdpbjogMjRweCAyMHB4IDI0cHggMDsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZGF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjODg4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcbiAgd2lkdGg6IDE5cHg7XG4gIGhlaWdodDogMTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZGF0ZSB0aW1lIHtcbiAgcGFkZGluZy1yaWdodDogOHB4OyB9XG5cbi5saXZlYmxvZyAucG9zdC1mb290ZXIge1xuICBwYWRkaW5nOiAxNnB4IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg4ODtcbiAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHg7IH1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpLmF1dGhvci1uYW1lIHtcbiAgY29sb3I6ICNlYzFhMmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpIHtcbiAgcGFkZGluZzogMCA4cHg7IH1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgY29sb3I6ICM4ODg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJ8XCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC0xcHg7IH1cblxuLmhpZ2hsaWdodHMtd3JhcHBlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5oaWdobGlnaHRzIHtcbiAgY29sb3I6ICMyODFlMWU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZmNmY2Y7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLmhpZ2hsaWdodHMgYTpob3ZlciB7XG4gICAgY29sb3I6ICNlYzFhMmU7IH1cbiAgLmhpZ2hsaWdodHMgdWwge1xuICAgIG1hcmdpbjogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZ2hsaWdodHMgaDIge1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5oaWdobGlnaHRzIGgyIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmhpZ2hsaWdodHMgPiBkaXYgOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5oaWdobGlnaHRzIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaXN0LXN0eWxlOiBub3JtYWw7XG4gIHBhZGRpbmctYm90dG9tOiAyNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAuaGlnaGxpZ2h0cyBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHdpZHRoOiAxOXB4O1xuICAgIGhlaWdodDogMTlweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL3N2Zy93aGl0ZV9hcnJvdy5zdmcpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE5cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBhZGRpbmctdG9wOiA0cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAycHg7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5oaWdobGlnaHRzIGxpOmJlZm9yZSB7XG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgZmlsdGVyOiBGbGlwSDtcbiAgICAgIC1tcy1maWx0ZXI6IFwiRmxpcEhcIjtcbiAgICAgIHRvcDogMnB4OyB9XG4gIC5oaWdobGlnaHRzIGxpOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAycHg7XG4gICAgYmFja2dyb3VuZDogI2RhZGZlMTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMXB4O1xuICAgIHRvcDogMDsgfVxuICAuaGlnaGxpZ2h0cyBsaTpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5oaWdobGlnaHRzIGxpIGEge1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4jbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmQzODtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg4ODtcbiAgZGlzcGxheTogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHggMjBweCAxMHB4O1xuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogIzI4MWUxZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gICNsaXZlLWxpc3QtdXBkYXRlLWJ1dHRvbi5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uICNsaXZlLWxpc3QtdXBkYXRlLWJ1dHRvbiAudXBkYXRlLXRleHQge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24gLmljb24tcmVmcmVzaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07IH1cblxuLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07IH1cbiAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXI6YmVmb3JlIHtcbiAgICB3aWR0aDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICM4ODg7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyOHB4O1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciAucGFnaW5hdGlvbiB7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWRBcmFiaWNLdWZpXCI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4ODg4ODg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIgLnBhZ2luYXRpb24gLnByZXYge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciAucGFnaW5hdGlvbiAubmV4dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciAucGFnaW5hdGlvbiAuc2hvcnRjdXQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIgLnBhZ2luYXRpb24gLnNob3J0Y3V0ID4gKiB7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250OiA3MDAgMTZweCBcIkluZGVwZW5kZW50IFNhbnNcIiwgc2Fucy1zZXJpZjsgfVxuICAgIC5saXZlYmxvZyAucGFnaW5hdGlvbi13cmFwcGVyIC5wYWdpbmF0aW9uIGEge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG4gICAgICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciAucGFnaW5hdGlvbiBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjMjgxRTFFOyB9XG5cbi5pY29uLWhvbGRlci5hYnMtZWxlbWVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjVyZW07XG4gIGxlZnQ6IDAuNXJlbTtcbiAgei1pbmRleDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5pY29uLWhvbGRlci5hYnMtZWxlbWVudCBpIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAuaWNvbi1ob2xkZXIuYWJzLWVsZW1lbnQgaS5pY29uLWZhY2Vib29rIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1MTY4YTQ7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5pY29uLWhvbGRlci5hYnMtZWxlbWVudCBpLmljb24tdHdpdHRlciwgLmljb24taG9sZGVyLmFicy1lbGVtZW50IGkuaWNvbi10d2l0dGVyLXgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTZkNDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmljb24taG9sZGVyLmFicy1lbGVtZW50IGkuaWNvbi15b3V0dWJlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiYjAwMDA7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4vKiAtLS0tLSBMaXZlIGJsb2cgbGlzdCBzdHlsZXMgLS0tLS0tIEVORCAtLS0tLS0gKi9cbi5zdWJzY3JpYmUtZmllbGQtdGl0bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LWZhbWlseTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4uc3Vic2NyaWJlLWJsb2NrcyAuZ3JpZC1pdGVtcyB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uc3Vic2NyaWJlLWJsb2NrcyAuYXJ0aWNsZS1pdGVtIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTsgfVxuICAuc3Vic2NyaWJlLWJsb2NrcyAuYXJ0aWNsZS1pdGVtIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLnN1YnNjcmliZS1ibG9ja3MgLmFydGljbGUtaXRlbS1pbWcgYTphZnRlciB7XG4gIHotaW5kZXg6IDE7IH1cblxuLmNhcmQtaXRlbSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNWU4ZWE7IH1cblxuLmFydGljbGUtYm9vayAuZW50cnktYXJ0aWNsZS10b3BwZXIge1xuICBtYXgtd2lkdGg6IDEyNDBweDsgfVxuXG4uYXJ0aWNsZS1ib29rIC5lbnRyeS1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmFydGljbGUtYm9vayAuZW50cnktaGVhZGVyLmhhcy1hdmF0YXIgLmVudHJ5LXN1YnRpdGxlIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5hcnRpY2xlLWJvb2sgLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS1zdWJ0aXRsZSBoMiB7XG4gICAgY29sb3I6ICM4ODg7XG4gICAgZm9udC1zaXplOiAyMXB4OyB9XG5cbi5hcnRpY2xlLWJvb2sgLmF1dGhvci1hdmF0YXIge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAxcmVtIGF1dG87IH1cblxuLmFydGljbGUtYm9vayAuZW50cnktaGVhZGVyLmhhcy1hdmF0YXIgLmVudHJ5LW1ldGEtd3JhcHBlciB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uYXJ0aWNsZS1ib29rIC5lbnRyeS1tZWRpYS1pbm5lciB7XG4gIHBhZGRpbmc6IDAgMnJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXJ0aWNsZS1ib29rIC5lbnRyeS1hcnRpY2xlLXRvcHBlciAuY2FwdGlvbi1maWVsZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSA4MDBweCkgLyAyKTsgfSB9XG5cbi5maXJzdC1sZXR0ZXIge1xuICBmb250LXNpemU6IDUycHg7XG4gIHdpZHRoOiA1MnB4O1xuICBoZWlnaHQ6IDUycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW4tbGVmdDogMTJweDtcbiAgbWFyZ2luLXRvcDogNnB4O1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmc6IDQwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjIyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZpcnN0LWxldHRlcjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMjIyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7IH1cblxuLmNhbXBhaWduLWFyZWEgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYWFhO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5jYW1wYWlnbi1hcmVhIHAge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiAjMjIyOyB9XG5cbi5wb2RjYXN0LWJhZGdlIHVsIHtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5wb2RjYXN0LWJhZGdlIHVsIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgd2lkdGg6IDQ3LjUlO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5wb2RjYXN0LWxpc3QtY2hhbm5lbCB1bCB7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICAucG9kY2FzdC1saXN0LWNoYW5uZWwgdWwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLnBvZGNhc3QtbGlzdC1jaGFubmVsIHVsIGxpIGltZyB7XG4gICAgICB3aWR0aDogMTUwcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wb2RjYXN0LWxpc3QtY2hhbm5lbCB1bCBsaSBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDBweDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucG9kY2FzdC1saXN0LWNoYW5uZWwgdWwgbGkgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7IH0gfVxuXG4ucG9kY2FzdC1saXN0Lmhhcy1zZXBhcmF0b3IgLmdyaWQteCB7XG4gIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkICNiZGJkYmQ7XG4gIHBhZGRpbmc6IDFyZW0gMDsgfVxuICAucG9kY2FzdC1saXN0Lmhhcy1zZXBhcmF0b3IgLmdyaWQteCAuYXJ0aWNsZS1pbWcge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAucG9kY2FzdC1saXN0Lmhhcy1zZXBhcmF0b3IgLmdyaWQteCAuYXJ0aWNsZS1pbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuLmNhcmQtcG9kY2FzdCB7XG4gIHBhZGRpbmc6IDAuMnJlbTsgfVxuICAucG9kY2FzdC1ibGFjayAuY2FyZC1wb2RjYXN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wb2RjYXN0LWJsYWNrIC5jYXJkLXBvZGNhc3QgcCB7XG4gICAgICBjb2xvcjogIzhjOGM4YzsgfVxuXG4ucG9kY2FzdC1zb2NpYWwgYSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cblxuLnBvZGNhc3Qtc29jaWFsIGltZyB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7IH1cblxuLnNsaWNrLWxvYWRpbmcge1xuICBoZWlnaHQ6IDQwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1IHVybCguLi9pbWcvYWpheC1sb2FkZXIuZ2lmKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgfVxuICAuc2xpY2stbG9hZGluZyA+IGRpdiB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuc2xpY2stbG9hZGluZy5zbGljay1pbml0aWFsaXplZCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAyNTBtcyBlYXNlLWluLW91dDsgfVxuXG4ubGltZWxpZ2h0LXBsYXllciB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4zNCU7XG4gIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmxpbWVsaWdodC1wbGF5ZXIgLnZqcy1saW1lbGlnaHQtYmlnLXBsYXkge1xuICBmb250LXNpemU6IDEyZW0gIWltcG9ydGFudDsgfVxuXG4vKiAtLS0tLS0tLSBGaW5hbCBzYXkgLS0tLS0tLS0tLS0tLS0tLSBTdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5tZWRpYS1vYmplY3QtZm9yLXNtYWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaWEtb2JqZWN0LWZvci1zbWFsbCAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAgIC5tZWRpYS1vYmplY3QtZm9yLXNtYWxsIC5hcnRpY2xlLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNzVyZW07IH1cbiAgICAgICAgLm1lZGlhLW9iamVjdC1mb3Itc21hbGwgLmFydGljbGUtaXRlbSAuYXJ0aWNsZS1pdGVtLWltZzpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgIC5tZWRpYS1vYmplY3QtZm9yLXNtYWxsIC5hcnRpY2xlLWl0ZW0gLmFydGljbGUtaXRlbS1pbWc6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgLm1lZGlhLW9iamVjdC1mb3Itc21hbGwgLmFydGljbGUtaXRlbSAuYXJ0aWNsZS1pdGVtLWltZyA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC5tZWRpYS1vYmplY3QtZm9yLXNtYWxsIC5hcnRpY2xlLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4OyB9XG4gICAgICAubWVkaWEtb2JqZWN0LWZvci1zbWFsbCAuYXJ0aWNsZS1pdGVtIC5hcnRpY2xlLWl0ZW0taW5mbyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gICAgICAgIC5tZWRpYS1vYmplY3QtZm9yLXNtYWxsIC5hcnRpY2xlLWl0ZW0gLmFydGljbGUtaXRlbS1pbmZvOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgLm1lZGlhLW9iamVjdC1mb3Itc21hbGwgLmFydGljbGUtaXRlbSAuYXJ0aWNsZS1pdGVtLWluZm86bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgLm1lZGlhLW9iamVjdC1mb3Itc21hbGwgLmFydGljbGUtaXRlbSAuYXJ0aWNsZS1pdGVtLWluZm8gPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1mbHVpZC1pbWcgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi51cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cblxuLm5vLWJvcmRlciB7XG4gIGJvcmRlcjogMDsgfVxuXG4uYmxvY2stY3VzdG9tLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5wYWRkaW5nLWhvcml6b250YWwtZm9yLXNtYWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfSB9XG5cbi53aXRoLXBhZGRpbmcge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5oYXMtcGFkZGluZyB7XG4gIHBhZGRpbmc6IDEuNXJlbTsgfVxuXG4udmVydGljYWwtcGFkZCB7XG4gIHBhZGRpbmc6IDFyZW0gMDsgfVxuXG4uZnQtc3otMTUge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG4uZnQtc3otMTgge1xuICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5mdC1zei0yOCB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuZnQtc3otMjgge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJvdyAubGFyZ2UtY29sdW1uLnJvdy5yb3csXG4gIC5yb3cgLnJvdy5yb3cubGFyZ2UtY29sdW1ucyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMGVtKSB7XG4gIC54c21hbGwtZnVsbC13aWR0aCA+IGxpLFxuICAueHNtYWxsLWZ1bGwtd2lkdGguY29sdW1ucyB7XG4gICAgbGlzdC1zdHlsZTogb3V0c2lkZSBub25lIG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4udG9wLXBhZGRpbmctMSB7XG4gIHBhZGRpbmctdG9wOiAxcmVtOyB9XG5cbi50b3AtcGFkZGluZy0yIHtcbiAgcGFkZGluZy10b3A6IDJyZW07IH1cblxuLnNlZS1tb3JlLWxpbmsgYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiAjZWMxYTJlOyB9XG4gIC5zZWUtbW9yZS1saW5rIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMzMzMzMzOyB9XG5cbi5ncmF5LWZvbnQtY29sb3Ige1xuICBjb2xvcjogI2NjY2NjYzsgfVxuXG4ucHJpbWFyeS1mb250LWNvbG9yIHtcbiAgY29sb3I6ICNlYzFhMmU7IH1cblxuLmVtcGVyb3ItZm9udC1jb2xvciB7XG4gIGNvbG9yOiAjNTU1NTU1OyB9XG4gIGgzLmVtcGVyb3ItZm9udC1jb2xvciBhLFxuICBoNC5lbXBlcm9yLWZvbnQtY29sb3IgYSxcbiAgaDUuZW1wZXJvci1mb250LWNvbG9yIGEsXG4gIGg2LmVtcGVyb3ItZm9udC1jb2xvciBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIGgzLmVtcGVyb3ItZm9udC1jb2xvciBhOmhvdmVyLFxuICAgIGg0LmVtcGVyb3ItZm9udC1jb2xvciBhOmhvdmVyLFxuICAgIGg1LmVtcGVyb3ItZm9udC1jb2xvciBhOmhvdmVyLFxuICAgIGg2LmVtcGVyb3ItZm9udC1jb2xvciBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG5cbi5ib3JkZXItZ3JheS1hcm91bmQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGFkZmUxOyB9XG5cbi50aGljay1ib3JkZXItZ3JheS1hcm91bmQge1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGFkZmUxOyB9XG5cbi50aGlja2VyLWJvcmRlci1ncmF5LWFyb3VuZCB7XG4gIGJvcmRlcjogNHB4IHNvbGlkICNkYWRmZTE7IH1cblxuLmdyYXktYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDE3OSwgMTc5LCAxNzksIDAuMyk7IH1cblxuLmdyYXktYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDE3OSwgMTc5LCAxNzksIDAuMyk7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07IH1cblxuLnRleHR1cmUtcGluay1iZyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIiAuIC4gL2ltZy8gdGV4dHVyZS1waW5rIC4ganBnIFwiKSByZXBlYXQgY2VudGVyIGNlbnRlcjsgfVxuICAudGV4dHVyZS1waW5rLWJnIGgyLFxuICAudGV4dHVyZS1waW5rLWJnIHAsXG4gIC50ZXh0dXJlLXBpbmstYmcgYSxcbiAgLnRleHR1cmUtcGluay1iZyBkaXYge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi53aGl0ZS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuLmxpZ2h0LWdyYXktYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFkZmUxOyB9XG4gIC5saWdodC1ncmF5LWJnLmFicy1lbGVtZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFkZmUxOyB9XG5cbi53aGl0ZS1zbW9rZS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi53aGl0ZS1zbW9rZS1vcGFjaXR5LWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDUsIDI0NSwgMjQ1LCAwLjYpO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4udG9wLXBvcnRpb24tYmxhY2stYmc6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTUlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxYzFjOyB9XG5cbi5ib3R0b20tcG9ydGlvbi1zbW9rZS1iZzpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cblxuLndoaXRlLXRvLXNtb2tlLWdyYWRpZW50LWJnIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZmZmZiwgI2YyZjJmMik7IH1cblxuLndoaXRlLXRvLWxpZ2h0LWdyYXktZ3JhZGllbnQtYmcge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmZmZmLCAjZGFkZmUxKTsgfVxuXG4uc21va2UtdG8td2hpdGUtZ3JhZGllbnQtYmcge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjJmMmYyLCAjZmZmZmZmKTsgfVxuXG4ubGlnaHQtZ3JheS10by13aGl0ZS1ncmFkaWVudC1iZyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNkYWRmZTEgNzAlLCAjZmZmZmZmKTsgfVxuXG4uZ3JhZGllbnQtYmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNDcsIDI0NywgMjQ3LCAwLjEpIDMzJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpIDApOyB9XG4gIC5ncmFkaWVudC1iZzphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA3ODNweDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAtMTsgfVxuXG4vKi50ZXh0dXJlLWJnIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiIC4gLiAvaW1nLyB0ZXh0dXJlMiAuIHBuZyBcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59Ki9cbi5ncmF5LWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgY29sb3I6ICMyODFFMUU7IH1cbiAgLmdyYXktYmcgaDEsXG4gIC5ncmF5LWJnIGgyLFxuICAuZ3JheS1iZyBoMyxcbiAgLmdyYXktYmcgaDQsXG4gIC5ncmF5LWJnIGg1LFxuICAuZ3JheS1iZyBoNiB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuZ3JheS1iZyBoMSBhLFxuICAgIC5ncmF5LWJnIGgyIGEsXG4gICAgLmdyYXktYmcgaDMgYSxcbiAgICAuZ3JheS1iZyBoNCBhLFxuICAgIC5ncmF5LWJnIGg1IGEsXG4gICAgLmdyYXktYmcgaDYgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgICAgLmdyYXktYmcgaDEgYTpob3ZlcixcbiAgICAgIC5ncmF5LWJnIGgyIGE6aG92ZXIsXG4gICAgICAuZ3JheS1iZyBoMyBhOmhvdmVyLFxuICAgICAgLmdyYXktYmcgaDQgYTpob3ZlcixcbiAgICAgIC5ncmF5LWJnIGg1IGE6aG92ZXIsXG4gICAgICAuZ3JheS1iZyBoNiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNlYzFhMmU7IH1cblxuLmRhcmstZ3JheS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTI1MjU7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5kYXJrLWdyYXktYmcgaDEsXG4gIC5kYXJrLWdyYXktYmcgaDIsXG4gIC5kYXJrLWdyYXktYmcgaDMsXG4gIC5kYXJrLWdyYXktYmcgaDQsXG4gIC5kYXJrLWdyYXktYmcgaDUsXG4gIC5kYXJrLWdyYXktYmcgaDYge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gICAgLmRhcmstZ3JheS1iZyBoMSBhLFxuICAgIC5kYXJrLWdyYXktYmcgaDIgYSxcbiAgICAuZGFyay1ncmF5LWJnIGgzIGEsXG4gICAgLmRhcmstZ3JheS1iZyBoNCBhLFxuICAgIC5kYXJrLWdyYXktYmcgaDUgYSxcbiAgICAuZGFyay1ncmF5LWJnIGg2IGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAgIC5kYXJrLWdyYXktYmcgaDEgYTpob3ZlcixcbiAgICAgIC5kYXJrLWdyYXktYmcgaDIgYTpob3ZlcixcbiAgICAgIC5kYXJrLWdyYXktYmcgaDMgYTpob3ZlcixcbiAgICAgIC5kYXJrLWdyYXktYmcgaDQgYTpob3ZlcixcbiAgICAgIC5kYXJrLWdyYXktYmcgaDUgYTpob3ZlcixcbiAgICAgIC5kYXJrLWdyYXktYmcgaDYgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG5cbi5idXR0b24uaG9sbG93LFxuLnBhZ2VyLS1pbmZpbml0ZS1zY3JvbGwgbGkgYSB7XG4gIGJvcmRlci13aWR0aDogMXB4OyB9XG5cbmxhYmVsIHNwYW4ucmVxdWlyZWQge1xuICBjb2xvcjogcmVkO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubGFzdC1uby1tYXJnaW4gYXJ0aWNsZTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAubGFzdC1uby1tYXJnaW4gYXJ0aWNsZTpsYXN0LWNoaWxkIGg0LFxuICAgIC5sYXN0LW5vLW1hcmdpbiBhcnRpY2xlOmxhc3QtY2hpbGQgaDUsXG4gICAgLmxhc3Qtbm8tbWFyZ2luIGFydGljbGU6bGFzdC1jaGlsZCBoNiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLm1heFdpZHRoLW1lZGl1bSxcbi5tYXhXaWR0aC1zbWFsbCxcbi5tYXhXaWR0aC14c21hbGwge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4ubWF4V2lkdGgtbWVkaXVtIHtcbiAgbWF4LXdpZHRoOiA4MDBweDsgfVxuXG4ubWF4V2lkdGgtc21hbGwge1xuICBtYXgtd2lkdGg6IDY3MHB4OyB9XG5cbi5tYXhXaWR0aC14c21hbGwge1xuICBtYXgtd2lkdGg6IDM2MHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWNvbGxhcHNlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc21hbGwtZ3JpZC1jb2xsYXBzZSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAuc21hbGwtZ3JpZC1jb2xsYXBzZSAuYXJ0aWNsZS1pdGVtLWluZm8sXG4gICAgLnNtYWxsLWdyaWQtY29sbGFwc2UgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI0LjM3NWVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zbWFsbC1ncmlkLWNvbGxhcHNlIC5ncmlkLWl0ZW1zIC5hcnRpY2xlLWl0ZW0taW5mbyxcbiAgLnNtYWxsLWdyaWQtY29sbGFwc2UgLmdyaWQtaXRlbXMgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyIHtcbiAgICBwYWRkaW5nOiAwOyB9IH1cblxuLnNtYWxsLWdyaWQtY29sbGFwc2UgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIHNwYW4sXG4uc21hbGwtZ3JpZC1jb2xsYXBzZSAucGFkZGluZy1ob3Jpem9udGFsLWZvci1zbWFsbCAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyBzcGFuLFxuLnNtYWxsLWdyaWQtY29sbGFwc2UgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwgLnBhZ2UtdGl0bGUuc3R5bGUtdjMgc3BhbiB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnNtYWxsLWdyaWQtY29sbGFwc2UgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyIHtcbiAgcGFkZGluZzogMDsgfVxuXG4uY2VudGVyZWQtY29sdW1uIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuY2VudGVyZWQtY29sdW1uLCAuY2VudGVyZWQtY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5uZXdzbGV0dGVyLWFyZWEge1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLm5ld3NsZXR0ZXItYXJlYSBpbnB1dCB7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7IH1cbiAgLm5ld3NsZXR0ZXItYXJlYSBwIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5uZXdzbGV0dGVyLWFyZWEgaW5wdXRbdHlwZT1cIiBzdWJtaXQgXCJdIHtcbiAgICBib3JkZXI6IDA7IH1cbiAgICAubmV3c2xldHRlci1hcmVhIGlucHV0W3R5cGU9XCIgc3VibWl0IFwiXTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICNlYzFhMmU7IH1cbiAgLm5ld3NsZXR0ZXItYXJlYSAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIGhlaWdodDogMi42cmVtO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBib3JkZXI6IDA7IH1cblxuLm5ld3NsZXR0ZXItYXJlYS1pbnRybyBoMyB7XG4gIG1hcmdpbjogMDsgfVxuXG4ubmV3c2xldHRlci1hcmVhLWludHJvIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAubmV3c2xldHRlci1hcmVhLWludHJvIHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgY29sb3I6ICNlYzFhMmU7IH1cblxuLm1jX2VtYmVkX3NpZ251cCBkaXYjbWNlLXJlc3BvbnNlcyB7XG4gIGZsb2F0OiByaWdodDtcbiAgdG9wOiAtMS40ZW07XG4gIHBhZGRpbmc6IDBlbSAwLjVlbSAwZW0gMC41ZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbjogMCA1JTtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLm1jX2VtYmVkX3NpZ251cCBkaXYucmVzcG9uc2Uge1xuICBtYXJnaW46IDFlbSAwO1xuICBwYWRkaW5nOiAxZW0gMC41ZW0gMC41ZW0gMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZsb2F0OiByaWdodDtcbiAgdG9wOiAtMS41ZW07XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiA4MCU7IH1cblxuLm1jX2VtYmVkX3NpZ251cCAjbWNlLWVycm9yLXJlc3BvbnNlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWNfZW1iZWRfc2lnbnVwICNtY2Utc3VjY2Vzcy1yZXNwb25zZSB7XG4gIGNvbG9yOiAjNTI5MjE0O1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tY19lbWJlZF9zaWdudXAgbGFiZWwuZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDEuMDVlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmc6IDAuNWVtIDA7IH1cblxuLmJhbm5lci1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5zY2hlZHVsZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDZkNmQ2O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q2ZDZkNjtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiOyB9XG4gIC5zY2hlZHVsZSAubWVkaWEtb2JqZWN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5zY2hlZHVsZSAuYXV0aG9yLW5hbWUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuICAuc2NoZWR1bGUgLmF1dGhvci1saXZlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuc2NoZWR1bGUgdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTsgfSB9XG4gIC5zY2hlZHVsZSB1bCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubmV3cy1pdGVtIHtcbiAgcGFkZGluZzogMCAxLjVyZW07IH1cblxuLnN0YXRpb25zLWxpc3QgdWwge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnN0YXRpb25zLWxpc3QgdWwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAwLjJyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnN0YXRpb25zLWxpc3QgdWwgbGkge1xuICAgICAgICBtYXJnaW46IDAgMC41cmVtOyB9IH1cblxuLyogRHJ1cGFsIGFkbWluIHN0eWxlcyAtLS0tLSBTVEFSVCAtLS0tLSovXG4jYWRtaW4tbWVudSB7XG4gIHotaW5kZXg6IDEwMDAwMDAxOyB9XG5cbiNvdmVybGF5LWNvbnRhaW5lcixcbi5vdmVybGF5LW1vZGFsLWJhY2tncm91bmQsXG4ub3ZlcmxheS1lbGVtZW50IHtcbiAgei1pbmRleDogOTk5OTk5OTsgfVxuXG4ub3ZlcmxheS1hY3RpdmUge1xuICB6LWluZGV4OiAxMDAwMDAwMDsgfVxuXG5kaXYjdG9vbGJhciBhI2VkaXQtc2hvcnRjdXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbmh0bWwub3ZlcmxheS1vcGVuIGJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnBhc3N3b3JkLXN0cmVuZ3RoLFxuZGl2LnBhc3N3b3JkLWNvbmZpcm0ge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhc3N3b3JkLXN0cmVuZ3RoLFxuICAgIGRpdi5wYXNzd29yZC1jb25maXJtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmRydXBhbC10YWJzIHVsLnRhYnMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZHJ1cGFsLXRhYnMgdWwudGFicyBsaSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCA1cHggOHB4O1xuICAgIHBhZGRpbmc6IDVweCAxNXB4OyB9XG4gICAgLmRydXBhbC10YWJzIHVsLnRhYnMgbGk6aG92ZXIsIC5kcnVwYWwtdGFicyB1bC50YWJzIGxpLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWMxYTJlOyB9XG4gICAgICAuZHJ1cGFsLXRhYnMgdWwudGFicyBsaTpob3ZlciBhLCAuZHJ1cGFsLXRhYnMgdWwudGFicyBsaS5hY3RpdmUgYSB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuXG4ucGFnZS10YXhvbm9teS10ZXJtIC5hcnRpY2xlLXRlYXNlciAuYXJ0aWNsZS1jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmxvYWQtbW9yZSB1bCBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnBhZ2VyLS1pbmZpbml0ZS1zY3JvbGwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wYWdlci0taW5maW5pdGUtc2Nyb2xsIGxpIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcbiAgICBjb2xvcjogI2NjY2NjYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xuICAgIGNvbG9yOiAjMjgxRTFFO1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkQXJhYmljS3VmaVwiO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2lkdGg6IDMwJTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucGFnZXItLWluZmluaXRlLXNjcm9sbCBsaSBhIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAucGFnZXItLWluZmluaXRlLXNjcm9sbCBsaSBhLCAucGFnZXItLWluZmluaXRlLXNjcm9sbCBsaSBhOmhvdmVyLCAucGFnZXItLWluZmluaXRlLXNjcm9sbCBsaSBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBhZ2VyLS1pbmZpbml0ZS1zY3JvbGwgbGkgYS5kaXNhYmxlZCwgLnBhZ2VyLS1pbmZpbml0ZS1zY3JvbGwgbGkgYS5kaXNhYmxlZDpob3ZlciwgLnBhZ2VyLS1pbmZpbml0ZS1zY3JvbGwgbGkgYS5kaXNhYmxlZDpmb2N1cywgLnBhZ2VyLS1pbmZpbml0ZS1zY3JvbGwgbGkgYVtkaXNhYmxlZF0sIC5wYWdlci0taW5maW5pdGUtc2Nyb2xsIGxpIGFbZGlzYWJsZWRdOmhvdmVyLCAucGFnZXItLWluZmluaXRlLXNjcm9sbCBsaSBhW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYWdlci0taW5maW5pdGUtc2Nyb2xsIGxpIGE6aG92ZXIsIC5wYWdlci0taW5maW5pdGUtc2Nyb2xsIGxpIGE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNjY2NjY2O1xuICAgICAgY29sb3I6ICM2NjY2NjY7IH1cbiAgICAgIC5wYWdlci0taW5maW5pdGUtc2Nyb2xsIGxpIGE6aG92ZXIuZGlzYWJsZWQsIC5wYWdlci0taW5maW5pdGUtc2Nyb2xsIGxpIGE6aG92ZXJbZGlzYWJsZWRdLCAucGFnZXItLWluZmluaXRlLXNjcm9sbCBsaSBhOmZvY3VzLmRpc2FibGVkLCAucGFnZXItLWluZmluaXRlLXNjcm9sbCBsaSBhOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG4gICAgICAgIGNvbG9yOiAjY2NjY2NjOyB9XG4gICAgLnBhZ2VyLS1pbmZpbml0ZS1zY3JvbGwgbGkgYTpob3ZlciwgLnBhZ2VyLS1pbmZpbml0ZS1zY3JvbGwgbGkgYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMjgxRTFFOyB9XG5cbi5hZG1pbi1tZW51IHVsLnRhYnMucHJpbWFyeSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmFkbWluLW1lbnUgdWwudGFicy5wcmltYXJ5IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBwYWRkaW5nOiA1cHggMTVweDsgfVxuICAgIC5hZG1pbi1tZW51IHVsLnRhYnMucHJpbWFyeSBsaTpob3ZlciwgLmFkbWluLW1lbnUgdWwudGFicy5wcmltYXJ5IGxpLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWMxYTJlOyB9XG4gICAgICAuYWRtaW4tbWVudSB1bC50YWJzLnByaW1hcnkgbGk6aG92ZXIgYSwgLmFkbWluLW1lbnUgdWwudGFicy5wcmltYXJ5IGxpLmFjdGl2ZSBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG5cbi5lbGVtZW50LWludmlzaWJsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogRHJ1cGFsIGFkbWluIHN0eWxlcyAtLS0tLSBFTkQgLS0tLS0qL1xuLyogLS0tLS0tLSBTb2NpYWxzIEJ0bnMgU3R5bGVzIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbmhlYWRlciAuc29jaWFscy1hcmVhLFxuI3N0aWNreS1oZWFkZXIgLnNvY2lhbHMtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6LWluZGV4OiAxOyB9XG5cbi5jYW52YXMtcGFuZWwgLnNvY2lhbHMtYXJlYSB7XG4gIHBhZGRpbmc6IDEuNXJlbSAwOyB9XG5cbmZvb3RlciAuc29jaWFscy1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgZm9vdGVyIC5zb2NpYWxzLWFyZWEgaDYge1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4uc29jaWFsLWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2I4YjhiODtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW46IDAgOHB4IDAgMDtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc29jaWFsLWJ0biB7XG4gICAgbWFyZ2luOiAwIDAgMCA4cHg7IH1cbiAgLnNvY2lhbC1idG46aG92ZXIge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGxpbmVhcjsgfVxuICAuc2hhcmVfdG9vbHMgLnNvY2lhbC1idG4ge1xuICAgIG1hcmdpbjogMCAwIDAgNHB4OyB9XG4gIC5lbnRyeS1tZXRhLXdyYXBwZXIgLnNvY2lhbC1idG4ucm91bmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2ZDZkNmQ7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuZW50cnktbWV0YS13cmFwcGVyIC5zb2NpYWwtYnRuLnJvdW5kOmhvdmVyLCAuZW50cnktbWV0YS13cmFwcGVyIC5zb2NpYWwtYnRuLnJvdW5kOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgLnNvY2lhbC1idG4ucm91bmQge1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBsaW5lLWhlaWdodDogMzhweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuY2FudmFzLXBhbmVsIC5zb2NpYWwtYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogIzFkMWQxYjtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zb2NpYWwtYnRuIGltZyB7XG4gICAgd2lkdGg6IDE3cHg7IH1cblxuLnNvY2lhbHMtYmxvY2sge1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuc29jaWFscy1ibG9jayBhIHtcbiAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gICAgLnNvY2lhbHMtYmxvY2sgYTpob3ZlciwgLnNvY2lhbHMtYmxvY2sgYTphY3RpdmUsIC5zb2NpYWxzLWJsb2NrIGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuc29jaWFscy1ibG9jayBhIGkge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uZW52ZWxvcGUtYnRuIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmVudmVsb3BlLWJ0bi1ob3Zlcjpob3ZlciB7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7IH1cblxuLnJzcy1idG4ge1xuICBjb2xvcjogI2ZhOWIzOTsgfVxuXG4ucnNzLWJ0bi1ob3Zlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmE5YjM5ICFpbXBvcnRhbnQ7IH1cblxuLnlvdXR1YmUtYnRuIHtcbiAgY29sb3I6ICNiYjAwMDA7IH1cblxuLnlvdXR1YmUtYnRuLWhvdmVyOmhvdmVyIHtcbiAgY29sb3I6ICNiYjAwMDAgIWltcG9ydGFudDsgfVxuXG4uZ29vZ2xlLXBsdXMtYnRuIHtcbiAgY29sb3I6ICNkZDRiMzk7IH1cblxuLmdvb2dsZS1wbHVzLWJ0bi1ob3Zlcjpob3ZlciB7XG4gIGNvbG9yOiAjZGQ0YjM5ICFpbXBvcnRhbnQ7IH1cblxuLnR3aXR0ZXItYnRuIHtcbiAgY29sb3I6ICMwMGE2ZDQ7IH1cblxuLnR3aXR0ZXItYnRuLWhvdmVyOmhvdmVyIHtcbiAgY29sb3I6ICMwMGE2ZDQgIWltcG9ydGFudDsgfVxuXG4uZmFjZWJvb2stYnRuIHtcbiAgY29sb3I6ICM1MTY4YTQ7IH1cblxuLmZhY2Vib29rLWJ0bi1ob3Zlcjpob3ZlciB7XG4gIGNvbG9yOiAjNTE2OGE0ICFpbXBvcnRhbnQ7IH1cblxuLndoYXRzYXBwLWJ0biB7XG4gIGNvbG9yOiAjMmJiMzdjOyB9XG5cbi53aGF0c2FwcC1idG4taG92ZXI6aG92ZXIge1xuICBjb2xvcjogIzJiYjM3YyAhaW1wb3J0YW50OyB9XG5cbi5pbnN0YWdyYW0tYnRuIHtcbiAgY29sb3I6ICNhNjNmMWY7IH1cblxuLmluc3RhZ3JhbS1idG4taG92ZXI6aG92ZXIge1xuICBjb2xvcjogI2E2M2YxZiAhaW1wb3J0YW50OyB9XG5cbi5zbmFwY2hhdC1idG4ge1xuICBjb2xvcjogI2ZmZmMwMDtcbiAgdGV4dC1zaGFkb3c6IDAgMCAycHggIzg4ODg4ODsgfVxuXG4udGVsZWdyYW0tYnRuIHtcbiAgY29sb3I6ICMwMDg4Y2M7IH1cblxuLmxpbmtlZGluLWJ0biB7XG4gIGNvbG9yOiAjMDA3YmI2OyB9XG5cbi5waW50ZXJlc3QtYnRuIHtcbiAgY29sb3I6ICNjYjIwMjc7IH1cblxuLnNvY2lhbHMtYnRucy1iaWcge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgLnNvY2lhbHMtYnRucy1iaWcgLnNvY2lhbC1idG4ge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7IH1cbiAgICAuc29jaWFscy1idG5zLWJpZyAuc29jaWFsLWJ0bjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWMxYTJlOyB9XG5cbi5lbnZlbG9wZS1idG4tYmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5yc3MtYnRuLWJnOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhOWIzOSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ueW91dHViZS1idG4tYmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmIwMDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi55b3V0dWJlLWJ0bi1iZy1ob3Zlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiYjAwMDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmdwbHVzLWJ0bi1iZzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDRiMzkgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnR3aXR0ZXItYnRuLWJnOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4udHdpdHRlci1idG4tYmctaG92ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5mYWNlYm9vay1idG4tYmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTE2OGE0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5mYWNlYm9vay1idG4tYmctaG92ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTE2OGE0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5pbnN0YWdyYW0tYnRuLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2M2YxZiAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uaW5zdGFncmFtLWJ0bi1iZy1ob3Zlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNjNmMWYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmdvb2dsZS1wbHVzLWJ0bi1iZy1ob3Zlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDRiMzkgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnNuYXBjaGF0LWJ0bi1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZjMDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLnNuYXBjaGF0LWJ0bi1iZzpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmMwMDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4udGVsZWdyYW0tYnRuLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODhjYyAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAudGVsZWdyYW0tYnRuLWJnIC5pY29uLXRlbGVncmFtMTpiZWZvcmUge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC50ZWxlZ3JhbS1idG4tYmc6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDg4Y2M7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmxpbmtlZGluLWJ0bi1iZzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiYjYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnBpbnRlcmVzdC1idG4tYmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2IyMDI3ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi53aGF0c2FwcC1idG4tYmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmJiMzdjICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5pY29uLWVtYWlsOmJlZm9yZSB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi8qIC0tLS0tLS0gU29jaWFscyBCdG5zIFN0eWxlcyAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuI3JldHVybi10by10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICM2ZDZkNmQ7XG4gIG9wZWNpdHk6IDAuNztcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDM1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDM1cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwOyB9XG5cbiNyZXR1cm4tdG8tdG9wIGkge1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTNweDtcbiAgZm9udC1zaXplOiAxOXB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cblxuI3JldHVybi10by10b3A6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZWMxYTJlOyB9XG5cbiNyZXR1cm4tdG8tdG9wOmhvdmVyIGkge1xuICBjb2xvcjogI2ZmZjtcbiAgdG9wOiA1cHg7IH1cblxuLyogLS0tLS0tLS0gRmluYWwgc2F5IC0tLS0tLS0tLS0tLS0tLS0gRW5kIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYXJ0aWNsZS12Mixcbi5hcnRpY2xlLXYyICoge1xuICBmb250LWZhbWlseTogWWVrYW4sIFwiWWVrYW4gTnVtYmVyc1wiICFpbXBvcnRhbnQ7IH1cblxuLmFydGljbGUtdjMsXG4uYXJ0aWNsZS12MyAqIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBOYXNraCBBcmFiaWNcIiAhaW1wb3J0YW50OyB9XG5cbi5wZXJzaWFuLXRoZW1lIC5lbnRyeS1tZWRpYSAuY2FwdGlvbi1maWVsZCBwIHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5hcmFiaWMtdGhlbWUgLm5hdi1jb250YWluZXIgPiAubWVudSA+IGxpLm1lbnUtNjkyMSBhIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgYm9yZGVyOiAzcHggc29saWQgI2VjMWEyZTsgfVxuICAuYXJhYmljLXRoZW1lIC5uYXYtY29udGFpbmVyID4gLm1lbnUgPiBsaS5tZW51LTY5MjEgYTpob3ZlciB7XG4gICAgY29sb3I6ICNlYzFhMmU7IH1cblxuLmFyYWJpYy10aGVtZSAubmF2LWNvbnRhaW5lciA+IC5tZW51ID4gbGkuYWN0aXZlIGEge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYXJhYmljLXRoZW1lIC5uYXYtY29udGFpbmVyID4gLm1lbnUgPiBsaS5hY3RpdmUgYTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmluZHktdHYgbWFpbiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwIDA7IH1cblxuLmluZHktdHYgLmJnLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBjb2xvcjogd2hpdGU7IH1cbiAgLmluZHktdHYgLmJnLWdyYXkgLmFydGljbGUtaXRlbS10aXRsZSBhIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cblxuLmluZHktdHYgLmxvZ28tdHYgYSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBoZWlnaHQ6IDEwN3B4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDM4JTtcbiAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgI2JkYmRiZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvbG9nb3R2LnBuZz92Myk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmluZHktdHYgLmxvZ28tdHYgYSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDIzMHB4OyB9IH1cblxuLmluZHktdHYgLnNsaWNrLXRyYWNrIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uaW5keS10diAuY3VycmVudFZpZGVvID4gaDYge1xuICBmb250LXdlaWdodDogMzAwOyB9XG4gIC5pbmR5LXR2IC5jdXJyZW50VmlkZW8gPiBoNiBzcGFuIHtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5pbmR5LXR2IC51cE5leHRWaWRlb3MgPiBoNiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDMwcHggMCAxMHB4OyB9XG5cbi5pbmR5LXR2IC5tZWRpYS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZy10diB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaW5keS10diAubWVkaWEtdmlkZW8gLmFydGljbGUtaXRlbS1pbWctdHY6YmVmb3JlIHtcbiAgICB3aWR0aDogMjNweDtcbiAgICBoZWlnaHQ6IDIzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuNSk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYm90dG9tOiAwO1xuICAgIHRleHQtaW5kZW50OiAtM3B4O1xuICAgIG1hcmdpbjogMC41cmVtOyB9XG4gIC5pbmR5LXR2IC5tZWRpYS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZy10diBwLmR1cmF0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIG1hcmdpbjogMC41cmVtIDAuM3B4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICMyMjI7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICAgIHBhZGRpbmc6IDJweCA0cHg7IH1cblxuLmluZHktdHYgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkICNiZGJkYmQ7IH1cbiAgLmluZHktdHYgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbSAubWVkaWEtb2JqZWN0Lm1lZGlhLXZpZGVvIC5tZWRpYS1vYmplY3QtaW1nOmJlZm9yZSxcbiAgLmluZHktdHYgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbSAubWVkaWEtb2JqZWN0Lm1lZGlhLXZpZGVvIC5hcnRpY2xlLWl0ZW0taW1nLXR2OmJlZm9yZSB7XG4gICAgd2lkdGg6IDIzcHg7XG4gICAgaGVpZ2h0OiAyM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzNiwgMjYsIDQ2LCAwLjUpOyB9XG4gIC5pbmR5LXR2IC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0gLm1lZGlhLW9iamVjdC5tZWRpYS12aWRlbyAubWVkaWEtb2JqZWN0LWltZyBwLmR1cmF0aW9uLFxuICAuaW5keS10diAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtIC5tZWRpYS1vYmplY3QubWVkaWEtdmlkZW8gLmFydGljbGUtaXRlbS1pbWctdHYgcC5kdXJhdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBtYXJnaW46IDAuNXJlbSAwLjNweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjMjIyO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTNweDtcbiAgICBwYWRkaW5nOiAycHggNHB4OyB9XG5cbi5pbmR5LXR2IC5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmluZHktdHYgLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5pbmR5LXR2IC50di1zbGlkZXIgLmFydGljbGUtaXRlbSB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG5cbi5pbmR5LXR2IC50di1zbGlkZXIgLnNsaWNrLXByZXYsXG4uaW5keS10diAudHYtc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgdG9wOiAzOCU7IH1cblxuLmluZHktdHYgLnR2LXNsaWRlciAuc2xpY2stbmV4dCB7XG4gIGxlZnQ6IDI1cHg7XG4gIHJpZ2h0OiBhdXRvOyB9XG5cbi5pbmR5LXR2IC5wbGF5bGlzdFNsYWJBbmRUaXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkICNiZGJkYmQ7IH1cbiAgLmluZHktdHYgLnBsYXlsaXN0U2xhYkFuZFRpdGxlID4gaDQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDcwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9zbWFsbHR2bG9nby5wbmc/djMpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA1OXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAuaW5keS10diAucGxheWxpc3RTbGFiQW5kVGl0bGUgPiBoNCB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNTNweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgfSB9XG4gICAgLmluZHktdHYgLnBsYXlsaXN0U2xhYkFuZFRpdGxlID4gaDQgYSB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICMwMDA7IH1cblxuLyotLS0tLS0gUG9kY2FzdCBibGFjay0tLSovXG4ucG9kY2FzdC1pdGVtcyB7XG4gIGNvbG9yOiAjODg4ODg4O1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTsgfVxuICAucG9kY2FzdC1pdGVtcyAuaXRlbXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNWU4ZWE7XG4gICAgbWFyZ2luOiAycmVtIDA7IH1cbiAgICAucG9kY2FzdC1ibGFjayAucG9kY2FzdC1pdGVtcyAuaXRlbXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNjM2MzYzOyB9XG4gICAgLnBvZGNhc3QtaXRlbXMgLml0ZW1zIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnBvZGNhc3QtaXRlbXMgLml0ZW1zIC5hcnRpY2xlLWl0ZW0taW1nIC50YWdnZWQge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgICAgLnBvZGNhc3QtaXRlbXMgLml0ZW1zIC5hcnRpY2xlLWl0ZW0taW1nIC50YWdnZWQgYSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogLTVweCAwcHggMCA3cHggIzAwYjVmNiwgNXB4IDBweCAwIDdweCAjMDBiNWY2LCAwIDAgMCA3cHggIzAwYjVmNjtcbiAgICAgICAgICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYjVmNjtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjsgfVxuICAgICAgLnBvZGNhc3QtaXRlbXMgLml0ZW1zIC5hcnRpY2xlLWl0ZW0taW1nIC5vdmVybGF5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICAgIC5wb2RjYXN0LWl0ZW1zIC5pdGVtcyAuYXJ0aWNsZS1pdGVtLWltZyAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiA0MiU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgICAgICAgLnBvZGNhc3QtaXRlbXMgLml0ZW1zIC5hcnRpY2xlLWl0ZW0taW1nIC5hbGlnbi1jZW50ZXItbWlkZGxlIGEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAgIC5wb2RjYXN0LWl0ZW1zIC5pdGVtcyAuYXJ0aWNsZS1pdGVtLWltZyAuYWxpZ24tY2VudGVyLW1pZGRsZTpmaXJzdC1saW5lLFxuICAgICAgICAucG9kY2FzdC1pdGVtcyAuaXRlbXMgLmFydGljbGUtaXRlbS1pbWcgLmFsaWduLWNlbnRlci1taWRkbGUgLnNtYWxsLWxpbmsge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucG9kY2FzdC1pdGVtcyAuaW5mbyB7XG4gICAgbWFyZ2luOiAwIDFyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5wb2RjYXN0LWl0ZW1zIC5pbmZvIC5jYXB0aW9uIHtcbiAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44OyB9XG4gICAgLnBvZGNhc3QtaXRlbXMgLmluZm8gLmFjdGlvbnMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAzMHB4OyB9XG4gICAgICAucG9kY2FzdC1pdGVtcyAuaW5mbyAuYWN0aW9ucyBhIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTQ1cHg7XG4gICAgICAgIGhlaWdodDogMzdweDsgfVxuXG4ucG9kY2FzdC1ibGFjayAucGR0MCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLnBvZGNhc3QtYmxhY2sgLm1iMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ucG9kY2FzdC1ibGFjayAuYnJlYWRjcnVtYnMgbGkgYSB7XG4gIGNvbG9yOiAjODg4ODg4OyB9XG5cbi5wb2RjYXN0LWJsYWNrIC5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gIGNvbG9yOiAjODg4ODg4OyB9XG5cbi5wb2RjYXN0LWJsYWNrIC5icmVhZGNydW1icyBsaSAuYWN0aXZlIHtcbiAgY29sb3I6ICNlYzFhMmU7IH1cblxuLnBvZGNhc3QtYmxhY2sgbWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBvZGNhc3QtYmxhY2sgI21haW4tZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuICAucG9kY2FzdC1ibGFjayAjbWFpbi1mb290ZXIgLmZvb3Rlci1tZW51IGEge1xuICAgIGNvbG9yOiAjMjgxRTFFOyB9XG4gICAgLnBvZGNhc3QtYmxhY2sgI21haW4tZm9vdGVyIC5mb290ZXItbWVudSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWMxYTJlOyB9XG5cbi5wb2RjYXN0LWJsYWNrIGgzLFxuLnBvZGNhc3QtYmxhY2sgaDQsXG4ucG9kY2FzdC1ibGFjayBhIHtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLnBvZGNhc3QtYmxhY2sgaDM6aG92ZXIsXG4gIC5wb2RjYXN0LWJsYWNrIGg0OmhvdmVyLFxuICAucG9kY2FzdC1ibGFjayBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2VjMWEyZTsgfVxuXG4ucG9kY2FzdC1ibGFjayAuc2VjdGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5wb2RjYXN0LWJsYWNrIC5zZWN0aW9uLXRpdGxlIGE6bm90KC5zZWUtYWxsKSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAucG9kY2FzdC1ibGFjayAuc2VjdGlvbi10aXRsZSBhOm5vdCguc2VlLWFsbCk6aG92ZXIge1xuICAgICAgY29sb3I6ICNlYzFhMmU7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucG9kY2FzdC1ibGFjayAuYWN0aW9ucyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIC5wb2RjYXN0LWJsYWNrIC5hY3Rpb25zIGEge1xuICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4uZGF0ZTEge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICMzMzMzMzM7IH1cblxuLmhlYWR0eHQge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LWZhbWlseTogXCJJbmRlcGVuZGVudCBTYW5zXCI7IH1cblxuLmltZ0NvbW1lbnQge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uTWFpbkhlcm9JbWcge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogNTAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuTWFpbkhlcm9JbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLk1haW5IZXJvSW1nIHtcbiAgICAgIGhlaWdodDogNDAwcHg7IH0gfVxuICAuTWFpbkhlcm9JbWcuZ3JpZC14IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS1jb250ZW50Lk92ZXJUZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5mb3VyLWFydGljbGVzMSAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQuT3ZlclRleHQge1xuICAgICAgcG9zaXRpb246IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLk1haW5IZXJvU21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uZm9ybS1yZWdpc3RyYXRpb24gLmZvcm0tcmVnaXN0cmF0aW9uLWltZyB7XG4gIG1hcmdpbi1sZWZ0OiAxMXJlbTtcbiAgZGlzcGxheTogZmxleDsgfVxuICAuZm9ybS1yZWdpc3RyYXRpb24gLmZvcm0tcmVnaXN0cmF0aW9uLWltZyAuZm9ybS1yZWdpc3RyYXRpb24taW1nLWNhcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBib3R0b20sIGxlZnQgdG9wLCBjb2xvci1zdG9wKDEsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSksIGNvbG9yLXN0b3AoMCwgd2hpdGUpKTsgfVxuXG4uZm9ybS1yZWdpc3RyYXRpb24tZ3JvdXAge1xuICBwYWRkaW5nOiAwcHg7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmZvcm0tcmVnaXN0cmF0aW9uLWdyb3VwIC5mb3JtLXJlZ2lzdHJhdGlvbi1pbnB1dDpmb2N1cyB7XG4gICAgYm9yZGVyOiAycHggc29saWQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweDsgfVxuICAuZm9ybS1yZWdpc3RyYXRpb24tZ3JvdXAgLmZvcm0tcmVnaXN0cmF0aW9uLXN1Ym1pdC1idXR0b24ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBiYWNrZ3JvdW5kOiAjOTk5NTk2O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzIGxpbmVhcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2lkdGg6IDMwJTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZm9ybS1yZWdpc3RyYXRpb24tZ3JvdXAgLmZvcm0tcmVnaXN0cmF0aW9uLXN1Ym1pdC1idXR0b24ge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC5mb3JtLXJlZ2lzdHJhdGlvbi1ncm91cCAuZm9ybS1yZWdpc3RyYXRpb24tc3VibWl0LWJ1dHRvbjpob3ZlciwgLmZvcm0tcmVnaXN0cmF0aW9uLWdyb3VwIC5mb3JtLXJlZ2lzdHJhdGlvbi1zdWJtaXQtYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMjEwMjE7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuZm9ybS1yZWdpc3RyYXRpb24tZ3JvdXAgLmZvcm0tcmVnaXN0cmF0aW9uLXNvY2lhbC1idXR0b24ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYXV0bztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHdpZHRoOiA1NyU7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmZvcm0tcmVnaXN0cmF0aW9uLWdyb3VwIC5mb3JtLXJlZ2lzdHJhdGlvbi1zb2NpYWwtYnV0dG9uIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuZm9ybS1yZWdpc3RyYXRpb24tZ3JvdXAgLmZvcm0tcmVnaXN0cmF0aW9uLXNvY2lhbC1idXR0b246aG92ZXIsIC5mb3JtLXJlZ2lzdHJhdGlvbi1ncm91cCAuZm9ybS1yZWdpc3RyYXRpb24tc29jaWFsLWJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBob2xsb3c7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5mb3JtLXJlZ2lzdHJhdGlvbi1ncm91cCAuZm9ybS1yZWdpc3RyYXRpb24tc29jaWFsLWJ1dHRvbiAuZmEge1xuICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgLmZvcm0tcmVnaXN0cmF0aW9uLWdyb3VwIC5mb3JtLXJlZ2lzdHJhdGlvbi1tZW1iZXItc2lnbmluIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgLmZvcm0tcmVnaXN0cmF0aW9uLWdyb3VwIC5mb3JtLXJlZ2lzdHJhdGlvbi1tZW1iZXItc2lnbmluIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07IH1cbiAgLmZvcm0tcmVnaXN0cmF0aW9uLWdyb3VwIC5mb3JtLXJlZ2lzdHJhdGlvbi10ZXJtcyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAgIC5mb3JtLXJlZ2lzdHJhdGlvbi1ncm91cCAuZm9ybS1yZWdpc3RyYXRpb24tdGVybXMgYTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cbiAgICAuZm9ybS1yZWdpc3RyYXRpb24tZ3JvdXAgLmZvcm0tcmVnaXN0cmF0aW9uLXRlcm1zIGE6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuICAuZm9ybS1yZWdpc3RyYXRpb24tZ3JvdXAgLm9yLWRpdmlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDEuNXJlbSAwcHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhZGZlMTsgfVxuICAgIC5mb3JtLXJlZ2lzdHJhdGlvbi1ncm91cCAub3ItZGl2aWRlciBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgdG9wOiAtMTJweDtcbiAgICAgIHBhZGRpbmc6IDAgOHB4OyB9XG5cbi5pbWdsb2dvIHtcbiAgaGVpZ2h0OiAxNSU7IH1cblxuLmJ1dHRvbi5ob2xsb3cuYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAvKiBib3JkZXItcmFkaXVzOiA2cHg7ICovXG4gIGJvcmRlci1jb2xvcjogIzMzN2U4MTtcbiAgYm9yZGVyOiAycHggcHggc29saWQgIzMzN2U4MTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBjb2xvcjogIzMzN2U4MTtcbiAgLyogZm9udC13ZWlnaHQ6IGJvbGQ7ICovXG4gIGJvcmRlcjogMnB4IHNvbGlkO1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAvKiBhbGlnbi1pdGVtczogY2VudGVyOyAqL1xuICAvKiBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiBtZWRpdW07XG4gIGJvcmRlcjogMnB4IHNvbGlkICMzMzdlODE7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgY29sb3I6ICMzMzdlODE7XG4gIC8qIGRpc3BsYXk6IG5vbmU7ICovXG4gIGZvbnQtZmFtaWx5OiBJbmR5IFNhbnMsIHNhbnMtc2VyaWY7XG4gIC8qIGZvbnQtd2VpZ2h0OiA1MDA7ICovXG4gIC8qIG1hcmdpbi1yaWdodDogMTZweDsgKi9cbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHdpZHRoOiAxMDJweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgLyogcGFkZGluZy10b3A6IDJweDsqLyB9XG4gIFtkaXI9XCJydGxcIl0gLmJ1dHRvbi5ob2xsb3cuYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuXG4uaGVhZGVyMSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ3JpZC1nYXA6IDJweDsgfVxuXG4uaGVhZGVyX190ZXh0IHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIGZsZXg6IDE7XG4gIG1hcmdpbi1ib3R0b206IC05MXB4OyB9XG5cbi5zdmcge1xuICBmbGV4LXNocmluazogMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmhlYWRlcl9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xuICBmb250LWZhbWlseTogXCJJbmRlcGVuZGVudCBTZXJpZlwiO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBjb2xvcjogIzIyMjIyMjsgfVxuXG4uaW1hZ2UtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEzNXB4O1xuICBoZWlnaHQ6IDEzNXB4O1xuICBtYXJnaW4tbGVmdDogNnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5zZWN0aW9uLW5ld3NsZXR0ZXItc2lnbnVwX19mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG5cbi5zZWN0aW9uLW5ld3NsZXR0ZXItc2lnbnVwX19pbnB1dCB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLnNlY3Rpb24tbmV3c2xldHRlci1zaWdudXBfX2lucHV0IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuLmlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGZsZXgtZ3JvdzogMztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzhweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjYmRiZGJkO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIGNvbG9yOiAjNGU0ZTRlO1xuICBvdXRsaW5lOiBub25lO1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuaW5wdXQjb2ZmZXJzIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDsgfVxuXG4uc3VibWl0LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZGJkYmQ7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmbGV4LXNocmluazogMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZDogI2JkYmRiZDtcbiAgY29sb3I6ICNmZmY7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuNHMgbGluZWFyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAzMyU7XG4gIGhlaWdodDogMzdweDsgfVxuXG4ub2ZmZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIGZvbnQtZmFtaWx5OiBcIkluZGVwZW5kZW50IFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgY29sb3I6ICM0ZTRlNGU7IH1cblxuLm9mZmVycy1sYWJlbCAubG9nbyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm9mZmVycy1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnNlY3Rpb24tbmV3c2xldHRlci1zaWdudXAge1xuICBwYWRkaW5nOiAwIDAgMTJweCAxMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgI2QzZDNkMztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uY2hlY2tib3gge1xuICBoZWlnaHQ6IDMzcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC1zaHJpbms6IDA7IH1cblxuLmZvcm0tcmVnaXN0cmF0aW9uLXN1Ym1pdC1idXR0b24ge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNiZGJkYmQ7XG4gIGNvbG9yOiAjZmZmO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzIGxpbmVhcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDM4cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmZvcm0tcmVnaXN0cmF0aW9uLXN1Ym1pdC1idXR0b24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDBweDsgfSB9XG5cbmlucHV0I2VtYWlsLWlucHV0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGZsZXgtZ3JvdzogMztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzhweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjYmRiZGJkO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIGNvbG9yOiAjNGU0ZTRlO1xuICBvdXRsaW5lOiBub25lO1xuICBmb250LXNpemU6IDE2cHg7IH1cblxubGFiZWwge1xuICBmb250LWZhbWlseTogXCJJbmRlcGVuZGVudCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG4gIGNvbG9yOiAjNGU0ZTRlOyB9XG4gIGxhYmVsIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGNvbG9yOiAjNGU0ZTRlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuY2VsbC5tZWRpdW0tNi5sYXJnZS02IHtcbiAgICB3aWR0aDogMTEwJTsgfSB9XG5cbi5jZWxsLnNtYWxsLTYubWVkaXVtLTMge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLmF1ZGlvLXBsYXllciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnBvZGNhc3QtZmxvYXRlciAuYXVkaW8tcGxheWVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5hdWRpby1wbGF5ZXIgYXVkaW8ge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIFtkaXI9XCJydGxcIl0gLmF1ZGlvLXBsYXllciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuXG4ucG9kY2FzdC1mbG9hdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgei1pbmRleDogOTk7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb2RjYXN0LWZsb2F0ZXIge1xuICAgICAgcGFkZGluZzogMXJlbSA0cmVtOyB9IH1cbiAgLnBvZGNhc3QtZmxvYXRlciAuYnRuLXNoYXJlLXdyYXAgLmJ0bi1zaGFyZSB7XG4gICAgbWFyZ2luOiAwIDEwcHg7IH1cbiAgLnBvZGNhc3QtZmxvYXRlciAuY2xvc2UtYnRuIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIC5wb2RjYXN0LWZsb2F0ZXIgLmNsb3NlLWJ0biB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxM3B4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICBjb2xvcjogIzkwYTNhMjtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5wb2RjYXN0LWZsb2F0ZXItaXRlbSB7XG4gICAgcGFkZGluZzogMTBweCAwOyB9IH1cblxuLnBvZGNhc3QtZmxvYXRlci1pdGVtIGEge1xuICBjb2xvcjogIzI4MWUxZTsgfVxuXG4ucG9kY2FzdC1mbG9hdGVyLWl0ZW0gaW1nIHtcbiAgd2lkdGg6IDUwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlci1pdGVtIGltZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnBvZGNhc3QtZmxvYXRlci1pdGVtIGg2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAucG9kY2FzdC1mbG9hdGVyLWl0ZW0gaDYge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cblxuLnBhZ2UtbG9nbyB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3JkZXItYm90dG9tOiAwLjVweCBzb2xpZCAjYmRiZGJkO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnBhZ2UtbG9nbyBpbWcge1xuICAgIHdpZHRoOiAzMDBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS1sb2dvIGltZyB7XG4gICAgICAgIHdpZHRoOiA0MDBweDsgfSB9XG5cbi5zdWJzY3JpYmUtYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMjBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMTZweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zdWJzY3JpYmUtYm94IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiA2MHB4O1xuICAgICAgbWF4LXdpZHRoOiA3NDBweDtcbiAgICAgIHBhZGRpbmc6IDQwcHggMDsgfSB9XG4gIC5zdWJzY3JpYmUtYm94X19pbWcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuc3Vic2NyaWJlLWJveF9faW1nIGltZyB7XG4gICAgICB3aWR0aDogODBweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnN1YnNjcmliZS1ib3hfX2ltZyBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxODBweDsgfSB9XG4gIC5zdWJzY3JpYmUtYm94X19kZXNjIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnN1YnNjcmliZS1ib3hfX2Rlc2Mge1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgbWF4LXdpZHRoOiA0NDBweDsgfSB9XG4gICAgLnN1YnNjcmliZS1ib3hfX2Rlc2MgaDIge1xuICAgICAgY29sb3I6ICNlZTNlM2U7XG4gICAgICBmb250LXNpemU6IDM3cHg7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5zdWJzY3JpYmUtYm94X19kZXNjIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDQ1cHg7IH0gfVxuICAgIC5zdWJzY3JpYmUtYm94X19kZXNjIHAge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAuc3Vic2NyaWJlLWJveF9fZGVzYyBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgLnN1YnNjcmliZS1ib3hfX2Zvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5zdWJzY3JpYmUtYm94X19mb3JtIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZ2FwOiAxMHB4OyB9IH1cbiAgICAuc3Vic2NyaWJlLWJveF9fZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAuc3Vic2NyaWJlLWJveF9fZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgIHdpZHRoOiAxODFweDtcbiAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnN1YnNjcmliZS1ib3hfX2Zvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgIC5zdWJzY3JpYmUtYm94X19mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgcGFkZGluZzogN3B4IDE1cHg7XG4gICAgICAgICAgd2lkdGg6IDMwMHB4OyB9IH1cbiAgICAuc3Vic2NyaWJlLWJveF9fZm9ybSBidXR0b24sXG4gICAgLnN1YnNjcmliZS1ib3hfX2Zvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWUzZTNlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cbiAgICAgIC5zdWJzY3JpYmUtYm94X19mb3JtIGJ1dHRvbjpob3ZlcixcbiAgICAgIC5zdWJzY3JpYmUtYm94X19mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5zdWJzY3JpYmUtYm94X19mb3JtIGJ1dHRvbixcbiAgICAgICAgLnN1YnNjcmliZS1ib3hfX2Zvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDdweCAyMHB4OyB9IH1cblxuLmhlcm8tYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmhlcm8tYXJlYSAuYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIC5zaXplciB7XG4gICAgcGFkZGluZy10b3A6IDU1LjclOyB9XG4gIC5oZXJvLWFyZWEgW2RhdGEtbWVkaWE9XCJqd1ZpZGVvXCJdIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIC5oZXJvLWFyZWEgW2RhdGEtbWVkaWE9XCJqd1ZpZGVvXCJdIHtcbiAgICAgICAgaGVpZ2h0OiAyMjBweDsgfSB9XG4gIC5oZXJvLWFyZWFfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5bZGF0YS1tZWRpYT1cImp3VmlkZW9cIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgW2RhdGEtbWVkaWE9XCJqd1ZpZGVvXCJdIGltZyxcbiAgW2RhdGEtbWVkaWE9XCJqd1ZpZGVvXCJdIC5zaXplciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICBbZGF0YS1tZWRpYT1cImp3VmlkZW9TbVwiXSBpbWcsXG4gIFtkYXRhLW1lZGlhPVwiandWaWRlb1NtXCJdIC5zaXplciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmVudHJ5LW1ldGEtZmllbGQuZW50cnktbWV0YS1hdXRob3Ige1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmRhdGUxIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjMzMzMzMzOyB9XG5cbi5oZWFkdHh0IHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiSW5kZXBlbmRlbnQgU2Fuc1wiOyB9XG5cbi5pbWdDb21tZW50IHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLmJsb2NrLWNvbnRhaW5lciA+IC5tcHUtd2lkdGgge1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMjUwcHg7IH1cblxuLmltZ0NvbW1lbnQgPiBwIHtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiB0aGluO1xuICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07IH1cblxuLnBob3RvX2dhbGxlcnkgZmlnY2FwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi5waG90b19nYWxsZXJ5IGZpZ2NhcHRpb24ge1xuICBib3JkZXItcmlnaHQ6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IHRoaW47XG4gIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuXG5ib2R5LnVyZHUtdGhlbWUge1xuICBmb250LXNpemU6IDIwcHg7IH1cblxuLyogYXJhYmljIG9ubHkgKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWluLWhlYWRlcl9fbmF2YmFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA0MnB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1haW4taGVhZGVyX19uYXZiYXIgLm5hdi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1haW4taGVhZGVyX19uYXZiYXIgLm5hdi1jb250YWluZXIgPiAubWVudSB7XG4gICAgcG9zaXRpb246IGluaXRpYWw7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFpbi1oZWFkZXJfX25hdmJhciAubmF2LWNvbnRhaW5lciA+IC5tZW51ID4gbGkge1xuICAgIGhlaWdodDogNDJweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWluLWhlYWRlcl9fbmF2YmFyIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaSA+IGEge1xuICAgIHBvc2l0aW9uOiBpbml0aWFsOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1haW4taGVhZGVyX19uYXZiYXIgLnN1Yi1tZWdhLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7IH0gfVxuXG4ubWFpbi10aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgI2JkYmRiZDtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFpbi10aXRsZSBoMSB7XG4gICAgICBmb250LXNpemU6IDgwcHg7IH0gfVxuICAubWFpbi10aXRsZSBoMSBhIHtcbiAgICBjb2xvcjogIzI4MWUxZTsgfVxuXG4uY2FyZC1ncmlkcyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLmNhcmQtZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuY2FyZC1ncmlkX19pbWcge1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5jYXJkLWdyaWRfX2NvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4OyB9XG4gICAgLmNhcmQtZ3JpZF9fY29udGVudCBwIHNwYW4ge1xuICAgICAgY29sb3I6ICNFQzFBMkU7IH1cblxuLyogZW5kIGFyYWJpYyBvbmx5ICovXG4iLCJAaW1wb3J0IFwidmFyaWFibGVzXCI7XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJyN7JGljb21vb24tZm9udC1mYW1pbHl9JztcbiAgc3JjOlxuICAgICAgICAgIHVybCgnI3skaWNvbW9vbi1mb250LXBhdGh9LyN7JGljb21vb24tZm9udC1mYW1pbHl9LndvZmYyP3M0ZHNveW54enonKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICAgdXJsKCcjeyRpY29tb29uLWZvbnQtcGF0aH0vI3skaWNvbW9vbi1mb250LWZhbWlseX0udHRmP3M0ZHNveW54enonKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICAgdXJsKCcjeyRpY29tb29uLWZvbnQtcGF0aH0vI3skaWNvbW9vbi1mb250LWZhbWlseX0ud29mZj9zNGRzb3lueHp6JykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICAgdXJsKCcjeyRpY29tb29uLWZvbnQtcGF0aH0vI3skaWNvbW9vbi1mb250LWZhbWlseX0uc3ZnP3M0ZHNveW54enojI3skaWNvbW9vbi1mb250LWZhbWlseX0nKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG59XG5cbi5pY29tb29uLWljb24ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJyN7JGljb21vb24tZm9udC1mYW1pbHl9JyAhaW1wb3J0YW50O1xuICBzcGVhazogbmV2ZXI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cblxuLmljb24tZW1haWwge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZW1haWw7ICAgICBcbiAgICBjb2xvcjogIzZkNmQ2ZDtcbiAgfVxufVxuLmljb24tZmIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZmI7ICAgICBcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuLmljb24taG9tZS0yIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWhvbWUtMjsgXG4gIH1cbn1cbi5pY29uLXByaW50IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXByaW50OyBcbiAgfVxufVxuLmljb24td2hhdHNhcHAyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXdoYXRzYXBwMjsgICAgIFxuICAgIGNvbG9yOiAjNmQ2ZDZkO1xuICB9XG59XG4uaWNvbi14IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXg7ICAgICBcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuLmljb24tdHdpdHRlci14IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXR3aXR0ZXIteDsgXG4gIH1cbn1cbi5pY29uLXByaW50ZXIxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXByaW50ZXIxOyBcbiAgfVxufVxuLmljb24taG9tZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1ob21lOyBcbiAgfVxufVxuLmljb24taW5zdGFncmFtMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1pbnN0YWdyYW0xOyBcbiAgfVxufVxuLmljb24tc25hcGNoYXQtZ2hvc3Qge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tc25hcGNoYXQtZ2hvc3Q7IFxuICB9XG59XG4uaWNvbi15b3V0dWJlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXlvdXR1YmU7IFxuICB9XG59XG4uaWNvbi1jYW1lcmEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tY2FtZXJhOyBcbiAgfVxufVxuLmljb24td2hhdHNhcHAge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24td2hhdHNhcHA7IFxuICB9XG59XG4uaWNvbi1zcGhlcmUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tc3BoZXJlOyBcbiAgfVxufVxuLmljb24tdGVsZWdyYW0ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdGVsZWdyYW07IFxuICB9XG59XG4uaWNvbi1wcmludGVyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXByaW50ZXI7IFxuICB9XG59XG4uaWNvbi1saW5rZWRpbiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1saW5rZWRpbjsgXG4gIH1cbn1cbi5pY29uLWdvb2dsZS1wbHVzIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWdvb2dsZS1wbHVzOyBcbiAgfVxufVxuLmljb24tcGludGVyZXN0IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXBpbnRlcmVzdDsgXG4gIH1cbn1cbi5pY29uLWluc3RhZ3JhbSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1pbnN0YWdyYW07IFxuICB9XG59XG4uaWNvbi13aGF0c2FwcDEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24td2hhdHNhcHAxOyBcbiAgfVxufVxuLmljb24tZGlzbGlrZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1kaXNsaWtlOyBcbiAgfVxufVxuLmljb24tbGlrZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1saWtlOyBcbiAgfVxufVxuLmljb24tZW52ZWxvcGUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZW52ZWxvcGU7IFxuICB9XG59XG4uaWNvbi1jb21tZW50IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNvbW1lbnQ7IFxuICB9XG59XG4uaWNvbi11ay1mbGFnIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXVrLWZsYWc7IFxuICB9XG59XG4uaWNvbi11cy1mbGFnIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXVzLWZsYWc7IFxuICB9XG59XG4uaWNvbi1nb29nbGUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZ29vZ2xlOyBcbiAgfVxufVxuLmljb24tdHdpdHRlciB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi10d2l0dGVyOyBcbiAgfVxufVxuLmljb24tZmFjZWJvb2sge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZmFjZWJvb2s7IFxuICB9XG59XG4uaWNvbi1hcnJvdy1kb3duMiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1kb3duMjsgXG4gIH1cbn1cbi5pY29uLWFycm93LWxlZnQyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWxlZnQyOyBcbiAgfVxufVxuLmljb24tYXJyb3ctcmlnaHQyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXJpZ2h0MjsgXG4gIH1cbn1cbi5pY29uLWFycm93LXVwMiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy11cDI7IFxuICB9XG59XG4uaWNvbi1hcnJvdy1kb3duIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWRvd247IFxuICB9XG59XG4uaWNvbi1hcnJvdy1sZWZ0IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWxlZnQ7IFxuICB9XG59XG4uaWNvbi1hcnJvdy11cCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy11cDsgXG4gIH1cbn1cbi5pY29uLWFycm93LXJpZ2h0IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXJpZ2h0OyBcbiAgfVxufVxuLmljb24tcGxheSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wbGF5OyBcbiAgfVxufVxuLmljb24tY2xvc2Uge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tY2xvc2U7IFxuICB9XG59XG4uaWNvbi11c2VyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXVzZXI7IFxuICB9XG59XG4uaWNvbi1oYW1idXJnZXIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24taGFtYnVyZ2VyOyBcbiAgfVxufVxuLmljb24tc2VhcmNoIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXNlYXJjaDsgXG4gIH1cbn1cbi5pY29uLXNvdW5kLXdhdmUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tc291bmQtd2F2ZTsgXG4gIH1cbn1cblxuXG4iLCIkaWNvbW9vbi1mb250LWZhbWlseTogXCJpY29tb29uXCIgIWRlZmF1bHQ7XG4kaWNvbW9vbi1mb250LXBhdGg6IFwiLi4vZm9udHNcIiAhZGVmYXVsdDtcblxuXG4kaWNvbi1lbWFpbDogXCJcXGU5MjlcIjtcbiRpY29uLWZiOiBcIlxcZTkyNFwiO1xuJGljb24taG9tZS0yOiBcIlxcZTkyNVwiO1xuJGljb24tcHJpbnQ6IFwiXFxlOTI2XCI7XG4kaWNvbi13aGF0c2FwcDI6IFwiXFxlOTI3XCI7XG4kaWNvbi14OiBcIlxcZTkyYVwiO1xuJGljb24tdHdpdHRlci14OiBcIlxcZTkyMlwiO1xuJGljb24tcHJpbnRlcjE6IFwiXFxlOTIzXCI7XG4kaWNvbi1ob21lOiBcIlxcZTkyMVwiO1xuJGljb24taW5zdGFncmFtMTogXCJcXGU5MWZcIjtcbiRpY29uLXNuYXBjaGF0LWdob3N0OiBcIlxcZTkxNlwiO1xuJGljb24teW91dHViZTogXCJcXGU5MTdcIjtcbiRpY29uLWNhbWVyYTogXCJcXGU5MTJcIjtcbiRpY29uLXdoYXRzYXBwOiBcIlxcZTkyOFwiO1xuJGljb24tc3BoZXJlOiBcIlxcZTkyMFwiO1xuJGljb24tdGVsZWdyYW06IFwiXFxlOTFkXCI7XG4kaWNvbi1wcmludGVyOiBcIlxcZTkxY1wiO1xuJGljb24tbGlua2VkaW46IFwiXFxlOTE4XCI7XG4kaWNvbi1nb29nbGUtcGx1czogXCJcXGU5MTlcIjtcbiRpY29uLXBpbnRlcmVzdDogXCJcXGU5MWFcIjtcbiRpY29uLWluc3RhZ3JhbTogXCJcXGU5MWJcIjtcbiRpY29uLXdoYXRzYXBwMTogXCJcXGU5MTVcIjtcbiRpY29uLWRpc2xpa2U6IFwiXFxlOTEwXCI7XG4kaWNvbi1saWtlOiBcIlxcZTkxMVwiO1xuJGljb24tZW52ZWxvcGU6IFwiXFxlOTEzXCI7XG4kaWNvbi1jb21tZW50OiBcIlxcZTkxNFwiO1xuJGljb24tdWstZmxhZzogXCJcXGU2MTVcIjtcbiRpY29uLXVzLWZsYWc6IFwiXFxlNjE2XCI7XG4kaWNvbi1nb29nbGU6IFwiXFxlOTAwXCI7XG4kaWNvbi10d2l0dGVyOiBcIlxcZTkwMVwiO1xuJGljb24tZmFjZWJvb2s6IFwiXFxlOTAyXCI7XG4kaWNvbi1hcnJvdy1kb3duMjogXCJcXGU5MDNcIjtcbiRpY29uLWFycm93LWxlZnQyOiBcIlxcZTkwNFwiO1xuJGljb24tYXJyb3ctcmlnaHQyOiBcIlxcZTkwNVwiO1xuJGljb24tYXJyb3ctdXAyOiBcIlxcZTkwNlwiO1xuJGljb24tYXJyb3ctZG93bjogXCJcXGU5MDdcIjtcbiRpY29uLWFycm93LWxlZnQ6IFwiXFxlOTA4XCI7XG4kaWNvbi1hcnJvdy11cDogXCJcXGU5MDlcIjtcbiRpY29uLWFycm93LXJpZ2h0OiBcIlxcZTkwYVwiO1xuJGljb24tcGxheTogXCJcXGU5MGJcIjtcbiRpY29uLWNsb3NlOiBcIlxcZTkwY1wiO1xuJGljb24tdXNlcjogXCJcXGU5MGRcIjtcbiRpY29uLWhhbWJ1cmdlcjogXCJcXGU5MGVcIjtcbiRpY29uLXNlYXJjaDogXCJcXGU5MGZcIjtcbiRpY29uLXNvdW5kLXdhdmU6IFwiXFxlOTFlXCI7XG5cbiIsIiRmb250LXBhdGg6IFwiLi4vZm9udHNcIjtcblxuQGltcG9ydCAnaWNvbW9vbic7XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0Ryb2lkQXJhYmljS3VmaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vRHJvaWRLdWZpLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZm9udC1wYXRofS9Ecm9pZEt1ZmktUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgnI3skZm9udC1wYXRofS9Ecm9pZEt1ZmktUmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0Ryb2lkQXJhYmljS3VmaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vRHJvaWRLdWZpLUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZm9udC1wYXRofS9Ecm9pZEt1ZmktQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgnI3skZm9udC1wYXRofS9Ecm9pZEt1ZmktQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0FiZG8gTWFzdGVyJztcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1Cb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItRXh0cmFCb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItRXh0cmFCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLUV4dHJhQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXInO1xuICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLUV4dHJhTGlnaHQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1FeHRyYUxpZ2h0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLUV4dHJhTGlnaHQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICBmb250LXdlaWdodDogMjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQWJkbyBNYXN0ZXIgb3V0bGluZSc7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXJvdXRsaW5lLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXJvdXRsaW5lLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyb3V0bGluZS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3RlciBCb29rJztcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1Cb29rLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItQm9vay53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1Cb29rLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0FiZG8gTWFzdGVyJztcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1CbGFjay53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLUJsYWNrLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLUJsYWNrLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0FiZG8gTWFzdGVyJztcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1EZW1pQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLURlbWlCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLURlbWlCb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0FiZG8gTWFzdGVyIE5vcm1hbCc7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItTm9ybWFsLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItTm9ybWFsLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLU5vcm1hbC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItTGlnaHQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1MaWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItSGVhdnkud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1IZWF2eS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1IZWF2eS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItTWVkaXVtLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItTWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLU1lZGl1bS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItVGhpbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLVRoaW4ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItVGhpbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItU2VtaUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1TZW1pQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQWJkb01hc3Rlci1TZW1pQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBYmRvIE1hc3Rlcic7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItUmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9BYmRvTWFzdGVyLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0FiZG9NYXN0ZXItUmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG4iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi40LjNcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIERlcGVuZGVuY2llc1xuQGltcG9ydCAnLi4vX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvY29udGFpbic7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gU2V0dGluZ3Ncbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gU2FzcyB1dGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIEdsb2JhbCB2YXJpYWJsZXMgYW5kIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2Vcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcblxuICBAaWYgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuICB9XG5cbiAgQGlmICRwcm90b3R5cGUge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG4gIH1cbn1cbiIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxuQGZ1bmN0aW9uIF9ub3JtYWxpemUtaW5jbHVkZSgkc2VjdGlvbiwgJGV4Y2x1ZGU6IG51bGwpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgZ2xvYmFsIHZhcmlhYmxlcyBuZWVkZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6ICgpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogKCkgIWdsb2JhbDtcbiAgfVxuICAvLyBTaW5jZSB3ZSBhcmUgZ2l2ZW4gMiBwYXJhbWV0ZXJzLCBzZXQgdGhlIGdsb2JhbCB2YXJpYWJsZXMuXG4gIEBpZiAkZXhjbHVkZSAhPSBudWxsIHtcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XG4gICAgLy8gU2FzcyBkb2Vzbid0IGhhdmUgc3RhdGljIHZhcmlhYmxlcywgc28gdGhlIHdvcmstYXJvdW5kIGlzIHRvIHN0dWZmIHRoZXNlXG4gICAgLy8gdmFsdWVzIGludG8gZ2xvYmFsIHZhcmlhYmxlcyBzbyB3ZSBjYW4gYWNjZXNzIHRoZW0gaW4gZnV0dXJlIGNhbGxzLlxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogaWYodHlwZS1vZigkZXhjbHVkZSkgPT0gJ2xpc3QnLCAkZXhjbHVkZSwgKCRleGNsdWRlKSkgIWdsb2JhbDtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkc2VjdGlvbiBpcyBpbiB0aGUgJGluY2x1ZGUgbGlzdC5cbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cbiAgQGVsc2UgaWYgbm90IGluZGV4KCRfbm9ybWFsaXplLWV4Y2x1ZGUsICRzZWN0aW9uKSBhbmQgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgYWxsKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbkBtaXhpbiBub3JtYWxpemUoJGluY2x1ZGU6IChhbGwpLCAkZXhjbHVkZTogKCkpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXG4gICRpbml0OiBfbm9ybWFsaXplLWluY2x1ZGUoJGluY2x1ZGUsICRleGNsdWRlKTtcblxuICAvLyBJZiB3ZSd2ZSBjdXN0b21pemVkIGFueSBmb250IHZhcmlhYmxlcywgd2UnbGwgbmVlZCBleHRyYSBwcm9wZXJ0aWVzLlxuICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHhcbiAgICBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgxLWZvbnQtc2l6ZSAhPSAyICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuXG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxuICAgICAgICAvLyB3aGVuIHJvb3QgZm9udC1zaXplIGlzIHNldCB3aXRoIHB4IG9yIGVtLlxuICAgICAgICBmb250LXNpemU6ICgkYmFzZS1mb250LXNpemUgLyAxNnB4KSAqIDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBhOmFjdGl2ZSxcbiAgICBhOmhvdmVyIHtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBzZWxlY3QgeyAvKiAxICovXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG5cbiAgICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovXG5cbiAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cblxuICAgIGlucHV0IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5cbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG5cbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAgICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gVmVydGljYWwgUmh5dGhtXG4vL1xuLy8gVGhpcyBpcyB0aGUgbWluaW1hbCBhbW91bnQgb2YgY29kZSBuZWVkZWQgdG8gY3JlYXRlIHZlcnRpY2FsIHJoeXRobSBpbiBvdXJcbi8vIENTUy4gSWYgeW91IGFyZSBsb29raW5nIGZvciBhIHJvYnVzdCBzb2x1dGlvbiwgbG9vayBhdCB0aGUgZXhjZWxsZW50IFR5cGV5XG4vLyBsaWJyYXJ5LiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9qcHRhcmFudG8vdHlwZXlcblxuQGZ1bmN0aW9uIG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSwgJHVuaXQ6ICRiYXNlLXVuaXQpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSBweCB7XG4gICAgQGVycm9yIFwiVGhlIG5vcm1hbGl6ZSB2ZXJ0aWNhbC1yaHl0aG0gbW9kdWxlIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgQGlmICR1bml0ID09IHJlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRyZWxhdGl2ZS10bykgKiAxZW07XG4gIH1cbiAgQGVsc2UgeyAvLyAkdW5pdCA9PSBweFxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG59XG5cbkBtaXhpbiBub3JtYWxpemUtZm9udC1zaXplKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncHgnIHtcbiAgICBAZXJyb3IgXCJub3JtYWxpemUtZm9udC1zaXplKCkgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBmb250LXNpemU6IG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLXJoeXRobSgkcHJvcGVydHksICR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gICR2YWx1ZS1saXN0OiAkdmFsdWVzO1xuICAkc2VwOiBzcGFjZTtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcbiAgICAkc2VwOiBsaXN0LXNlcGFyYXRvcigkdmFsdWVzKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbHVlLWxpc3Q6IGFwcGVuZCgoKSwgJHZhbHVlcyk7XG4gIH1cblxuICAkbm9ybWFsaXplZC12YWx1ZXM6ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlLWxpc3Qge1xuICAgIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAkdmFsdWUgIT0gMCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqIG5vcm1hbGl6ZS1yaHl0aG0oJGJhc2UtbGluZS1oZWlnaHQsICRyZWxhdGl2ZS10byk7XG4gICAgfVxuICAgICRub3JtYWxpemVkLXZhbHVlczogYXBwZW5kKCRub3JtYWxpemVkLXZhbHVlcywgJHZhbHVlLCAkc2VwKTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICRub3JtYWxpemVkLXZhbHVlcztcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1tYXJnaW4oJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShtYXJnaW4sICR2YWx1ZXMsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJG1pbi1saW5lLXBhZGRpbmc6IDJweCkge1xuICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRiYXNlLWxpbmUtaGVpZ2h0KTtcbiAgLy8gSWYgbGluZXMgYXJlIGNyYW1wZWQgaW5jbHVkZSBzb21lIGV4dHJhIGxlYWRpbmcuXG4gIEBpZiAoJGxpbmVzICogJGJhc2UtbGluZS1oZWlnaHQgLSAkZm9udC1zaXplKSA8ICgkbWluLWxpbmUtcGFkZGluZyAqIDIpIHtcbiAgICAkbGluZXM6ICRsaW5lcyArIDE7XG4gIH1cbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShsaW5lLWhlaWdodCwgJGxpbmVzLCAkZm9udC1zaXplKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZywgZm9yY2UtcHNldWRvLW5lc3RpbmcsIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kc2Vjb25kYXJ5LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBnZXQtY29sb3Ioc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogZ2V0LWNvbG9yKHdhcm5pbmcpO1xuJGFsZXJ0LWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIExvYWRzIG5vcm1hbGl6ZS5jc3MuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLXpmLW5vcm1hbGl6ZSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZSgpO1xufVxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gY3VzdG9tIGdsb2JhbCB2YXJpYWJsZXNcblxuLy8gRm9udCBWYXJpYWJsZXNcbiRmb250LXByaW1hcnk6IFwiSW5kZXBlbmRlbnQgU2VyaWZcIiAhZGVmYXVsdDtcbiRmb250LXNlY29uZGFyeTogXCJJbmRlcGVuZGVudCBTYW5zXCIgIWRlZmF1bHQ7XG5cbi8vIGZvbnQgc2l6ZXNcbiRmb250LXh4c21hbGw6IDEwcHggIWRlZmF1bHQ7XG4kZm9udC14c21hbGw6IDExcHggIWRlZmF1bHQ7XG4kZm9udC1zbWFsbDE6IDEycHggIWRlZmF1bHQ7XG4kZm9udC1zbWFsbDI6IDEzcHggIWRlZmF1bHQ7XG4kZm9udC1zbWFsbDM6IDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zbWFsbDQ6IDE1cHggIWRlZmF1bHQ7XG4kZm9udC1tZWRpdW0xOiAxNnB4ICFkZWZhdWx0O1xuJGZvbnQtbWVkaXVtMjogMTdweCAhZGVmYXVsdDtcbiRmb250LW1lZGl1bTM6IDE4cHggIWRlZmF1bHQ7XG4kZm9udC1tZWRpdW00OiAxOXB4ICFkZWZhdWx0O1xuJGZvbnQtbGFyZ2UxOiAyMHB4ICFkZWZhdWx0O1xuJGZvbnQtbGFyZ2UyOiAyMXB4ICFkZWZhdWx0O1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDk4NCk7XG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogI2VjMWEyZSxcbiAgc2Vjb25kYXJ5OiAjMjgxRTFFLFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbik7XG4kd2hpdGUtc21va2U6ICNmNWY1ZjU7XG4kc21va2U6ICNmMmYyZjI7XG4kZ2FpbnNib3JvOiAjZDZkNmQ2O1xuJHNpbHZlcjogI2I4YjhiODtcbiRsaWdodC1ncmF5OiAjZGFkZmUxO1xuJGdyYXk6ICNjY2NjY2M7XG4kbWVkaXVtLWdyYXk6ICM4ODg4ODg7XG4kZHVzdHktZ3JheTogIzk5OTk5OTtcbiRlbXBlcm9yOiAjNTU1NTU1O1xuJGRhcmstZ3JheTogIzMzMzMzMztcbiRibGFjazogIzAwMDAwMDtcbiR3aGl0ZTogI2ZmZmZmZjtcblxuJGJsYWNrLTkwMDogIzNEM0QzRDtcbiRibGFjay00MDA6ICM4ODg4ODg7XG4kYmxhY2stNjAwOiAjNUQ1RDVEO1xuJGluZHktcmVkOiAjRUMxQTJFO1xuJGdyZXlzY2FsZS1ncmV5LTcwOiAjNjQ2NDY0O1xuJHByaW1hcnktZ3JhcGhpdGU6ICMyMTIxMjE7XG5cbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICMyODFFMUU7XG4kYm9keS1mb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSwgVGFob21hLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuJGRlZmF1bHQtZGlyZWN0aW9uOiAgaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PXJ0bCwgcmlnaHQsIGxlZnQpO1xuJG9wcG9zaXRlLWRpcmVjdGlvbjogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PXJ0bCwgbGVmdCwgcmlnaHQpO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBwb2ludGVyO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcbiRwcmludC1ocmVmczogZmFsc2U7XG5cbiRmYWNlYm9vazogIzUxNjhhNDtcbiR0d2l0dGVyOiAjMDBhNmQ0O1xuJGdwbHVzOiAjZGQ0YjM5O1xuJHBpbnRlcmVzdDogI2NiMjAyNztcbiRyc3M6ICNmYTliMzk7XG4keW91dHViZTogI2JiMDAwMDtcbiRpbnN0YWdyYW06ICNhNjNmMWY7XG4kbGlua2VkaW46ICMwMDdiYjY7XG4kZW52ZWxvcGU6ICRibGFjaztcbiR3aGF0c2FwcDogIzJiYjM3YztcbiRzbmFwY2hhdDogI2ZmZmMwMDtcbiR0ZWxlZ3JhbTogIzAwODhjYztcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDc2OHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiA3MDAgIWRlZmF1bHQ7XG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlO1xuJGhlYWRlci1jb2xvcjogaW5oZXJpdDtcbiRoZWFkZXItbGluZWhlaWdodDogMS4yICFkZWZhdWx0O1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAzMiksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyOCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIGxhcmdlOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAzOCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAzMiksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAyNiksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyMiksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNSksXG4gICksXG4pICFkZWZhdWx0O1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFuY2hvci1jb2xvci1ob3ZlcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAyMCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgMC41cmVtIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuM3JlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogZmFsc2U7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJ+KAuic7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICfigLonO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKTtcblxuLy8gMTguIERyb3Bkb3duIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50O1xuXG4vLyAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDY7XG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlO1xuXG4vLyAyMC4gRm9ybXNcbi8vIC0tLS0tLS0tLVxuXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDAgc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2s7XG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMi4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuXG4vLyAyMy4gTWVudVxuLy8gLS0tLS0tLS1cblxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW07XG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZi1jYW52YXMtd2lkdGg6IG1hcC1nZXQoJG9mZmNhbnZhcy1zaXplcywgc21hbGwpO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjYuIE9yYml0XG4vLyAtLS0tLS0tLS1cblxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNy4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG5cbi8vIDI4LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvZ3Jlc3MtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6IChcbiAgZG93bixcbiAgdXAsXG4gIHJpZ2h0LFxuICBsZWZ0XG4pO1xuJHByb3RvdHlwZS1hcnJvdy1zaXplOiAwLjQzNzVyZW07XG4kcHJvdG90eXBlLWFycm93LWNvbG9yOiAkYmxhY2s7XG5cbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG5cbi8vIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItbm9uZS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG5cbi8vIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXJlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci13aWR0aDogcmVtLWNhbGMoMSk7XG4kcHJvdG90eXBlLWJvcmRlci10eXBlOiBzb2xpZDtcbiRwcm90b3R5cGUtYm9yZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWRpc3BsYXk6IChcbiAgaW5saW5lLFxuICBpbmxpbmUtYmxvY2ssXG4gIGJsb2NrLFxuICB0YWJsZSxcbiAgdGFibGUtY2VsbFxuKTtcblxuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDQpO1xuJHByb3RvdHlwZS1mb250LW5vcm1hbDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWxpc3QtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKFxuICBkaXNjLFxuICBjaXJjbGUsXG4gIHNxdWFyZVxuKTtcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS1vcmRlcmVkOiAoXG4gIGRlY2ltYWwsXG4gIGxvd2VyLWFscGhhLFxuICBsb3dlci1sYXRpbixcbiAgbG93ZXItcm9tYW4sXG4gIHVwcGVyLWFscGhhLFxuICB1cHBlci1sYXRpbixcbiAgdXBwZXItcm9tYW5cbik7XG5cbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLW92ZXJmbG93OiAoXG4gIHZpc2libGUsXG4gIGhpZGRlbixcbiAgc2Nyb2xsXG4pO1xuXG4vLyAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcG9zaXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1wb3NpdGlvbjogKFxuICBzdGF0aWMsXG4gIHJlbGF0aXZlLFxuICBhYnNvbHV0ZSxcbiAgZml4ZWRcbik7XG4kcHJvdG90eXBlLXBvc2l0aW9uLXotaW5kZXg6IDk3NTtcblxuLy8gMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1yb3VuZGVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG5cbi8vIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNlcGFyYXRvci1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbjogY2VudGVyO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2hhZG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLDAsMCwuMTYpLFxuICAgICAgICAgICAgICAgICAgICAgICAwIDJweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpO1xuXG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaXppbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zaXppbmc6IChcbiAgd2lkdGgsXG4gIGhlaWdodFxuKTtcbiRwcm90b3R5cGUtc2l6ZXM6IChcbiAgMjU6IDI1JSxcbiAgNTA6IDUwJSxcbiAgNzU6IDc1JSxcbiAgMTAwOiAxMDAlXG4pO1xuXG4vLyA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50OiAzO1xuXG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kZWNvcmF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1kZWNvcmF0aW9uOiAoXG4gIG92ZXJsaW5lLFxuICB1bmRlcmxpbmUsXG4gIGxpbmUtdGhyb3VnaCxcbik7XG5cbi8vIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdHJhbnNmb3JtYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LXRyYW5zZm9ybWF0aW9uOiAoXG4gIGxvd2VyY2FzZSxcbiAgdXBwZXJjYXNlLFxuICBjYXBpdGFsaXplXG4pO1xuXG4vLyA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdXRpbGl0aWVzLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbi8vIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcblxuLy8gNDcuIFJldmVhbFxuLy8gLS0tLS0tLS0tLVxuXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xuXG4vLyA0OC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNDkuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW07XG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW07XG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItZXhwYW5kLW1heDogNjtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAxMHB4LFxuICBtZWRpdW06IDEycHgsXG4gIGxhcmdlOiAxNnB4XG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vLyBcbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIE91dHB1dHMgQ1NTIGNsYXNzZXMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIGZvdW5kYXRpb24tZ3JpZChcbiAgJHJvdzogJ3JvdycsXG4gICRjb2x1bW46ICdjb2x1bW4nLFxuICAkY29sdW1uLXJvdzogJ2NvbHVtbi1yb3cnLFxuICAkZ3V0dGVyOiAnZ3V0dGVyJyxcbiAgJHB1c2g6ICdwdXNoJyxcbiAgJHB1bGw6ICdwdWxsJyxcbiAgJGNlbnRlcjogJ2NlbnRlcmVkJyxcbiAgJHVuY2VudGVyOiAndW5jZW50ZXJlZCcsXG4gICRjb2xsYXBzZTogJ2NvbGxhcHNlJyxcbiAgJHVuY29sbGFwc2U6ICd1bmNvbGxhcHNlJyxcbiAgJG9mZnNldDogJ29mZnNldCcsXG4gICRlbmQ6ICdlbmQnLFxuICAkZXhwYW5kZWQ6ICdleHBhbmRlZCcsXG4gICRibG9jazogJ2Jsb2NrJ1xuKSB7XG4gIC8vIFJvd1xuICAuI3skcm93fSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAvLyBDb2xsYXBzaW5nXG4gICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGdyaWQtY29sdW1uLWd1dHRlcik7XG5cbiAgICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHBhbmRlZCAoZnVsbC13aWR0aCkgcm93XG4gICAgJi4jeyRleHBhbmRlZH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLiN7JGV4cGFuZGVkfSkgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgIEBpZiB0eXBlLW9mKCRncmlkLWNvbHVtbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgIC8vIFN0YXRpYyAodW5yZXNwb25zaXZlKSByb3cgZ3V0dGVyc1xuICAgICAgLy9cbiAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGdyaWQtY29sdW1uLWd1dHRlciB7XG4gICAgICAgICYuI3skZ3V0dGVyfS0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLiN7JGNvbHVtbn0ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sO1xuXG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICYuI3skZW5kfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW4gcm93XG4gIC8vIFRoZSBkb3VibGUgLnJvdyBjbGFzcyBpcyBuZWVkZWQgdG8gYnVtcCB1cCB0aGUgc3BlY2lmaWNpdHlcbiAgLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIFRvIHByb3Blcmx5IG5lc3QgYSBjb2x1bW4gcm93LCBwYWRkaW5nIGFuZCBtYXJnaW4gaXMgcmVtb3ZlZFxuICAuI3skcm93fSAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIENvbHVtbiB3aWR0aFxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICAgIEBpZiAkaSA8ICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygkaSk7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLSRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LSN7JG9mZnNldH0tI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGksICcuI3skY29sdW1ufScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGV4cGFuZGVkfS4jeyRyb3d9IC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9LiN7JHJvd30ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICB9XG5cbiAgICAvLyBHdXR0ZXIgYWRqdXN0bWVudFxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9LFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC4jeyRjb2x1bW59LSN7JGJsb2NrfSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicgYW5kIGhhcy12YWx1ZSgkZ3JpZC1jb2x1bW4tYWxpYXMpIHtcbiAgICAuI3skZ3JpZC1jb2x1bW4tYWxpYXN9IHtcbiAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuICAgICAgQGV4dGVuZCAuY29sdW1uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGJhc2UtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXRzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlcm4gdGhlbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMCk7XG59XG5cbi8vLyBVbi1jb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZS1hZGRpbmcgdGhlIHBhZGRpbmcuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy5cbkBtaXhpbiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZ3JpZC1jb2x1bW4tZ3V0dGVyKCkuIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVyKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbC1ndXR0ZXIoKS4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXIpO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gIH1cbiAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG9sZC16Zi1zaXplICE9IG51bGwge1xuICAgIC8vIFJlc3RvcmUgdGhlIG9sZCBicmVha3BvaW50IHNpemVcbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkLXpmLXNpemU6IG51bGwgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gQ29udmVycyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW5nIC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2luZy5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgd2lkdGggb2YgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR3aWR0aCBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIHRvIG1ha2UgdGhlIGNvbHVtbi4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICB3aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tc2l6ZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tc2l6ZVxuQG1peGluIGdyaWQtY29sLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBEaXJlY3Rpb24gYW5kIGFtb3VudCB0byBtb3ZlLiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudCBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGUgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LiBTZXQgdG8gY2VudGVyIHRvIGNlbnRlciB0aGUgY29sdW1uLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBvciBjZW50ZXIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJhc2UtZ3JpZC1jbGFzc2VzIHtcblxuICAvLyBHcmlkIENvbnRhaW5lclxuICAuZ3JpZC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuXG4gICAgJi5mbHVpZCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlKTtcbiAgICB9XG5cbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSwgMCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICAuZ3JpZC14IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkO1xuICB9XG5cbiAgLmNlbGwge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgpO1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRncmlkLWNvbHVtbnMsIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuXG4gICAgJi5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICB9XG5cbiAgICAmLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgfVxuICAuZ3JpZC14IHtcbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQXV0byB3aWR0aFxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgJiBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgLmdyaWQteCB7XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmNlbGwnLCBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkaSwgJy5jZWxsJywgZmFsc2UsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkYnJlYWtwb2ludDogJGJwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmNlbGwnLCBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkdmVydGljYWw6IHRydWUsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogI3skb3BlcmF0b3J9JGd1dHRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2VpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ251bWJlcicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVycykgLyAyO1xuXG4gICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogI3skb3BlcmF0b3J9JGd1dHRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZSB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyIG9yIDEvMy5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiAkZ3JpZC1jb2x1bW5zXG4pIHtcbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIG4gb2YgbiBhbmQgbnVtYmVyIGNvdW50c1xuICBAaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRzaXplKSA9PSAnJScge1xuICAgICAgJHNpemU6ICRzaXplO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkc2l6ZSA8IDEge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSAvICRncmlkLWNvbHVtbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBvciBcIm4vblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRzaXplKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIiBvciBcIm4vblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKG50aCgkc2l6ZSwgMSkgLyBudGgoJHNpemUsIDMpKTtcbiAgICB9XG4gIH1cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiIC8gXCJuL25cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkc2l6ZTtcbn1cblxuLy8vIFNldHMgYmFzZSBmbGV4IHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2Agb3IgYHNocmlua2AuXG5AbWl4aW4geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICAvLyBUaGlzIGlzIHRoZSBiYXNlIHN0eWxlLCBhbGwgb3RoZXJzIGluaGVyaXQgZnJvbSBpdFxuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgfVxuICBAZWxzZWlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICB9XG4gIEBlbHNlaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbn1cblxuLy8vIFJlc2V0cyBhIGNlbGxzIHdpZHRoIChvciBoZWlnaHQgaWYgdmVydGljYWwgaXMgdHJ1ZSkgYXMgd2VsbCBhcyBzdHJpcHMgaXRzIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1yZXNldCgkdmVydGljYWw6IHRydWUpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHdpZHRoLCBoZWlnaHQpO1xuICAjeyRkaXJlY3Rpb259OiBhdXRvO1xufVxuXG4vLyBTZXRzIG91ciBjZWxsIHdpZHRocyBvciBoZWlnaHRzIGRlcGVuZGluZyBvbiBndXR0ZXIgdHlwZS5cbkBtaXhpbiAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkbWFyZ2luLWd1dHRlciwgJHZlcnRpY2FsKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbiAgQGVsc2VpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgfVxuICBAZWxzZWlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICN7eHktY2VsbC1zaXplKCRzaXplKX0sIGNhbGMoI3t4eS1jZWxsLXNpemUoJHNpemUpfSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKGRlZmF1bHQpIGZvciAxMDAlIHdpZHRoLCBgYXV0b2AgdG8gdXNlIHVwIGF2YWlsYWJsZSBzcGFjZSBhbmQgYHNocmlua2AgdG8gdXNlIHVwIG9ubHkgcmVxdWlyZWQgc3BhY2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgQGlmKCRicmVha3BvaW50ID09IG51bGwpIHtcbiAgICAvLyBJZiBgJGJwLXNpemVgIGlzIGF2YWlsYWJsZSB0aGVuIHVzZSB0aGlzLCBvdGhlcndpc2UgcmV2ZXJ0IHRvIHRoZSBzbWFsbGVzdCBicC5cbiAgICBAaWYodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEdldCBvdXIgZ3V0dGVycyBmcm9tIG1hcCBpZiBhdmFpbGFibGUsIGlmIG5vdCBtYXAganVzdCByZXR1cm4gdGhlIHZhbHVlLlxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuXG4gIC8vIEJhc2UgZmxleCBwcm9wZXJ0aWVzXG4gIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgQGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRndXR0ZXIsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsIDAsICR2ZXJ0aWNhbCk7XG4gIH1cblxuICBAaWYgJGd1dHRlci1vdXRwdXQge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcblxuICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgfVxuXG4gIC8vIElmIHdlIHdhbnQgdG8gb3V0cHV0IHRoZSBndXR0ZXJzXG4gIEBpZigkZ3V0dGVyLW91dHB1dCkge1xuICAgIC8vIFRPRE86IEZpZ3VyZSBvdXQgaWYgd2UgbmVlZCB0byBwYXNzIGJyZWFrcG9pbnQgaW4gaGVyZSB0b28uXG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gIG9yIGBwYWRkaW5nYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoJHNpemUsICRndXR0ZXItb3V0cHV0LCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0L2JvdHRvbSBieSBgJG5gIGNvbHVtbnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFNpemUgdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgemYtY2VsbCgpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIFNldHMgdGhlIGRpcmVjdGlvbiBvZiB0aGUgb2Zmc2V0LiBJZiBzZXQgdG8gdHJ1ZSB3aWxsIGFwcGx5IG1hcmdpbi10b3AgaW5zdGVhZC5cbkBtaXhpbiB4eS1jZWxsLW9mZnNldChcbiAkbixcbiAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwsICd0b3AnLCAkZ2xvYmFsLWxlZnQpO1xuXG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRicmVha3BvaW50LCAkZ3V0dGVycykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcbiAgICAkc2l6ZTogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCBjYWxjKCN7eHktY2VsbC1zaXplKCRuKX0gKyAjeyRndXR0ZXJ9KSwgI3t4eS1jZWxsLXNpemUoJG4pfSk7XG5cbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skc2l6ZX07XG4gIH1cbn1cbiIsIi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgaGVpZ2h0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB3aWR0aDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNb2RpZmllcyBhIGNlbGwgdG8gZ2l2ZSBpdCBcImJsb2NrXCIgYmVoYXZpb3IgKG92ZXJmbG93IGF1dG8sIGluZXJ0aWFsIHNjcm9sbGluZylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuQG1peGluIHh5LWNlbGwtYmxvY2soXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkcHJvcGVydHk6IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCAnb3ZlcmZsb3cteScsICdvdmVyZmxvdy14Jyk7XG5cbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5cGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7ICBcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIFxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vICRmb250LXByaW1hcnk6IFwiQWJkbyBNYXN0ZXJcIjtcbi8vICRmb250LXNlY29uZGFyeTogXCJBYmRvIE1hc3RlclwiO1xuJGZvbnQtcHJpbWFyeTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiRmb250LXNlY29uZGFyeTogXCJEcm9pZEFyYWJpY0t1ZmlcIjtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IHJ0bDtcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xuJGhlYWRlci1mb250LXdlaWdodDogODAwO1xuJGJvZHktZm9udC1jb2xvcjogIzNEM0QzRDtcblxuJHBhcmFncmFwaC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDI4cHggIWRlZmF1bHQ7XG5cbiRoZWFkZXItc3R5bGVzOiAoXG4gICAgICAgIHNtYWxsOiAoXG4gICAgICAgICAgICAgICAgJ2gxJzogKCdmb250LXNpemUnOiAzMiksXG4gICAgICAgICAgICAgICAgJ2gyJzogKCdmb250LXNpemUnOiAyOCksXG4gICAgICAgICAgICAgICAgJ2gzJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgICAgICAgICAgICAgJ2g0JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgICAgICAgICAgICAgJ2g1JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgICAgICAgICAgICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICAgICAgICksXG4gICAgICAgIGxhcmdlOiAoXG4gICAgICAgICAgICAgICAgJ2gxJzogKCdmb250LXNpemUnOiAzOCksXG4gICAgICAgICAgICAgICAgJ2gyJzogKCdmb250LXNpemUnOiAzMiksXG4gICAgICAgICAgICAgICAgJ2gzJzogKCdmb250LXNpemUnOiAyNiksXG4gICAgICAgICAgICAgICAgJ2g0JzogKCdmb250LXNpemUnOiAyMiksXG4gICAgICAgICAgICAgICAgJ2g1JzogKCdmb250LXNpemUnOiAxNiksXG4gICAgICAgICAgICAgICAgJ2g2JzogKCdmb250LXNpemUnOiAxNCksXG4gICAgICAgICksXG4pICFkZWZhdWx0O1xuXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgdWwsIG9sIHtcbiAgICAvLyBVc2UgdG8gcmVtb3ZlIG51bWJlcnMgZnJvbSBvcmRlcmVkIGxpc3QgJiBidWxsZXRzIGZyb20gdW5vcmRlcmVkIGxpc3RcbiAgICAmLm5vLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBidXR0b24gZWxlbWVudHMuXG4vLy8gQHR5cGUgRm9udFxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHdpZHRoIGZvciBob2xsb3cgb3V0bGluZSBidXR0b25zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vLyB0cmFuc2l0aW9ucyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuXG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLy8gRXhwYW5kcyBhIGJ1dHRvbiB0byBtYWtlIGl0IGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHRoZSBleHBhbmQgYmVoYXZpb3IuIFNldCB0byBgZmFsc2VgIHRvIHJldmVyc2UgdGhpcyBiZWhhdmlvci5cbkBtaXhpbiBidXR0b24tZXhwYW5kKCRleHBhbmQ6IHRydWUpIHtcbiAgQGlmICRleHBhbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLXN0eWxlKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIEBpZiAkYmFja2dyb3VuZC1ob3ZlciA9PSBhdXRvIHtcbiAgICAkYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6ICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzcyk7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBSZW1vdmVzIGJhY2tncm91bmQgZmlsbCBvbiBob3ZlciBhbmQgZm9jdXMgZm9yIGhvbGxvdyBidXR0b25zLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLFxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdIHtcbiAgICAmLFxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG4vLy8gQHBhcmFtIFtDb2xvcl0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHBhcmFtIFtDb2xvcl0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG5cbiAgQGlmICRzdHlsZSA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkc3R5bGUgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdHlsZVxuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZCgkY29sb3IsIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSG9sbG93IHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgJi5ob2xsb3cge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbGVhciBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gY2xlYXIge1xuICAgICAgJi5jbGVhciB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG5cbiAgICAgICAgICAgICYsICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG4gIGEuYnV0dG9uIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeFxuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAkZm9ybS1zcGFjaW5nICogMS41KTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG5cbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWRjcnVtYnNcbi8vLy9cblxuLy8vIE1hcmdpbiBhcm91bmQgYSBicmVhZGNydW1icyBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgYWN0aXZlIGJyZWFkY3J1bWIgbGluay5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gT3BhY2l0eSBvZiBkaXNhYmxlZCBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJyZWFkY3J1bWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIG1ha2VzIGJyZWFkY3J1bWIgbGlua3MgdXBwZXJjYXNlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBhIHNlcGVyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBJZiBpdCBleGlzdHMgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2ggaXMgdXNlZCB0byBidWlsZCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3IuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCkge1xuICAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6ICRicmVhZGNydW1icy1pdGVtLXNsYXNoO1xufVxuXG4vLy8gVXNlZCBjaGFyYWN0ZXIgZm9yIHRoZSBicmVhZGNydW1iIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBDb250ZW50XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nICFkZWZhdWx0O1xuXG4vLy8gVXNlZCBjaGFyYWN0ZXIgZm9yIHRoZSBicmVhZGNydW1iIHNlcGFyYXRvciBpbiBydGwgbW9kZS5cbi8vLyBAdHlwZSBDb250ZW50XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJyAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvciBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3I7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBicmVhZGNydW1icyBjb250YWluZXIsIGFsb25nIHdpdGggdGhlIHN0eWxlcyBmb3IgdGhlIGA8bGk+YCBhbmQgYDxhPmAgZWxlbWVudHMgaW5zaWRlIG9mIGl0LlxuQG1peGluIGJyZWFkY3J1bWJzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRicmVhZGNydW1icy1tYXJnaW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLy8gSXRlbSB3cmFwcGVyXG4gIGxpIHtcbiAgICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3Ige1xuICAgICAgLy8gTmVlZCB0byBlc2NhcGUgdGhlIGJhY2tzbGFzaFxuICAgICAgJHNlcGFyYXRvcjogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAnbHRyJywgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0sICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bCk7XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMCAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGNvbnRlbnQ6ICRzZXBhcmF0b3I7XG4gICAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1icmVhZGNydW1icyB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgYnJlYWRjcnVtYnMtY29udGFpbmVyO1xuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGlubmVyIHBhZGRpbmcgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkY2FsbG91dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgwLjVyZW0pO1xuICAgIH1cblxuICAgICYubGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDNyZW0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FyZFxuLy8vL1xuXG4vLy8gRGVmdWFsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhcmRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNhcmQgc2hhZG93LlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbi5cbi8vLyBAdHlwZSBudW1iZXJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGZvbnQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gLSBCb3R0b20gbWFyZ2luIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGJvcmRlciAtIEJvcmRlciBhcm91bmQgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmFkaXVzIC0gYm9yZGVyIHJhZGl1cyBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGFkb3cgLSBib3ggc2hhZG93IG9mIHRoZSBjYXJkLlxuQG1peGluIGNhcmQtY29udGFpbmVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkY2FyZC1mb250LWNvbG9yLFxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW4tYm90dG9tLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBzZWN0aW9uLlxuQG1peGluIGNhcmQtc2VjdGlvbihcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYXJkIHtcbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xuICB9XG5cbiAgLmNhcmQtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xuICB9XG5cbiAgLmNhcmQtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgY2FyZC1zZWN0aW9uO1xuICB9XG5cbiAgLy8gRm9yIElFIDExIC0gRmxleGJ1Z1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzL2lzc3Vlcy83NVxuICAuY2FyZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcblxuICAgICYuc21hbGwgeyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShzbWFsbCkgfVxuICAgICYsICYubWVkaXVtIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUobWVkaXVtKSB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGFuIGhvdmVyZWQgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vIFdBUk5JTkc6IFdpbGwgYmUgcmVtb3ZlZCBpbiB2ZXJzaW9uIDYuNFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW86IGRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcyxkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC12aWRlbyB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCgpLiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xufVxuXG5AbWl4aW4gZmxleC12aWRlbygkcmF0aW86ICRyZXNwb25zaXZlLWVtYmVkLXJhdGlvKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IHJlc3BvbnNpdmUtZW1iZWQoKS4gZmxleC12aWRlbygpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIEZpbmRzIHRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvciBvZiB0d28gaW50ZWdlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGEgLSBGaXJzdCBudW1iZXIgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGIgLSBTZWNvbmQgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3IuXG5AZnVuY3Rpb24gZ2NkKCRhLCAkYikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvR3JlYXRlc3RfY29tbW9uX2Rpdmlzb3IjSmF2YVNjcmlwdFxuICBAaWYgKCRiICE9IDApIHtcbiAgICBAcmV0dXJuIGdjZCgkYiwgJGEgJSAkYik7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gYWJzKCRhKTtcbiAgfVxufVxuXG4vLy8gSGFuZGxlcyBkZWNpbWFsIGV4cG9uZW50cyBieSB0cnlpbmcgdG8gY29udmVydCB0aGVtIGludG8gYSBmcmFjdGlvbiBhbmQgdGhlbiB1c2UgYSBudGgtcm9vdC1hbGdvcml0aG0gZm9yIHBhcnRzIG9mIHRoZSBjYWxjdWxhdGlvblxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGJhc2UgbnVtYmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZXhwb25lbnQgLSBUaGUgZXhwb25lbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgcHJvZHVjdCBvZiB0aGUgZXhwb25lbnRpYXRpb24uXG5AZnVuY3Rpb24gcG93KCRiYXNlLCAkZXhwb25lbnQsICRwcmVjOiAxNikge1xuICBAaWYgKGZsb29yKCRleHBvbmVudCkgIT0gJGV4cG9uZW50KSB7XG4gICAgJHByZWMyIDogcG93KDEwLCAkcHJlYyk7XG4gICAgJGV4cG9uZW50OiByb3VuZCgkZXhwb25lbnQgKiAkcHJlYzIpO1xuICAgICRkZW5vbWluYXRvcjogZ2NkKCRleHBvbmVudCwgJHByZWMyKTtcbiAgICBAcmV0dXJuIG50aC1yb290KHBvdygkYmFzZSwgJGV4cG9uZW50IC8gJGRlbm9taW5hdG9yKSwgJHByZWMyIC8gJGRlbm9taW5hdG9yLCAkcHJlYyk7XG4gIH1cblxuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cG9uZW50ID4gMSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiAkYmFzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGV4cG9uZW50IDwgMSB7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlIC8gJGJhc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBudGgtcm9vdCgkbnVtLCAkbjogMiwgJHByZWM6IDEyKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9OdGhfcm9vdCNKYXZhU2NyaXB0XG4gICR4OiAxO1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHByZWMge1xuICAgICR4OiAxIC8gJG4gKiAoKCRuIC0gMSkgKiAkeCArICgkbnVtIC8gcG93KCR4LCAkbiAtIDEpKSk7XG4gIH1cblxuICBAcmV0dXJuICR4O1xufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgaGVpZ2h0IGFzIGEgcGVyY2VudGFnZSBvZiB0aGUgd2lkdGggZm9yIGEgZ2l2ZW4gcmF0aW8uXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gLSBSYXRpbyB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBoZWlnaHQsIGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IEEgcGVyY2VudGFnZSB2YWx1ZSBmb3IgdGhlIGhlaWdodCByZWxhdGl2ZSB0byB0aGUgd2lkdGggb2YgYSByZXNwb25zaXZlIGNvbnRhaW5lci5cbkBmdW5jdGlvbiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbykge1xuICAkdzogbnRoKCRyYXRpbywgMSk7XG4gICRoOiBudGgoJHJhdGlvLCAzKTtcbiAgQHJldHVybiAkaCAvICR3ICogMTAwJTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGJhc2Ugc3R5bGVzIGZvciBhIGxhYmVsLlxuQG1peGluIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkbGFiZWwtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkbGFiZWwtcmFkaXVzO1xuXG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGxhYmVsLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGxhYmVsLWNvbG9yLCAkbGFiZWwtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgYmxvY2spO1xuICBtYXJnaW4tYm90dG9tOiAkbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICYubWlkZGxlIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgJi5ib3R0b20ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBlbGxpcHNpcyBpbiBhIHBhZ2luYXRpb24gbWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgcGFnZSBudW1iZXIgbGlua3Mgb24gbW9iaWxlLCBvbmx5IG5leHQvcHJldmlvdXMgbGlua3Ncbi8vLyBhbmQgb3B0aW9uYWxseSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXkgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgb24gbW9iaWxlIGV2ZW4gaWYgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGBmYWxzZWAuXG4vLy8gVGhpcyBwYXJhbWV0ZXIgd2lsbCBvbmx5IG92ZXJyaWRlIHRoZSB2aXNpYmlsaXR5IHNldHRpbmcgb2YgdGhlIGN1cnJlbnQgaXRlbSBmb3IgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7YCxcbi8vLyBpdCB3aWxsIG5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgdmlzaWJpbGl0eSB3aGVuIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgdHJ1ZWAuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIgKFxuICAkbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbSxcbiAgJGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplLFxuICAkc3BhY2luZzogJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nLFxuICAkcmFkaXVzOiAkcGFnaW5hdGlvbi1yYWRpdXMsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvcixcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcblxuICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmxhc3QtY2hpbGQsXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbSB7XG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgY3VycmVudCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCxcbiAgJGNvbG9yLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jdXJyZW50O1xuICBjb2xvcjogJGNvbG9yLWN1cnJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29sb3I6ICRjb2xvcjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGVsbGlwc2lzIGZvciB1c2UgaW4gYSBwYWdpbmF0aW9uIGxpc3QuXG5AbWl4aW4gcGFnaW5hdGlvbi1lbGxpcHNpcyAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3Jcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29udGVudDogJ1xcMjAyNic7XG4gIGNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXBhZ2luYXRpb24ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXI7XG5cbiAgICAuY3VycmVudCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudDtcbiAgICB9XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1lbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tYXJyb3dzIHtcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBhYic7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbiAgICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGJiJztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1lbGVtZW50LW5lc3RpbmcsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFja2VkIHRhYmxlLiBVc2VmdWwgZm9yIHNtYWxsLXNjcmVlbiBsYXlvdXRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGhlYWRlciBbJHNob3ctaGVhZGVyLWZvci1zdGFja2VkXSAtIFNob3cgdGhlIGZpcnN0IHRoIG9mIGhlYWRlciB3aGVuIHN0YWNrZWQuXG5AbWl4aW4gdGFibGUtc3RhY2soJGhlYWRlcjogJHNob3ctaGVhZGVyLWZvci1zdGFja2VkKSB7XG4gIEBpZiAkaGVhZGVyIHtcbiAgICB0aGVhZCB7XG4gICAgICB0aCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQgZG93bikge1xuICAgICAgQGluY2x1ZGUgdGFibGUtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gIH1cblxuICB0YWJsZS5ob3ZlciB7XG4gICAgQGluY2x1ZGUgdGFibGUtaG92ZXI7XG4gIH1cblxuICAudGFibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgdGFibGUge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiRjb250cmFzdC13YXJuaW5nczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiAkcmdiIC8gMjU1O1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsICRyZ2IgLyAxMi45MiwgcG93KCgkcmdiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86ICRsdW1pbmFuY2UxIC8gJGx1bWluYW5jZTI7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogMSAvICRyYXRpbztcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApIC8gMTA7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGh1bWJuYWlsXG4vLy8vXG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wcnRpZXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRodW1ibmFpbCBzdHlsZXMgdG8gYW4gZWxlbWVudC5cbkBtaXhpbiB0aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tO1xuXG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtcmFkaXVzO1xuICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdztcblxuICBsaW5lLWhlaWdodDogMDtcbn1cblxuQG1peGluIHRodW1ibmFpbC1saW5rIHtcbiAgdHJhbnNpdGlvbjogJHRodW1ibmFpbC10cmFuc2l0aW9uO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93LWhvdmVyO1xuICB9XG5cbiAgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGh1bWJuYWlsIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICB9XG5cbiAgYS50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gKDEgLyAxNik7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAoMSAvIDE2KTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIEZsZXhib3ggVXRpbGl0aWVzXG4vLy8vXG4vL1xuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb3VudCBvZiBzb3VyY2Ugb3JkZXJpbmdgXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDYgIWRlZmF1bHQ7XG5cbi8vLyBRdWlja2x5IGRpc2FibGUvZW5hYmxlIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIFZhbmlsbGEgRmxleCBIZWxwZXJzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmbGV4LWhlbHBlcnMge1xuICAuZmxleC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgIC5mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tZmxleC1kaXItI3skZGlyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzIHtcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdXNpbmcganVzdGlmeS1jb250ZW50XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnbGVmdCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnbGVmdCcsICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHsgXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBhbGlnbm1lbnQgdXNpbmcgYWxpZ24taXRlbXMgYW5kIGFsaWduLXNlbGZcbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAvLyBDZW50cmFsIGFsaWdubWVudCBvZiBjb250ZW50XG4gIC5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiBtaWRkbGUpO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudCB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmFuaWxsYSBGbGV4Ym94IEhlbHBlcnNcbiAgQGluY2x1ZGUgZmxleC1oZWxwZXJzO1xufVxuIiwiJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgJ2xlZnQnOiBmbGV4LXN0YXJ0LFxuICAncmlnaHQnOiBmbGV4LWVuZCxcbiAgJ2NlbnRlcic6IGNlbnRlcixcbiAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuKTtcblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwcm90b3R5cGUtZm9udC1zdHlsaW5nXG4vLy8vXG5cbi8vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBmb250IHN0eWxpbmcgdHlwZXNcbi8vLyBAdHlwZSBCb29sZWFuXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzICFkZWZhdWx0O1xuXG4vLy8gTGV0dGVyIHNwYWNpbmcgZm9yIGAuZm9udC13aWRlYFxuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2VpZ2h0IGZvciBgLmZvbnQtbm9ybWFsYCwgZGVmYXVsdGVkIHRvIGBnbG9iYWwtd2VpZ2h0LW5vcm1hbGBcbi8vLyBAdHlwZSBOdW1iZXJcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2VpZ2h0IGZvciBgLmZvbnQtYm9sZGAsIGRlZmF1bHRlZCB0byBgZ2xvYmFsLXdlaWdodC1ib2xkYFxuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdpZGUgbGV0dGVyIHNwYWNpbmchXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsZXR0ZXItc3BhY2luZyBbJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nXSBXaWRlIGxldHRlciBzcGFjaW5nIGZvciB0aGUgZm9udFxuQG1peGluIGZvbnQtd2lkZShcbiAgJGxldHRlci1zcGFjaW5nOiAkcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmdcbikge1xuICBsZXR0ZXItc3BhY2luZzogJGxldHRlci1zcGFjaW5nO1xufVxuXG4vLy8gRm9udCBXZWlnaHQgTm9ybWFsLCBkZWZhdWx0IHZhbHVlIGNvbWluZyB0aHJvdWdoIGBnbG9iYWwtd2VpZ2h0LW5vcm1hbGBcbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbJHByb3RvdHlwZS1mb250LW5vcm1hbF0gV2VpZ2h0IG9mIHRoZSBmb250IChub3JtYWwpXG5AbWl4aW4gZm9udC1ub3JtYWwoXG4gICR3ZWlnaHQ6ICRwcm90b3R5cGUtZm9udC1ub3JtYWxcbikge1xuICBmb250LXdlaWdodDogJHdlaWdodDtcbn1cblxuLy8vIEZvbnQgV2VpZ2h0IEJvbGQsIGRlZmF1bHQgdmFsdWUgY29taW5nIHRocm91Z2ggYGdsb2JhbC13ZWlnaHQtYm9sZGBcbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbJHByb3RvdHlwZS1mb250LWJvbGRdIFdlaWdodCBvZiB0aGUgZm9udCAoYm9sZClcbkBtaXhpbiBmb250LWJvbGQoXG4gICR3ZWlnaHQ6ICRwcm90b3R5cGUtZm9udC1ib2xkXG4pIHtcbiAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG59XG5cbi8vLyBGb250IFN0eWxlIEl0YWxpY1xuQG1peGluIGZvbnQtaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb3RvdHlwZS1mb250LXN0eWxpbmcge1xuICAuZm9udC13aWRle1xuICAgIEBpbmNsdWRlIGZvbnQtd2lkZTtcbiAgfVxuXG4gIC5mb250LW5vcm1hbCB7XG4gICAgQGluY2x1ZGUgZm9udC1ub3JtYWw7XG4gIH1cblxuICAuZm9udC1ib2xkIHtcbiAgICBAaW5jbHVkZSBmb250LWJvbGQ7XG4gIH1cblxuICAuZm9udC1pdGFsaWMge1xuICAgIEBpbmNsdWRlIGZvbnQtaXRhbGljO1xuICB9XG5cbiAgQGlmICgkcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mb250LXdpZGV7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXdpZGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZvbnQtbm9ybWFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtbm9ybWFsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mb250LWJvbGQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1ib2xkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mb250LWl0YWxpYyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LWl0YWxpYztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHByb3RvdHlwZS1zcGFjaW5nXG4vLy8vXG5cbi8vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBzcGFjaW5nIGNsYXNzZXMgKG1hcmdpbiBhbmQgcGFkZGluZylcbi8vLyBAdHlwZSBCb29sZWFuXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBudW1iZXIgb2Ygc3BhY2VycyBjb3VudCAobWFyZ2luIGFuZCBwYWRkaW5nKVxuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50OiAzICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGhlbHBlciBtaXhpbiwgYWxsIHRoZSB2YWx1ZXMgYXJlIG11bHRpcGxpZWQgYnkgYCRnbG9iYWwtbWFyZ2luYCB3aGljaCBieSBkZWZhdWx0IGlzIGVxdWFsIHRvIGAxcmVtYFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9wIFtudWxsXSAtIE1hcmdpbiBUb3Bcbi8vLyBAcGFyYW0ge051bWJlcn0gJHJpZ2h0IFtudWxsXSAtIE1hcmdpbiBSaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYm90dG9tIFtudWxsXSAtIE1hcmdpbiBCb3R0b21cbi8vLyBAcGFyYW0ge051bWJlcn0gJGxlZnQgW251bGxdIC0gTWFyZ2luIExlZnRcbkBtaXhpbiBtYXJnaW4oXG4gICR0b3A6IG51bGwsXG4gICRyaWdodDogbnVsbCxcbiAgJGJvdHRvbTogbnVsbCxcbiAgJGxlZnQ6IG51bGxcbikge1xuICBAaWYgJHRvcCAhPSBudWxsIHtcbiAgICBtYXJnaW4tdG9wOiAkdG9wICogJGdsb2JhbC1tYXJnaW4gIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJHJpZ2h0ICE9IG51bGwge1xuICAgIG1hcmdpbi1yaWdodDogJHJpZ2h0ICogJGdsb2JhbC1tYXJnaW4gIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGJvdHRvbSAhPSBudWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkYm90dG9tICogJGdsb2JhbC1tYXJnaW4gIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGxlZnQgIT0gbnVsbCB7XG4gICAgbWFyZ2luLWxlZnQ6ICRsZWZ0ICogJGdsb2JhbC1tYXJnaW4gIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gUGFkZGluZyBoZWxwZXIgbWl4aW4sIGFsbCB0aGUgdmFsdWVzIGFyZSBtdWx0aXBsaWVkIGJ5IGAkZ2xvYmFsLXBhZGRpbmdgIHdoaWNoIGJ5IGRlZmF1bHQgaXMgZXF1YWwgdG8gYDFyZW1gXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b3AgW251bGxdIC0gUGFkZGluZyBUb3Bcbi8vLyBAcGFyYW0ge051bWJlcn0gJHJpZ2h0IFtudWxsXSAtIFBhZGRpbmcgUmlnaHRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJvdHRvbSBbbnVsbF0gLSBQYWRkaW5nIEJvdHRvbVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbGVmdCBbbnVsbF0gLSBQYWRkaW5nIExlZnRcbkBtaXhpbiBwYWRkaW5nKFxuICAkdG9wOiBudWxsLFxuICAkcmlnaHQ6IG51bGwsXG4gICRib3R0b206IG51bGwsXG4gICRsZWZ0OiBudWxsXG4pIHtcbiAgQGlmICR0b3AgIT0gbnVsbCB7XG4gICAgcGFkZGluZy10b3A6ICR0b3AgKiAkZ2xvYmFsLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJHJpZ2h0ICE9IG51bGwge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRyaWdodCAqICRnbG9iYWwtcGFkZGluZyAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkYm90dG9tICE9IG51bGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAkYm90dG9tICogJGdsb2JhbC1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRsZWZ0ICE9IG51bGwge1xuICAgIHBhZGRpbmctbGVmdDogJGxlZnQgKiAkZ2xvYmFsLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcm90b3R5cGUtc3BhY2luZyB7XG4gIEBmb3IgJHNwYWNlciBmcm9tIDAgdGhyb3VnaCAkcHJvdG90eXBlLXNwYWNlcnMtY291bnQge1xuICAgIC8vIEFsbCBTaWRlc1xuICAgIC5tYXJnaW4tI3skc3BhY2VyfSB7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4oJHNwYWNlciwgJHNwYWNlciwgJHNwYWNlciwgJHNwYWNlcik7XG4gICAgfVxuXG4gICAgLnBhZGRpbmctI3skc3BhY2VyfSB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCRzcGFjZXIsICRzcGFjZXIsICRzcGFjZXIsICRzcGFjZXIpO1xuICAgIH1cblxuICAgIC8vIFRvcCBTaWRlXG4gICAgLm1hcmdpbi10b3AtI3skc3BhY2VyfSB7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4oJHNwYWNlciwgbnVsbCwgbnVsbCwgbnVsbCk7XG4gICAgfVxuXG4gICAgLnBhZGRpbmctdG9wLSN7JHNwYWNlcn0ge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZygkc3BhY2VyLCBudWxsLCBudWxsLCBudWxsKTtcbiAgICB9XG5cbiAgICAvLyBSaWdodCBTaWRlXG4gICAgLm1hcmdpbi1yaWdodC0jeyRzcGFjZXJ9IHtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbihudWxsLCAkc3BhY2VyLCBudWxsLCBudWxsKTtcbiAgICB9XG5cbiAgICAucGFkZGluZy1yaWdodC0jeyRzcGFjZXJ9IHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcobnVsbCwgJHNwYWNlciwgbnVsbCwgbnVsbCk7XG4gICAgfVxuXG4gICAgLy8gQm90dG9tIFNpZGVcbiAgICAubWFyZ2luLWJvdHRvbS0jeyRzcGFjZXJ9IHtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbihudWxsLCBudWxsLCAkc3BhY2VyLCBudWxsKTtcbiAgICB9XG5cbiAgICAucGFkZGluZy1ib3R0b20tI3skc3BhY2VyfSB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKG51bGwsIG51bGwsICRzcGFjZXIsIG51bGwpO1xuICAgIH1cblxuICAgIC8vIExlZnQgU2lkZVxuICAgIC5tYXJnaW4tbGVmdC0jeyRzcGFjZXJ9IHtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbihudWxsLCBudWxsLCBudWxsLCAkc3BhY2VyKTtcbiAgICB9XG5cbiAgICAucGFkZGluZy1sZWZ0LSN7JHNwYWNlcn0ge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZyhudWxsLCBudWxsLCBudWxsLCAkc3BhY2VyKTtcbiAgICB9XG5cbiAgICAvLyBIb3Jpem9udGFsIEF4ZXNcbiAgICAubWFyZ2luLWhvcml6b250YWwtI3skc3BhY2VyfSB7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCwgJHNwYWNlciwgbnVsbCwgJHNwYWNlcik7XG4gICAgfVxuXG4gICAgLnBhZGRpbmctaG9yaXpvbnRhbC0jeyRzcGFjZXJ9IHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcobnVsbCwgJHNwYWNlciwgbnVsbCwgJHNwYWNlcik7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgQXhlc1xuICAgIC5tYXJnaW4tdmVydGljYWwtI3skc3BhY2VyfSB7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4oJHNwYWNlciwgbnVsbCwgJHNwYWNlciwgbnVsbClcbiAgICB9XG5cbiAgICAucGFkZGluZy12ZXJ0aWNhbC0jeyRzcGFjZXJ9IHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHNwYWNlciwgbnVsbCwgJHNwYWNlciwgbnVsbClcbiAgICB9XG5cbiAgICBAaWYgKCRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICAvLyBBbGwgU2lkZXNcbiAgICAgICAgICAgIC4jeyRzaXplfS1tYXJnaW4tI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbigkc3BhY2VyLCAkc3BhY2VyLCAkc3BhY2VyLCAkc3BhY2VyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLiN7JHNpemV9LXBhZGRpbmctI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHNwYWNlciwgJHNwYWNlciwgJHNwYWNlciwgJHNwYWNlcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFRvcCBTaWRlXG4gICAgICAgICAgICAuI3skc2l6ZX0tbWFyZ2luLXRvcC0jeyRzcGFjZXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luKCRzcGFjZXIsIG51bGwsIG51bGwsIG51bGwpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuI3skc2l6ZX0tcGFkZGluZy10b3AtI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHNwYWNlciwgbnVsbCwgbnVsbCwgbnVsbCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJpZ2h0IFNpZGVcbiAgICAgICAgICAgIC4jeyRzaXplfS1tYXJnaW4tcmlnaHQtI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbihudWxsLCAkc3BhY2VyLCBudWxsLCBudWxsKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLiN7JHNpemV9LXBhZGRpbmctcmlnaHQtI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcobnVsbCwgJHNwYWNlciwgbnVsbCwgbnVsbCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEJvdHRvbSBTaWRlXG4gICAgICAgICAgICAuI3skc2l6ZX0tbWFyZ2luLWJvdHRvbS0jeyRzcGFjZXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luKG51bGwsIG51bGwsICRzcGFjZXIsIG51bGwpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuI3skc2l6ZX0tcGFkZGluZy1ib3R0b20tI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcobnVsbCwgbnVsbCwgJHNwYWNlciwgbnVsbCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIExlZnQgU2lkZVxuICAgICAgICAgICAgLiN7JHNpemV9LW1hcmdpbi1sZWZ0LSN7JHNwYWNlcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCwgbnVsbCwgbnVsbCwgJHNwYWNlcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC4jeyRzaXplfS1wYWRkaW5nLWxlZnQtI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcobnVsbCwgbnVsbCwgbnVsbCwgJHNwYWNlcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEhvcml6b250YWwgQXhlc1xuICAgICAgICAgICAgLiN7JHNpemV9LW1hcmdpbi1ob3Jpem9udGFsLSN7JHNwYWNlcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCwgJHNwYWNlciwgbnVsbCwgJHNwYWNlcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC4jeyRzaXplfS1wYWRkaW5nLWhvcml6b250YWwtI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcobnVsbCwgJHNwYWNlciwgbnVsbCwgJHNwYWNlcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFZlcnRpY2FsIEF4ZXNcbiAgICAgICAgICAgIC4jeyRzaXplfS1tYXJnaW4tdmVydGljYWwtI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbigkc3BhY2VyLCBudWxsLCAkc3BhY2VyLCBudWxsKVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuI3skc2l6ZX0tcGFkZGluZy12ZXJ0aWNhbC0jeyRzcGFjZXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkc3BhY2VyLCBudWxsLCAkc3BhY2VyLCBudWxsKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcHJvdG90eXBlLXNlcGFyYXRvclxuLy8vL1xuXG4vLy8gUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3Igc2VwYXJhdG9yLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYWxpZ25tZW50IG9mIGEgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMikgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBDb2xvclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUb3AgTWFyZ2luIG9mIGEgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUaXRsZSBzZXBhcmF0b3IgVXRpbGl0eSwgbW9zdGx5IHVzZWQgdG8gc3R5bGUgdGhlIG1haW4gaGVhZGluZyBvZiBhIHNlY3Rpb25cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGFsaWduIFskcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbl0gLSBzZXBhcmF0b3IgQWxpZ25tZW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWyRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodF0gLSBXaWR0aFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoXSAtIEhlaWdodFxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvcCBbJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcF0gLSBNYXJnaW4gVG9wXG5AbWl4aW4gc2VwYXJhdG9yIChcbiAgJGFsaWduOiAkcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbixcbiAgJGhlaWdodDogJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0LFxuICAkd2lkdGg6ICRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoLFxuICAkYmFja2dyb3VuZDogJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZCxcbiAgJHRvcDogJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcFxuKSB7XG4gIHRleHQtYWxpZ246ICRhbGlnbiAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24ocmVsYXRpdmUpO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkYmFja2dyb3VuZDtcbiAgICBtYXJnaW46ICR0b3AgYXV0byAwO1xuXG4gICAgQGlmICRhbGlnbiA9PSBsZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGlmICRhbGlnbiA9PSByaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLXNlcGFyYXRvciB7XG5cdC5zZXBhcmF0b3ItY2VudGVyIHtcblx0XHRAaW5jbHVkZSBzZXBhcmF0b3IoY2VudGVyKTtcblx0fVxuXG4gIC5zZXBhcmF0b3ItbGVmdCB7XG4gICAgQGluY2x1ZGUgc2VwYXJhdG9yKGxlZnQpO1xuICB9XG5cbiAgLnNlcGFyYXRvci1yaWdodCB7XG4gICAgQGluY2x1ZGUgc2VwYXJhdG9yKHJpZ2h0KTtcbiAgfVxuXG5cdEBpZiAoJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1zZXBhcmF0b3ItY2VudGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNlcGFyYXRvcihjZW50ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuI3skc2l6ZX0tc2VwYXJhdG9yLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgc2VwYXJhdG9yKGxlZnQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuI3skc2l6ZX0tc2VwYXJhdG9yLXJpZ2h0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNlcGFyYXRvcihyaWdodCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwcm90b3R5cGUtcG9zaXRpb25cbi8vLy9cblxuLy8vIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHBvc2l0aW9uIGhlbHBlcnNcbi8vLyBAdHlwZSBCb29sZWFuXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cyAhZGVmYXVsdDtcblxuLy8vIE1hcCBjb250YWluaW5nIGFsbCB0aGUgYHBvc2l0aW9uYCBjbGFzc2VzXG4vLy8gQHR5cGUgTWFwXG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXG4gIHN0YXRpYyxcbiAgcmVsYXRpdmUsXG4gIGFic29sdXRlLFxuICBmaXhlZFxuKSAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIGZpeGVkIHBvc2l0aW9uaW5nXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvdG90eXBlLXBvc2l0aW9uLXotaW5kZXg6IDk3NSAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uIGNsYXNzZXMsIGJ5IGRlZmF1bHQgY29taW5nIHRocm91Z2ggYSBtYXAgYCRwcm90b3R5cGUtcG9zaXRpb25gLCB3aGVyZWFzIGFsbCB0aGUgb2Zmc2V0IHZhbHVlcyBhcmUgbXVsdGlwbGllZCBieSBgJGdsb2JhbC1wb3NpdGlvbmAgd2hpY2ggYnkgZGVmYXVsdCBpcyBlcXVhbCB0byBgMXJlbWAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwb3NpdGlvbiBbXSBQb3NpdGlvbiBjbGFzc2VzLCBFaXRoZXIgYHN0YXRpY2AsIGByZWxhdGl2ZWAsIGBhYnNvbHV0ZWAgb3IgYGZpeGVkYFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9wIFtudWxsXSAtIFRvcCBvZmZzZXRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHJpZ2h0IFtudWxsXSAtIFJpZ2h0IG9mZnNldFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYm90dG9tIFtudWxsXSAtIEJvdHRvbSBvZmZzZXRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGxlZnQgW251bGxdIC0gTGVmdCBvZmZzZXRcbkBtaXhpbiBwb3NpdGlvbihcbiAgJHBvc2l0aW9uLFxuICAkdG9wOiBudWxsLFxuICAkcmlnaHQ6IG51bGwsXG4gICRib3R0b206IG51bGwsXG4gICRsZWZ0OiBudWxsXG4pIHtcbiAgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50O1xuICBAaWYgJHRvcCAhPSBudWxsIHtcbiAgICB0b3A6ICR0b3AgKiAkZ2xvYmFsLXBvc2l0aW9uICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRyaWdodCAhPSBudWxsIHtcbiAgICByaWdodDogJHJpZ2h0ICogJGdsb2JhbC1wb3NpdGlvbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkYm90dG9tICE9IG51bGwge1xuICAgIGJvdHRvbTogJGJvdHRvbSAqICRnbG9iYWwtcG9zaXRpb24gIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGxlZnQgIT0gbnVsbCB7XG4gICAgbGVmdDogJGxlZnQgKiAkZ2xvYmFsLXBvc2l0aW9uICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFBvc2l0aW9uIEZpeGVkIG9uIHRvcCBjb3JuZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR6LWluZGV4IFskcHJvdG90eXBlLXBvc2l0aW9uLXotaW5kZXhdIHotaW5kZXggZm9yIGBwb3NpdGlvbi1maXhlZC10b3BgXG5AbWl4aW4gcG9zaXRpb24tZml4ZWQtdG9wKFxuICAkei1pbmRleDogJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4XG4pIHtcbiAgQGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIDAsIDAsIG51bGwsIDApO1xuICB6LWluZGV4OiAkei1pbmRleDtcbn1cblxuLy8vIFBvc2l0aW9uIEZpeGVkIG9uIGJvdHRvbSBjb3JuZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR6LWluZGV4IFskcHJvdG90eXBlLXBvc2l0aW9uLXotaW5kZXhdIHotaW5kZXggZm9yIGBwb3NpdGlvbi1maXhlZC1ib3R0b21gXG5AbWl4aW4gcG9zaXRpb24tZml4ZWQtYm90dG9tKFxuICAkei1pbmRleDogJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4XG4pIHtcbiAgQGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIG51bGwsIDAsIDAsIDApO1xuICB6LWluZGV4OiAkei1pbmRleDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLXBvc2l0aW9uIHtcbiAgLy8gUG9zaXRpb246IFN0YXRpYywgUmVsYXRpdmUsIEZpeGVkLCBBYnNvbHV0ZVxuICBAZWFjaCAkcG9zaXRpb24gaW4gJHByb3RvdHlwZS1wb3NpdGlvbiB7XG4gICAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICBAaW5jbHVkZSBwb3NpdGlvbigkcG9zaXRpb24pO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBvc2l0aW9uOiBGaXhlZCBUb3AsIEZpeGVkIEJvdHRvbVxuICAucG9zaXRpb24tZml4ZWQtdG9wIHtcbiAgICBAaW5jbHVkZSBwb3NpdGlvbi1maXhlZC10b3A7XG4gIH1cbiAgLnBvc2l0aW9uLWZpeGVkLWJvdHRvbSB7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24tZml4ZWQtYm90dG9tO1xuICB9XG5cbiAgQGlmICgkcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgLy8gUG9zaXRpb246IFN0YXRpYywgUmVsYXRpdmUsIEZpeGVkLCBBYnNvbHV0ZVxuICAgICAgICBAZWFjaCAkcG9zaXRpb24gaW4gJHByb3RvdHlwZS1wb3NpdGlvbiB7XG4gICAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbigkcG9zaXRpb24pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBvc2l0aW9uOiBGaXhlZCBUb3AsIEZpeGVkIEJvdHRvbVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1wb3NpdGlvbi1maXhlZC10b3Age1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24tZml4ZWQtdG9wO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1wb3NpdGlvbi1maXhlZC1ib3R0b20ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24tZml4ZWQtYm90dG9tO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuXG4vLyBTbGljayBpY29uIGVudGl0eSBjb2RlcyBvdXRwdXRzIHRoZSBmb2xsb3dpbmdcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXG4vLyBcIlxcMjAyMlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oCiXCJcblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuL2ZvbnRzL1wiICFkZWZhdWx0O1xuJHNsaWNrLWZvbnQtZmFtaWx5OiBcImljb21vb25cIiAhZGVmYXVsdDtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFxlOTA4XCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFxlOTBhXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogMjBweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDEgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgfVxufVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWRpc2FibGVke1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgjYWNhY2FjLCAwLjUpO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgjYWNhY2FjLCAwLjUpO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbn1cblxuLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDhweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogOHB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiA4cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogOHB4O1xuICAgICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIERvdHMgKi9cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMjVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIiRib3JkZXItY29sb3I6ICRsaWdodC1ncmF5O1xuJGJvcmRlci1zdHlsZTogc29saWQ7XG4kYm9yZGVyLXdpZHRoOiAxcHg7XG4kY29udGFpbmVyLWJvcmRlcjogMXB4ICRib3JkZXItc3R5bGUgJGJvcmRlci1jb2xvcjtcbiRjb250YWluZXItYm94LXNoYWRvdzogMCAzcHggMjVweCByZ2JhKDAsMCwwLC4zKTtcblxuQG1peGluIGNvbnRhaW5lci1ib3JkZXIoJHNoYWRvdzogZmFsc2UpIHtcbiAgYm9yZGVyOiAkY29udGFpbmVyLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRzaGFkb3cge1xuICAgIGJveC1zaGFkb3c6ICRjb250YWluZXItYm94LXNoYWRvdztcbiAgfSBAZWxzZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyKCRkaXJlY3Rpb24sICR3aWR0aDogJGJvcmRlci13aWR0aCwgJHN0eWxlOiAkYm9yZGVyLXN0eWxlLCAkY29sb3I6ICRib3JkZXItY29sb3IpIHtcbiAgYm9yZGVyLSN7JGRpcmVjdGlvbn06ICR3aWR0aCAkc3R5bGUgJGNvbG9yO1xufVxuXG4uY29udGFpbmVyLWRpdmlkZXItcmlnaHQge1xuICBib3JkZXItYm90dG9tOiAkY29udGFpbmVyLWJvcmRlcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGJvcmRlci1yaWdodDogJGNvbnRhaW5lci1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuIiwiQG1peGluIGF2YXRhcigkaGVpZ2h0LCAkd2lkdGgsICRyYWRpdXMpIHtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICB3aWR0aDogJHdpZHRoO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xufVxuXG4uYXZhdGFyIHtcbiAgQGluY2x1ZGUgYXZhdGFyKDQwcHgsIDQwcHgsIDUwJSk7XG4gIG1pbi13aWR0aDogNDBweDtcblxuICAmLmF2YXRhci1zbWFsbCB7XG4gICAgQGluY2x1ZGUgYXZhdGFyKDI1cHgsIDI1cHgsIDUwJSk7XG4gIH1cblxuICAmLmF2YXRhci1sYXJnZSB7XG4gICAgQGluY2x1ZGUgYXZhdGFyKDEwMHB4LCAxMDBweCwgNTAlKTtcbiAgfVxufVxuIiwiQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAzIHtcbiAgJG1hcmdpbjogKCRpKTtcblxuICAubWIjeyRpfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbityZW0gIWltcG9ydGFudDtcbiAgfVxufVxuIiwiJHNpZGVsaW5lcy10ZXh0LWFsaWduLWxlZnQ6IGZhbHNlICFkZWZhdWx0O1xuJHNpZGVsaW5lcy10ZXh0LXBhZGRpbmc6IDAuNWVtICFkZWZhdWx0O1xuJHNpZGVsaW5lcy1saW5lLXRoaWNrbmVzczogMnB4ICFkZWZhdWx0O1xuJHNpZGVsaW5lcy1saW5lLWxlbmd0aDogOTk5OXB4ICFkZWZhdWx0O1xuJHNpZGVsaW5lcy1saW5lLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuJHNpZGVsaW5lcy1saW5lLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRzaWRlbGluZXMtZG91YmxlLWxpbmU6IGZhbHNlICFkZWZhdWx0O1xuJHNpZGVsaW5lcy1kb3VibGUtbGluZS1zcGFjaW5nOiAwLjVlbSAhZGVmYXVsdDtcblxuQG1peGluIHNpZGVsaW5lcyhcbiAgJHRleHQtcGFkZGluZzogJHNpZGVsaW5lcy10ZXh0LXBhZGRpbmcsXG4gICR0ZXh0LWxlZnQ6ICRzaWRlbGluZXMtdGV4dC1hbGlnbi1sZWZ0LFxuICAkbGluZS10aGlja25lc3M6ICRzaWRlbGluZXMtbGluZS10aGlja25lc3MsXG4gICRsaW5lLWxlbmd0aDogJHNpZGVsaW5lcy1saW5lLWxlbmd0aCxcbiAgJGxpbmUtY29sb3I6ICRzaWRlbGluZXMtbGluZS1jb2xvcixcbiAgJGxpbmUtc3R5bGU6ICRzaWRlbGluZXMtbGluZS1zdHlsZSxcbiAgJGRvdWJsZS1saW5lOiAkc2lkZWxpbmVzLWRvdWJsZS1saW5lLFxuICAkZG91YmxlLWxpbmUtc3BhY2luZzogJHNpZGVsaW5lcy1kb3VibGUtbGluZS1zcGFjaW5nICkge1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpZiAkdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9IEBlbHNlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICR0ZXh0LXBhZGRpbmc7XG5cbiAgICBAaWYgJHRleHQtbGVmdCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfSBAZWxzZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICR0ZXh0LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAkbGluZS1sZW5ndGg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvcmRlci10b3Atc3R5bGU6ICRsaW5lLXN0eWxlO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpbmUtdGhpY2tuZXNzO1xuXG4gICAgICBAaWYgJGxpbmUtY29sb3IgIT0gbnVsbCB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRsaW5lLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGRvdWJsZS1saW5lIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogJGxpbmUtc3R5bGU7XG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICRsaW5lLXRoaWNrbmVzcztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxpbmUtY29sb3I7XG4gICAgICAgIGhlaWdodDogJGRvdWJsZS1saW5lLXNwYWNpbmc7XG4gICAgICAgIG1hcmdpbi10b3A6IC0oJGRvdWJsZS1saW5lLXNwYWNpbmcvMik7XG4gICAgICB9IEBlbHNlIGlmICRsaW5lLXRoaWNrbmVzcyA+IDEge1xuICAgICAgICBtYXJnaW4tdG9wOiAtKGZsb29yKCRsaW5lLXRoaWNrbmVzcy8yKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4udHlwZS1zaWRlbGluZXMge1xuICBAaW5jbHVkZSBzaWRlbGluZXMoJHRleHQtbGVmdDogdHJ1ZSk7XG59XG5cbi50eXBlLXNpZGVsaW5lcy1kb3R0ZWQge1xuICBAaW5jbHVkZSBzaWRlbGluZXMoJHRleHQtbGVmdDogdHJ1ZSwgJGxpbmUtc3R5bGU6IGRvdHRlZCk7XG59XG5cbi5kb3VibGUge1xuICBAaW5jbHVkZSBzaWRlbGluZXMoJGRvdWJsZS1saW5lOiB0cnVlKTtcbn1cblxuLmN1c3RvbSB7XG4gIEBpbmNsdWRlIHNpZGVsaW5lcyhcbiAgICAkdGV4dC1wYWRkaW5nOiAyMHB4LFxuICAgICRsaW5lLWxlbmd0aDogMTAwJSxcbiAgICAkbGluZS1jb2xvcjogIzI5ODBiOSxcbiAgICAkbGluZS10aGlja25lc3M6IDRweCxcbiAgICAkbGluZS1zdHlsZTogZG90dGVkXG4gICk7XG59XG5cbi5jdXN0b20tMiB7XG4gIEBpbmNsdWRlIHNpZGVsaW5lcyhcbiAgICAkbGluZS1jb2xvcjogIzI3YWU2MCxcbiAgICAkbGluZS10aGlja25lc3M6IDRweFxuICApO1xufVxuIiwiJHotbGF5ZXJzOiAoXG4gIGJvdHRvbWxlc3MtcGl0OiAtOTk5OSxcbiAgZGVmYXVsdDogMSxcbiAgZHJvcGRvd246IDMwMDAsXG4gIHRoaW5nOiA0MDAwLFxuICBtb2RhbDogNDAwMVxuKTtcblxuLy8gX2Z1bmN0aW9ucy5zY3NzXG5AZnVuY3Rpb24geigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkei1sYXllcnMsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHotbGF5ZXJzLCAka2V5KTtcbiAgfVxuXG4gIEB3YXJuIFwiVW5rbm93biBgI3ska2V5fWAgaW4gJHotbGF5ZXJzLlwiO1xuICBAcmV0dXJuIG51bGw7XG59XG5cbi8vIHVzYWdlXG4udGhpbmcge1xuICB6LWluZGV4OiB6KHRoaW5nKTtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLm5hdi1jb250YWluZXIge1xuICA+IHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgfVxuICAgIC51cmR1LXRoZW1lICYge1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgIH1cbiAgICA+IGxpIHtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gJjphZnRlciB7XG4gICAgICAgICAgLy8gICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAvLyB9XG4gICAgICAgIH1cbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgIC1tcy10cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICAtby10cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWItbWVnYS1tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgLW1zLXRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgIC1vLXRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDExcHggOHB4IDExcHggMTZweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgcGFkZGluZzogMTJweCAxNnB4IDEycHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiB1bCB7XG4gICAgPiBsaSA+IHVsLFxuICAgIGxpID4gLnN1Yi1tZWdhLW1lbnUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgIHotaW5kZXg6IDIwMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGFsbDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogI2VjMWEyZTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy9kZWZhdWx0IHN1Ym1lbnVcbiAgICA+IGxpID4gdWwge1xuICAgICAgbGkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQ3NDc0NztcbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAyMnB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vbWVnYSBzdWIgbWVudVxuICAgIGxpID4gLnN1Yi1tZWdhLW1lbnUge1xuICAgICAgbGkge1xuICAgICAgICBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4IDAgMTBweCAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3ViLW1lZ2EtbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbiNzdGlja3ktaGVhZGVyLXdheXBvaW50IHtcbiAgJi5zdGlja3kge1xuICB9XG59XG4iLCIubWVudS12aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAuYWQtYmxvY2staGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gIH1cbn1cblxuLm1lbnUtdmlzaWJsZSAjbWFpbi1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1lbnUtdmlzaWJsZSAjbmF2LXBhbmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tZW51LXZpc2libGUgLnN1YmhlYWRlci1ibG9jayB1bCBsaSB7XG4gICYuZWRpdGlvbixcbiAgJi5zZWFyY2gge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLm1lbnUtdmlzaWJsZSBtYWluLFxuLm1lbnUtdmlzaWJsZSAubWFpbi1oZWFkZXItaW5uZXIsXG4ubWVudS12aXNpYmxlICNtYWluLWZvb3RlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5uYXYtcGFuZWwtd3JhcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAubWVudS12aXNpYmxlICYge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuICB9XG59XG5cbiNuYXYtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB3aWR0aDogMTEwMHB4O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICB9XG59XG5cbi5uYXYtcGFuZWwge1xuICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgIG1hcmdpbjogMCAtMXJlbTtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAzNXB4O1xuICAgICAgICAgICAgICAtd2Via2l0LWNvbHVtbnM6IDI7XG4gICAgICAgICAgICAgIC1tb3otY29sdW1uczogMjtcbiAgICAgICAgICAgICAgY29sdW1uczogMjtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgIH1cbiAgfVxuXG4gIHVsLnRvcGljcyB7XG4gICAgICA+IGxpOm5vdCguZXhwYW5kZWQpIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgfVxuICAgICAgPiBsaS5leHBhbmRlZCB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAubWVudS12aXNpYmxlICYge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgPiBsaSB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWxlZnQyO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctcmlnaHQyO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAwO1xuICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTNweCAwO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgLm5hdi1wYW5lbCBmb3JtLnNlYXJjaCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgLm5hdi1wYW5lbCAudG9waWNzIC50b2dnbGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ubmF2LXBhbmVsIC50b3BpY3MgLmV4cGFuZGVkIC50b2dnbGUgc3BhbiB7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSB7XG4gIG1heC1oZWlnaHQ6IDQwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgLnRvZ2dsZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTkwN1wiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMnB4O1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIHRleHQtYWxpZ246ICRvcHBvc2l0ZS1kaXJlY3Rpb247XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgfVxufVxuXG4ubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gYSB7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBwYWRkaW5nOiA5cHggMjBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIHBhZGRpbmc6IDlweCAwO1xuICB9XG4gIC5tZW51LXZpc2libGUgJiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICB9XG59XG5cbi5uYXYtcGFuZWwgdWwudG9waWNzID4gbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICNlYzFhMmU7XG59XG5cbi8qQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MTlweCkge1xuICAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gdWwge1xuICAgIC13ZWJraXQtY29sdW1uczogMjtcbiAgICAtbW96LWNvbHVtbnM6IDI7XG4gICAgY29sdW1uczogMjtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyMHB4KSBhbmQgKG1heC13aWR0aDogOTI5cHgpIHtcbiAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSA+IHVsIHtcbiAgICAtd2Via2l0LWNvbHVtbnM6IDM7XG4gICAgLW1vei1jb2x1bW5zOiAzO1xuICAgIGNvbHVtbnM6IDM7XG4gIH1cbn0qL1xuXG4ubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gdWwgYTpob3ZlciB7XG4gIGNvbG9yOiAjZWMxYTJlO1xufVxuXG4ubmF2LXBhbmVsIC5zb2NpYWxzLWFyZWEge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBwYWRkaW5nOiAxM3B4IDA7XG59XG5cbi5uYXYtcGFuZWwgLnNvY2lhbHMtYXJlYSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLm5hdi1wYW5lbCAuc29jaWFscy1hcmVhIHtcbiAgaDYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG4gIC5zb2NpYWxzLWJ0bnMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG4ubmF2LXBhbmVsIC5zb2NpYWxzLWFyZWEgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlYzFhMmU7XG59XG5cbi5uYXYtcGFuZWwgLnNlY0J1dHRvbnMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICB0ZXh0LWFsaWduOiAkZGVmYXVsdC1kaXJlY3Rpb247XG59XG5cbi5uYXYtcGFuZWwgLnNlY0J1dHRvbnMgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5zdWJzY3JpYmUtZmllbGQge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBicmVha3BvaW50KDYzMHB4IGRvd24pIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gIC5uYXYtcGFuZWwgPiB1bDphZnRlcixcbiAgLm5hdi1wYW5lbCA+IHVsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAubmF2LXBhbmVsID4gdWw6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gIH1cblxuICAubmF2LXBhbmVsIC5zb2NpYWxzLWFyZWEge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICB9XG5cbiAgLm5hdi1wYW5lbCAuc2VjQnV0dG9ucyB7XG4gICAgICB0ZXh0LWFsaWduOiAkb3Bwb3NpdGUtZGlyZWN0aW9uO1xuICB9XG5cbiAgLm5hdi1wYW5lbCB1bC50b3BpY3MgPiBsaSB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICBmbG9hdDogJGRlZmF1bHQtZGlyZWN0aW9uO1xuICAgICAgd2lkdGg6IDE1NHB4O1xuICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAubmF2LXBhbmVsIHVsLnRvcGljcyA+IGxpID4gYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gIC5uYXYtcGFuZWwgdWwudG9waWNzID4gbGk6bnRoLWNoaWxkKDYpIHtcbiAgICAgIGNsZWFyOiAkZGVmYXVsdC1kaXJlY3Rpb247XG4gIH1cbn1cbiIsIiNub3Rmb3VuZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogNDUwcHg7XG59XG5cbiNub3Rmb3VuZCAubm90Zm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5ub3Rmb3VuZCB7XG4gIG1heC13aWR0aDogNzEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTkwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG59XG5cbi5ub3Rmb3VuZCAuaW5wdXQtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ub3Rmb3VuZCAubm90Zm91bmQtNDA0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDE1MHB4O1xuICBoZWlnaHQ6IDE1MHB4O1xufVxuXG4ubm90Zm91bmQgLm5vdGZvdW5kLTQwNCBoMSB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOiAxNTBweDtcbiAgLy9sZXR0ZXItc3BhY2luZzogMTUuNXB4O1xuICBtYXJnaW46IDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aDoxMDAlXG59XG5cbi5ub3Rmb3VuZCBoMiB7XG4gIGNvbG9yOiAjMjkyOTI5O1xuICBmb250LXNpemU6IDI4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8vbGV0dGVyLXNwYWNpbmc6IDIuNXB4O1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ubm90Zm91bmQgcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5ub3Rmb3VuZCBhIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTVweCAzMHB4O1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICBjb2xvcjogIzI5MjkyOTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggNHB4IDE1cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJveC1zaGFkb3c6IDBweCA0cHggMTVweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjJzIGFsbDtcbiAgdHJhbnNpdGlvbjogMC4ycyBhbGw7XG59XG5cbi5ub3Rmb3VuZCBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAubm90Zm91bmQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubm90Zm91bmQgLm5vdGZvdW5kLTQwNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbiAgLm5vdGZvdW5kIHtcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTVweDtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDE1cHg7XG4gIH1cbn1cbiIsImJvZHkuc2hvd3MtdmlkZW8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuXG4gIC5sb2dvLWRlZmF1bHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmxvZ28td2hpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaGVhZGVyI21haW4taGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZWMxYTJlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hZC1ibG9jay1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgfVxufVxuLnNob3dzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICBjb2xvcjogJHdoaXRlO1xuICAmX19iYW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDYwMHB4O1xuXG4gICAgLy8gJjpiZWZvcmUge1xuICAgIC8vICAgY29udGVudDogXCJcIjtcbiAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgIGxlZnQ6IDA7XG4gICAgLy8gICB0b3A6IDA7XG4gICAgLy8gICByaWdodDogMDtcbiAgICAvLyAgIGJvdHRvbTogMDtcbiAgICAvLyAgIGJhY2tncm91bmQ6IHJnYigwLCAwLCAwKTtcbiAgICAvLyAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAvLyAgICAgOTBkZWcsXG4gICAgLy8gICAgIHJnYmEoMCwgMCwgMCwgMCkgMCUsXG4gICAgLy8gICAgIHJnYmEoMCwgMCwgOSwgMC40ODM2MzA5NTIzODA5NTIzMykgNTAlLFxuICAgIC8vICAgICByZ2JhKDIsIDAsIDM2LCAwLjczNTczMTc5MjcxNzA4NjgpIDEwMCVcbiAgICAvLyAgICk7XG4gICAgLy8gICB6LWluZGV4OiAxO1xuICAgIC8vIH1cbiAgICAmLWltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWluZm8ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogNDtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtdGl0bGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDIwcHg7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2NXB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDkwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAyMHB4O1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAyMHB4O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgaGVpZ2h0OiA5MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWRlc2Mge1xuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9faW50cm8ge1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5kdXJhdGlvbiB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMC41cmVtO1xuICAgIGxlZnQ6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBwYWRkaW5nOiA0cHggNHB4IDNweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxufVxuXG4uc2hvd3MtZmVhdHVyZWQge1xuICAmX19wYWdlLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE3OSwgMTc5LCAxNzksIDAuNSk7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUtaXRlbSB7XG4gICAgJi10aXRsZSB7XG4gICAgICBoMiB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1lZGlhLXZpZGVvIHtcbiAgICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuOCk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0b3A6IC0xNnB4O1xuICAgICAgICAgIHRleHQtaW5kZW50OiAzcHg7XG4gICAgICAgICAgei1pbmRleDogNDtcblxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTNweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDM2JSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gJjphZnRlciB7XG4gICAgICAgIC8vICAgY29udGVudDogXCJcIjtcbiAgICAgICAgLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgLy8gICBsZWZ0OiAwO1xuICAgICAgICAvLyAgIHJpZ2h0OiAwO1xuICAgICAgICAvLyAgIHRvcDogMDtcbiAgICAgICAgLy8gICBib3R0b206IDA7XG4gICAgICAgIC8vICAgei1pbmRleDogMTtcbiAgICAgICAgLy8gfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYXJ0aWNsZS1oZXJvLm1lZGlhLXZpZGVvIHtcbiAgICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgIHdpZHRoOiA1NnB4O1xuICAgICAgICAgIGhlaWdodDogNTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2hvd3MtaXRlbXMge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICAuc2hvd3MtaXRlbSB7XG4gICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAmLXRpdGxlIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtaW1nIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIHdpZHRoOiAyM3B4O1xuICAgICAgICAgIGhlaWdodDogMjNweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDI2LCA0NiwgMC41KTtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IC0zcHg7XG4gICAgICAgICAgbWFyZ2luOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19jdGEge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5idXR0b24ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLnNob3dzLXZpZGVvIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgJl9faW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICYtY291bnQge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cbiAgfVxuXG4gICZfX2N1cnJlbnQge1xuICAgIC5hcnRpY2xlLWl0ZW0tbWVkaWEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWluLWhlaWdodDogMjI1cHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogNTU1cHg7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xvYWRlciB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgI2UwZTBlMDtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgIzY4Njg2ODtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7XG5cbiAgICBsZWZ0OiA0NiU7XG4gICAgdG9wOiA0MyU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vICAgJl9fcmVsYXRlZCB7XG4gIC8vICAgICBoZWlnaHQ6IDQ0MHB4O1xuICAvLyAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAvLyAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAvLyAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAvLyAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAvLyAgICAgfVxuXG4gIC8vICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIC8vICAgICAgIHdpZHRoOiAxMHB4O1xuICAvLyAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAvLyAgICAgfVxuXG4gIC8vICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIC8vICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIC8vICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM1NTU1NTU7XG4gIC8vICAgICB9XG4gIC8vICAgfVxuXG4gIC8vICAgJl9fbmV4dCB7XG4gIC8vICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gICAgICY6YWZ0ZXIge1xuICAvLyAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vICAgICAgIGJvdHRvbTogMDtcbiAgLy8gICAgICAgd2lkdGg6IDEwMCU7XG4gIC8vICAgICAgIGhlaWdodDogMTAwcHg7XG4gIC8vICAgICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgLy8gICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDAsIDApO1xuICAvLyAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gIC8vICAgICAgICAgMTgwZGVnLFxuICAvLyAgICAgICAgIHJnYmEoMCwgMCwgMCwgMCkgMCUsXG4gIC8vICAgICAgICAgcmdiYSgwLCAwLCA5LCAwLjQ4MzYzMDk1MjM4MDk1MjMzKSA1MCUsXG4gIC8vICAgICAgICAgcmdiYSgyLCAwLCAzNiwgMC43MzU3MzE3OTI3MTcwODY4KSAxMDAlXG4gIC8vICAgICAgICk7XG4gIC8vICAgICB9XG4gIC8vICAgfVxuXG4gIC8vICAgJl9fbGlzdHMge1xuICAvLyAgIH1cbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbiIsIi5tYWluLWhlYWRlciB7XG4gICAgJi1pbm5lciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX25hdmJhciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAzMHB4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMTI1MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLm5hdi1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAvKiBJRSBhbmQgRWRnZSAqL1xuICAgICAgICAgICAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTsgLyogRmlyZWZveCAqL1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC5tZW51IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgIC8vIGdhcDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWFyY2gtYmxvY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLnNlYXJjaC1mb3JtLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMC41cHggc29saWQgIzg4ODtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwLjVweCBzb2xpZCAjODg4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAwLjVweCBzb2xpZCAjODg4O1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDI2MHB4O1xuICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICB3aWR0aDogMzRweDtcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuIiwiI21haW4tZm9vdGVyIHtcbiAgICBtYXJnaW46IDJyZW0gMCAwO1xuICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgY29sb3I6IHdoaXRlO1xuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDk4cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZW5nLXRoZW1lICYsXG4gICAgLnR1cmtpc2gtdGhlbWUgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICAgIH1cblxuICAgIGg2IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVsLm1lbnUudmVydGljYWwge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIC5zb2NpYWwtYnRuIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFpbi1mb290ZXItYmVmb3JlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5tYWluLWZvb3Rlci1pbm5lciB7XG4gICAgJl9fZ3JpZCB7XG4gICAgICAgID4gLmNlbGw6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXB4IHNvbGlkICNlN2U3ZTc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgID4gdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgICAgICAgICAgIG9yZGVyOiA1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogc3BhbiAyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgyKSxcbiAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMTtcbiAgICAgICAgICAgICAgICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSg0KSB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgZmxleDogMSAwIDE0NXB4O1xuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICAgICAgICAgICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1haW4tZm9vdGVyLWFmdGVyIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubG9nby1mb290ZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgIH1cblxuICAgIGxpICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxufVxuXG4uZm9vdGVyLWxpbmtzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIH1cbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbWFyZ2luLXRvcDogLTdweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGNsZWFyOiAkZGVmYXVsdC1kaXJlY3Rpb247XG4gICAgLXdlYmtpdC1jb2x1bW5zOiAyO1xuICAgIC1tb3otY29sdW1uczogMjtcbiAgICBjb2x1bW5zOiAyO1xuICAgIC13ZWJraXQtY29sdW1uLWdhcDogMDtcbiAgICAtbW96LWNvbHVtbi1nYXA6IDA7XG4gICAgY29sdW1uLWdhcDogMDtcblxuICAgIGEge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNtYWxsMztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDUwcHgpIHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW5zOiAzO1xuICAgICAgICAtbW96LWNvbHVtbnM6IDM7XG4gICAgICAgIGNvbHVtbnM6IDM7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogMjBweDtcbiAgICAgICAgLW1vei1jb2x1bW4tZ2FwOiAyMHB4O1xuICAgICAgICBjb2x1bW4tZ2FwOiAyMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW5zOiAyO1xuICAgICAgICAtbW96LWNvbHVtbnM6IDI7XG4gICAgICAgIGNvbHVtbnM6IDI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWRpcmVjdGlvbjtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAtd2Via2l0LWNvbHVtbnM6IDM7XG4gICAgICAgIC1tb3otY29sdW1uczogMztcbiAgICAgICAgY29sdW1uczogMztcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA0MHB4O1xuICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDQwcHg7XG4gICAgICAgIGNvbHVtbi1nYXA6IDQwcHg7XG4gICAgfVxufVxuXG4uZm9vdGVyLW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDhweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXJnaW4tdG9wOiAzNnB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdlN2U3O1xuICAgICAgICAgICAgaGVpZ2h0OiAwLjVweDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvcHlyaWdodCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogODlweDtcbiAgICB9XG59XG5cbi5mb290ZXItZXh0cmEtbGlua3Mge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwxO1xuXG4gICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMC43NXJlbTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAkd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBtZWRpYSBvbmx5IHNjcmVlbiB7XG4gIC5uby1zcGFjZXIge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5uby10b3Atc3BhY2VyIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubm8tYm90dG9tLXNwYWNlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5vLWxlZnQtc3BhY2VyIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5uby1yaWdodC1zcGFjZXIge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudG9wLXNwYWNlci0teGwge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuICAudG9wLXNwYWNlci0tbCB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRvcC1zcGFjZXItLW0ge1xuICAgIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDtcbiAgfVxuICAudG9wLXNwYWNlciB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRvcC1zcGFjZXItLXMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuICAudG9wLXNwYWNlci0teHMge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5ib3R0b20tc3BhY2VyLS14bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5ib3R0b20tc3BhY2VyLS1sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAuYm90dG9tLXNwYWNlci0tbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5ib3R0b20tc3BhY2VyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuICAuYm90dG9tLXNwYWNlci0tcyB7XG4gICAgLy9tYXJnaW4tYm90dG9tOiAwLjc1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweCAhaW1wb3J0YW50O1xuICB9XG4gIC5ib3R0b20tc3BhY2VyLS14cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgIC5jb2x1bW46bGFzdC1jaGlsZCxcbiAgICAgIC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmJvZHkge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgcGFkZGluZy10b3A6IDY5cHg7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nLXRvcDogMTE1cHg7XG4gIH1cblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIC8vIHBhZGRpbmctdG9wOiAxMjJweDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gICYucGVyc2lhbi1zaW1wbGUge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmNhcmQuY2FyZC1pdGVtLmNhcmQtcG9kY2FzdCB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7XG59XG5cbi5ndXR0ZXJzLTF4IHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygyMCwgXCJtYXJnaW5cIiwgJG5lZ2F0aXZlOiB0cnVlKTtcblxuICA+IC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcInBhZGRpbmdcIiwgJG5lZ2F0aXZlOiBmYWxzZSk7XG4gIH1cbn1cblxuLmd1dHRlcnMtMngge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDQwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuXG4gID4gLmNlbGwge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoNDAsIFwicGFkZGluZ1wiLCAkbmVnYXRpdmU6IGZhbHNlKTtcbiAgfVxufVxuXG4uZ3V0dGVycy1tYXJnaW4tMXgge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IGZhbHNlKTtcbiAgfVxufVxuXG4uZ3V0dGVycy1tYXJnaW4tMngge1xuICAvL0BpbmNsdWRlIHh5LWd1dHRlcnMoNDAsICdtYXJnaW4nLCAkbmVnYXRpdmU6IHRydWUpO1xuICAuY2VsbCB7XG4gICAgLy9AaW5jbHVkZSB4eS1ndXR0ZXJzKDQwLCAnbWFyZ2luJywgJG5lZ2F0aXZlOiBmYWxzZSk7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycyg0MCwgbWFyZ2luLCByaWdodCBsZWZ0LCBmYWxzZSk7XG4gIH1cbn1cblxuLypAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gIFtkaXI9XCJydGxcIl0ge1xuICAgIC5sYXJnZS11bmNlbnRlcmVkLCAubGFyZ2UtcHVzaC0wLCAubGFyZ2UtcHVsbC0wIHtcbiAgICAgIGZsb2F0OiAkb3Bwb3NpdGUtZGlyZWN0aW9uO1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG4gIH1cbn0qL1xuXG4udmVydGljYWwtY2VudGVyIHtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyKCk7XG59XG5cbi5jZW50ZXItZWxlbWVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1MCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLnJvdW5kIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwMHB4O1xufVxuXG4udXNlLWxvYWRlciB7XG4gIGhlaWdodDogMzYwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYWpheC1sb2FkZXIuZ2lmKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDtcblxuICA+IGRpdiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxufVxuXG4udXNlLWxvYWRlci5zbGljay1pbml0aWFsaXplZC5zbGljay1sb2FkZWQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gID4gZGl2IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAmLnNsaWRlci1uYXYge1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgfVxufVxuXG4udXNlLWxvYWRlci5zbGljay1pbml0aWFsaXplZC5zbGljay1sb2FkZWQgLnNsaWNrLWxpc3QsXG4udXNlLWxvYWRlci5zbGljay1pbml0aWFsaXplZC5zbGljay1sb2FkZWQgYnV0dG9uIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW47XG59XG5cbi5yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLypcbi5pbnB1dC1ncm91cC53aXRoLXJhZGl1cyA+ICo6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDVweCA1cHggMDtcbn1cblxuLmlucHV0LWdyb3VwLndpdGgtcmFkaXVzID4gKjpsYXN0LWNoaWxkID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDVweCAwIDAgNXB4O1xufVxuKi9cblxuLnNob3ctZm9yLXByaW50YWJsZS1hcmVhIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuaW5wdXQge1xuICAmLnJhZGl1cyxcbiAgLmlucHV0LWdyb3VwID4gJjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB9XG5cbiAgLnNlYXJjaC1mb3JtICYge1xuICAgICYuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMHJlbTtcbn1cblxuLmFyaWFsLWhlYWRpbmcge1xuICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG59XG5cbi5mb250LXByaW1hcnkge1xuICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbn1cblxuLmZvbnQtc2Vjb25kYXJ5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbn1cblxuYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2UgMHMsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSAwcyxcbiAgICBvcGFjaXR5IDAuMjVzIGVhc2UgMHM7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0IHtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIH1cblxuICAudXJkdS10aGVtZSAmIHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5cbi8qXG4ub2ZmLWNhbnZhcyB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmpzLW9mZi1jYW52YXMtZXhpdCB7XG4gIHotaW5kZXg6IDEwO1xufVxuKi9cblxuLypbZGlyPVwicnRsXCJdIC5jbG9zZS1idXR0b24ge1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG59Ki9cblxuLyoucGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogI2FhYTtcbn0qL1xuXG5wIHtcbiAgZm9udC1zaXplOiAkcGFyYWdyYXBoLWZvbnQtc2l6ZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgMC41cmVtO1xuXG4gICYucm91bmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLmxlYWRlcmJvYXJkLWFkIHtcbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5idXR0b24sXG4uYnV0dG9uIHtcbiAgJi5yYWRpdXMge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgfVxuXG4gICYuc2Vjb25kYXJ5IHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYuZ3JheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdhaW5zYm9ybztcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLyogLS0tLS0tIG5hdmlnYXRpb24sIHBhbmVsIGFuZCBzdGlja3kgaGVhZGVyIC0tLS0tLSBTVEFSVCAtLS0tLS0gKi9cblxuI3N0aWNreS1oZWFkZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAtMTAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UgMHM7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAmLnN0dWNrLWhlYWRlciB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMHB4IDFweCAycHg7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMTBweCAwICRncmF5O1xuICAgIC8qfiAuY2FudmFzLXBhbmVsIHtcbiAgICAgIHRvcDogNDBweDtcbiAgICB9Ki9cbiAgfVxufVxuXG4uc3RpY2t5LWhlYWRlci1zcGFjZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnRvZ2dsZS1uYXYtcGFuZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwIDEuNXJlbTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gIH1cbn1cblxuLyogLS0tLS0tIG5hdmlnYXRpb24sIHBhbmVsIGFuZCBzdGlja3kgaGVhZGVyIC0tLS0tLSBFTkQgLS0tLS0tICovXG5cbi5jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3cteDogY2xpcDtcbn1cblxubWFpbixcbmhlYWRlcixcbmZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxubWFpbiB7XG4gIG1hcmdpbjogMCBhdXRvIDNyZW07XG5cbiAgLmZyb250ICYge1xuICB9XG5cbiAgLnBlcnNpYW4tc2ltcGxlICYge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNzVyZW07XG4gICAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICAgIH1cbiAgfVxufVxuXG4ubW9iaWxlLXdlYnZpZXcge1xuICBwYWRkaW5nOiAwO1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIG1haW4ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS10aXRsZSBoMSxcbiAgLmVudHJ5LW1ldGEtZmllbGQuZW50cnktbWV0YS1hdXRob3IgPiBhIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbn1cblxuLnN0YXRpYy1jb2x1bW4td3JhcCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICB3aWR0aDogNjQwcHg7XG4gIH1cbn1cblxuLmNvbnRlbnQtd3JhcCxcbi5zdGF0aWMtY29sdW1uLXdyYXAge1xuICAuZXF1YWxpc2UtY29sdW1ucyAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbmhlYWRlciNtYWluLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgLy8gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTAwMDAwMDtcbiAgLy8gIHRvcDogMDtcbiAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZzogMCAyMnB4O1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICB3aWR0aDogMTc4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDIxOCwgMjIzLCAyMjUsIDAuNSk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDAgMXB4IDFweDtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGJvcmRlci13aWR0aDogMXB4IDFweCAxcHggMDtcbiAgfVxuXG4gIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICY6aG92ZXIge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZm9udC1mYW1pbHk6IFRhaG9tYTtcbiAgICAgIC8vdGV4dC1hbGlnbjogJG9wcG9zaXRlLWRpcmVjdGlvbjtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxNnB4IDAgMTZweCAyNHB4O1xuXG4gICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBwYWRkaW5nOiAxNnB4IDI0cHggMTZweCAwO1xuICAgICAgfVxuXG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5jaGVjay1pY29uIHtcbiAgcGFkZGluZzogMCAwLjI1cmVtO1xufVxuXG4uc2VhcmNoLWZvcm0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiAxNXB4IDI1cHggMTVweCAxOHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmc6IDEycHg7XG4gIH1cblxuICA+IGRpdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgJi5vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5zZWFyY2gtZm9ybS1pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmZvcm0tZmllbGQsXG4gIC5mb3JtLWl0ZW0uZm9ybS10eXBlLXRleHRmaWVsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDM7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuXG4ubWFpbi1oZWFkZXItYmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjE4LCAyMjMsIDIyNSwgMC43KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcHJpbWFyeS1ncmFwaGl0ZTtcbiAgICB9XG4gIH1cbiAgJl9faW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB3aWR0aDogMTI1MHB4O1xuICAgIH1cbiAgfVxufVxuXG4ubWFnLW1ldGEge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xufVxuXG4uc3ViaGVhZGVyLWJsb2NrMSB7XG4gIGhlaWdodDogMTAwJTtcblxuICA+IHVsIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5lbmctdGhlbWUgJixcbiAgICAudHVya2lzaC10aGVtZSAmIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwyO1xuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLy8gYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCByZ2JhKDIxOCwgMjIzLCAyMjUsIC43KTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAmLmFjY291bnQsXG4gICAgICAgICYuZWRpdGlvbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IGEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5zdWJzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDYzMHB4IGRvd24pIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEuMjVyZW0gMCAwO1xuXG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDEuMjVyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiA2cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucXVpY2stc2VhcmNoIHtcbiAgICAgICAgLm1haW4taGVhZGVyLWJlZm9yZSAmIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvKkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9Ki9cbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZWRpdGlvbiB7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZzogMCAxLjYyNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5hY2NvdW50IHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3ViaGVhZGVyLWJsb2NrIHtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gID4gdWwge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLmVuZy10aGVtZSAmLFxuICAgIC50dXJraXNoLXRoZW1lICYge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDI7XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXB4IHNvbGlkIHJnYmEoMjE4LCAyMjMsIDIyNSwgMC43KTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjMWEyZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAmLmFjY291bnQsXG4gICAgICAgICYuZWRpdGlvbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IGEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5zdWJzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDYzMHB4IGRvd24pIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEuMjVyZW0gMCAwO1xuXG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDEuMjVyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiA2cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucXVpY2stc2VhcmNoIHtcbiAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1haW4taGVhZGVyLWJlZm9yZSAmIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvKkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9Ki9cbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZWRpdGlvbiB7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZzogMCAxLjYyNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5hY2NvdW50IHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubG9nbyB7XG4gIG1hcmdpbjogMTJweCAwO1xuICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTZweDtcblxuICBpbWcge1xuICAgIGhlaWdodDogMjdweDtcblxuICAgIFtkaXI9XCJydGxcIl0gJixcbiAgICAudHVya2lzaC10aGVtZSAmIHtcbiAgICAgIGhlaWdodDogNDRweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogMzRweDtcblxuICAgICAgW2Rpcj1cInJ0bFwiXSAmLFxuICAgICAgLnR1cmtpc2gtdGhlbWUgJiB7XG4gICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmxvZ28td2hpdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubG9nby10eHQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KDM1MCkge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuMjVyZW07XG4gIH1cbn1cblxuLmhvbGRlci1hcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGhlYWRlciAmLFxuICAuc3ViaGVhZGVyLWJsb2NrICYge1xuICAgIGhlaWdodDogMzBweDtcbiAgICB3aWR0aDogMzRweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG4uY3VycmVudC10aW1lLFxuLmN1cnJlbnQtaXNzdWUtbnVtYmVyIHtcbiAgZm9udC1mYW1pbHk6IEFyaWFsO1xuICBmb250LXNpemU6ICRmb250LXNtYWxsMztcbn1cblxuLmVudHJ5LWNvbW1lbnRzIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAuYm94LXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cbiAgICBoMyxcbiAgICBoNCB7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbW1lbnRzLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzbW9rZTtcbiAgYm9yZGVyOiAycHggc29saWQgJGdyYXk7XG4gIHBhZGRpbmc6IDAgMC41cmVtIDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuXG4uY29tbWVudHMtaGVhZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAtMjJweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuXG4gIGg0LFxuICBoNSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBtYXJnaW46IDFyZW0gMCAwO1xuICB9XG59XG5cbi5jb21tZW50cy1pbm5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgY29sb3I6ICM3MDcwNzA7XG5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5jdXN0b20taWNvbi1taW51cyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIi1cIjtcbiAgICBmb250LWZhbWlseTogdmVyZGFuYTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgfVxufVxuXG4uZ3JpZC1pdGVtcyB7XG4gICYuc3R5bGUtdjIge1xuICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjYmZiZmJmO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLWJvdHRvbS1ib3JkZXIge1xuICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uZ3JpZC1pdGVtcy13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmZpbGwtY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAmLmFicy1lbGVtZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICBib3R0b206IDA7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgfVxuXG4gIC5hcnRpY2xlLWl0ZW0taW1nICYsXG4gIC5lbnRyeS1tZWRpYS1pbm5lci1pbWcgJiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgYm90dG9tOiAwO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIH1cbn1cblxuLnNpemVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiA2Ni42NjY3JTtcblxuICAuZW50cnktbWVkaWEgJiB7XG4gICAgcGFkZGluZy10b3A6IDc1JTtcbiAgfVxuXG4gIC53aXRoLXNxdWFyZS1zaXplciAmIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgfVxuXG4gIC5ub2RlLXR5cGUtY2FydG9vbnMgJixcbiAgLnBhZ2UtY2FydG9vbnMgJixcbiAgLmFydGljbGUtYmxvY2stY2FydG9vbiAmIHtcbiAgICBwYWRkaW5nLXRvcDogNzIlO1xuICB9XG5cbiAgLyouZW50cnktbWVkaWEtaW5uZXItaW1nICYge1xuICAgIHBhZGRpbmctdG9wOiA0MCU7XG4gIH0qL1xufVxuXG4uYXJ0aWNsZS1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIC5hcnRpY2xlLWl0ZW0taW1nLFxuICAvLyAubWVkaWEtb2JqZWN0LWltZyB7XG4gIC8vICAgJltkYXRhLW1lZGlhPVwiandWaWRlb1wiXSB7XG4gIC8vICAgICBpbWcsXG4gIC8vICAgICAuc2l6ZXIge1xuICAvLyAgICAgICBkaXNwbGF5OiBub25lO1xuICAvLyAgICAgfVxuICAvLyAgIH1cblxuICAvLyAgICZbZGF0YS1tZWRpYT1cImp3VmlkZW9TbVwiXSB7XG4gIC8vICAgICBpbWcsXG4gIC8vICAgICAuc2l6ZXIge1xuICAvLyAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgLy8gICAgICAgICBkaXNwbGF5OiBub25lO1xuICAvLyAgICAgICB9XG4gIC8vICAgICB9XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgJi5hcnRpY2xlLWhlcm8ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAvL292ZXJmbG93OiBoaWRkZW47XG4gICAgLy8gbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuXG4gICAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC02cHg7XG4gICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICAgICAgPiA6bm90KC5jYXRlZ29yeS1maWVsZCkge1xuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubWVkaWEtdmlkZW8sXG4gICAgJi5tZWRpYS1hdWRpbyB7XG4gICAgICAuYWJzLWJvdHRvbS1lbGVtZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDI0cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgIC8vIG1hcmdpbi10b3A6IC04MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuOCk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0b3A6IC0xNnB4O1xuICAgICAgICAgIHRleHQtaW5kZW50OiAzcHg7XG5cbiAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC0zcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIC5zcGxhc2gtcm93ID4gLmdyaWQteCA+IC5jZWxsLmxhcmdlLTggPiAmIHtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDZweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICB0b3A6IC0yOHB4O1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiA1NnB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1NnB4O1xuXG4gICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC02cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1lZGlhLWF1ZGlvIHtcbiAgICAgIC5hYnMtYm90dG9tLWVsZW1lbnQge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MWVcIjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zcGxhc2gtcm93ICYge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZXMtbGlzdCAmIHtcbiAgICAmLmFydGljbGUtaGVybyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi52aWRlby1ncmlkLXN0b3J5IHtcbiAgICAmLmltZy1hcy1iZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDM2MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZnVsbC1ncmlkLXN0b3J5IHtcbiAgICAmLnJlbGF0ZWQtY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6ICRmb250LWxhcmdlMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnkge1xuICAgICAgbWFyZ2luLXRvcDogLTI3cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgICYuaW1nLWFzLWJnIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZCh2ZXJ0aWNhbCwgbm93cmFwKTtcbiAgICAgICAgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0bywgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5oYWxmLWdyaWQtc3Rvcnkge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG5cbiAgICAmLmltZy1hcy1iZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNTYuMjUlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBoZWlnaHQ6IDI5MHB4O1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1pdGVtcy5tZWRpdW0tdXAtMyAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgIGhlaWdodDogMjMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnNtYWxsLWdyaWQtc3Rvcnkge1xuICAgICYuaW1nLWFzLWJnIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogMjMwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jYXJkLWdyaWQtc3Rvcnkge1xuICAgICYuaW1nLWFzLWJnIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxLjI1cmVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RhZGZlMTtcbiAgICB9XG4gIH1cblxuICAmLmhhbGYtY2FyZC1ncmlkLXN0b3J5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDZkNmQ2O1xuXG4gICAgJi5pbWctYXMtYmcge1xuICAgICAgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtIDFyZW07XG4gICAgICAvL2JvcmRlcjogMXB4IHNvbGlkICNkYWRmZTE7XG4gICAgfVxuICB9XG5cbiAgJi5zbWFsbC1ncmlkLXN0b3J5LFxuICAmLmhhbGYtZ3JpZC1zdG9yeSxcbiAgJi5jYXJkLWdyaWQtc3RvcnksXG4gICYuaGFsZi1jYXJkLWdyaWQtc3Rvcnkge1xuICAgIC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnkge1xuICAgICAgbWFyZ2luLXRvcDogLTE5cHg7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQtaXRlbXMgJiB7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICAuZHVyYXRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDAuNXJlbTtcbiAgICBsZWZ0OiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAkZm9udC14c21hbGw7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBwYWRkaW5nOiA0cHggNHB4IDNweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gICYuYXJ0aWNsZS12aWRlby1oZXJvIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzNiwgMjYsIDQ2LCAwLjgpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdGV4dC1pbmRlbnQ6IDNweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIHRleHQtaW5kZW50OiAtM3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYXJ0aWNsZS12aWRlbyAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDI2LCA0NiwgMC44KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICB3aWR0aDogMzJweDtcbiAgICAgIGhlaWdodDogMzJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRleHQtaW5kZW50OiAzcHg7XG4gICAgICBib3R0b206IDAuNXJlbTtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC41cmVtO1xuXG4gICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICB0ZXh0LWluZGVudDogLTNweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhhbGYtY2FyZC1ncmlkLXN0b3JpZXMge1xuICAuY2VsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWlubmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xufVxuXG4uaW1nLWFzLWJnIHtcbiAgLmFydGljbGUtaXRlbS1pbWcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuaG9yb3Njb3Blcy1hcnRpY2xlcyAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cblxuICAuY2FyZCAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgYSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlIDBzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UgMHMsXG4gICAgICAgIG9wYWNpdHkgMC4yNXMgZWFzZSAwcztcbiAgICB9XG5cbiAgICAmOmhvdmVyOmFmdGVyLFxuICAgICYuaG92ZXJlZC1pbWc6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgLy9wYWRkaW5nLXRvcDogMC4zcmVtO1xuICB9XG59XG5cbi5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICBhIHtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC52aWRlby1ncmlkLXN0b3J5ICYge1xuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBsYXlsaXN0ICYge1xuICAgIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cblxuICAuaGFsZi1jYXJkLWdyaWQtc3RvcnkgJiB7XG4gICAgLmFydGljbGUtaXRlbS1jb250ZW50IGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxuXG4gIC5vYmplY3QtaXRlbSAmIHtcbiAgICBoNiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAuZW5nLXRoZW1lICYsXG4gICAgICAudHVya2lzaC10aGVtZSAmIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDQ7XG4gICAgICB9XG5cbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjIycHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAuZW5nLXRoZW1lIC5zcGxhc2gtcm93ICYsXG4gICAgICAgIC50dXJraXNoLXRoZW1lIC5zcGxhc2gtcm93ICYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgaDYge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gIH1cblxuICAubWVkaWEtcHJlZml4IHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNHJlbTtcbiAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWF1dGhvciB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgZm9udC1zaXplOiAkZm9udC1zbWFsbDM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4gIC51cmR1LXRoZW1lICYge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuXG4gIC5hcnRpY2xlcy1saXN0LmNhcmRzICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4udXJkdS10aGVtZSB7XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG4uYXJ0aWNsZS1pdGVtLWF1dGhvcjEge1xuICBtYXJnaW4tdG9wOiAwLjNyZW07XG4gIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMzM3ZTgxO1xuXG4gIC51cmR1LXRoZW1lICYge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuXG4gIC5hcnRpY2xlcy1saXN0LmNhcmRzICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwxO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHotaW5kZXg6IDE7XG5cbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWxhYmVscyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IDE7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMjZweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQteHhzbWFsbDtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBpbml0aWFsO1xuICB9XG5cbiAgLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlICYge1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogaW5pdGlhbDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICB9XG4gIC5lbmctdGhlbWUgJixcbiAgLnR1cmtpc2gtdGhlbWUgJiB7XG4gICAgZm9udC1zaXplOiAkZm9udC14c21hbGw7XG4gIH1cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBwYWRkaW5nOiA0cHggOHB4IDJweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmxpdmUtYmxvZyB7XG4gIGJhY2tncm91bmQ6ICNmZmZkMzg7XG4gIGNvbG9yOiAjMDAwO1xuICBwYWRkaW5nOiA0cHggOHB4IDJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubGVhZCB7XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuXG4gIHAge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG5cbiAgICAuZW5nLXRoZW1lICYsXG4gICAgLnR1cmtpc2gtdGhlbWUgJiB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNtYWxsMztcbiAgICB9XG5cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC5hcnRpY2xlLWhlcm8gLmFicy1ib3R0b20tZWxlbWVudCAmIHtcbiAgICAgICAgLmVuZy10aGVtZSAmLFxuICAgICAgICAudHVya2lzaC10aGVtZSAmIHtcbiAgICAgICAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFicy1ib3R0b20tZWxlbWVudCB7XG4gIC8vcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuXG4gIHBhZGRpbmc6IDE2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG5cbiAgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIC5zcGxhc2gtcm93ICYge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgfVxuXG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnZpZGVvLWdyaWQtc3RvcnkgJiB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgIH1cbiAgfVxufVxuLmFicy1ib3R0b20tZWxlbWVudDEge1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHRvcDogMHJlbTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDdweCk7XG5cbiAgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICB9XG5cbiAgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAudmlkZW8tZ3JpZC1zdG9yeSAmIHtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgfVxuICB9XG59XG5cbi5wbGF5LWljb24ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHBhZGRpbmc6IDhweCA2cHggOHB4IDEwcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuOCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBwYWRkaW5nOiAxMnB4IDEwcHggMTJweCAxNnB4O1xuICB9XG5cbiAgLmZ1bGwtZ3JpZC1zdG9yeSAmLFxuICAuY2FyZC1ncmlkLXN0b3J5ICYge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBwYWRkaW5nOiAxNnB4IDE0cHggMTZweCAyMnB4O1xuICB9XG5cbiAgLm9iamVjdC1pdGVtICYge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbGFyZ2UxO1xuICAgIHBhZGRpbmc6IDdweCA2cHggN3B4IDlweDtcbiAgICB0b3A6IDdweDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDdweDtcbiAgfVxuXG4gIC5wbGF5bGlzdCAmIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgdG9wOiA1cHg7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1cHg7XG4gICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICAgIHBhZGRpbmc6IDZweCA1cHggNnB4IDdweDtcbiAgfVxufVxuXG4ucGxheWxpc3Qtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1pbi1oZWlnaHQ6IDI0NXB4O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG5zcGFuLmF1dGhvciB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAudXJkdS10aGVtZSAmIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbn1cblxuLmhlYWRsaW5lcy1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkICNmZmY7XG4gIG1hcmdpbjogMTZweCAwIDAgOHB4O1xuICBwYWRkaW5nOiAwO1xuXG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuYWJzLWJvdHRvbS1lbGVtZW50ICYge1xuICAgIGEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGFsZi1jYXJkLWdyaWQtc3RvcnkgJiB7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtc2VwYXJhdG9yIHtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDAgMC43NXJlbSAxLjVyZW07XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RhZGZlMTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAxM3B4O1xuICAgICAgfVxuXG4gICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbSAwLjc1cmVtIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbGkge1xuICAgIC5lbmctdGhlbWUgJixcbiAgICAudHVya2lzaC10aGVtZSAmIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICAgIH1cblxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDIuMmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzFhMmU7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDhweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDE1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3N2Zy93aGl0ZV9hcnJvdy5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRkZWZhdWx0LWRpcmVjdGlvbiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHg7XG5cbiAgICAgIC51cmR1LXRoZW1lICYge1xuICAgICAgICB0b3A6IC03cHg7XG4gICAgICB9XG5cbiAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgIGZpbHRlcjogRmxpcEg7XG4gICAgICAgIC1tcy1maWx0ZXI6IFwiRmxpcEhcIjtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5oZWFkbGluZXMtbGlzdC5ocmVmYmxhY2sgYSB7XG4gIGNvbG9yOiBibGFjaztcbiAgOmhvdmVyIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIH1cbn1cblxuLmRhdGUtZmllbGQge1xuICBmb250LXNpemU6ICRmb250LXNtYWxsMjtcbiAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbn1cblxuc2VjdGlvbi5zZWN0aW9uLmJvdHRvbS1zcGFjZXItLXMge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2VjdGlvbi13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLnNlY3Rpb24tdGl0bGUge1xuICAvL21hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBjb2xvcjogJGJsYWNrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIC5lbmctdGhlbWUgJixcbiAgICAudHVya2lzaC10aGVtZSAmIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbGFyZ2UxO1xuICAgIH1cblxuICAgIC50dXJraXNoLXRoZW1lICYge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cblxuICBhOm5vdCguc2VlLWFsbCkge1xuICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLmhhcy1kb3Qge1xuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1IHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWMxYTJlO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogOHB4O1xuXG4gICAgICAgIC5lbmctdGhlbWUgJixcbiAgICAgICAgLnR1cmtpc2gtdGhlbWUgJiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmhhcy1sb2dvIHtcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vaW1nL2xvZ28taWNvbi5wbmdcIikgbm8tcmVwZWF0IGNlbnRlclxuICAgICAgICAgICRkZWZhdWx0LWRpcmVjdGlvbjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtM3B4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlZS1hbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDIxcHg7XG4gICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIHRvcDogNTAlO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXRvcDogLTlweDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICBmb250LXNpemU6IDAuNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgdGV4dC1pbmRlbnQ6IDFweDtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBjb250ZW50OiBcIlxcZTkwOFwiO1xuICAgIH1cbiAgfVxufVxuXG4uY2F0ZWdvcnktZmllbGQge1xuICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAuZW5nLXRoZW1lICYsXG4gIC50dXJraXNoLXRoZW1lICYge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQteHNtYWxsO1xuICB9XG5cbiAgLnR1cmtpc2gtdGhlbWUgJiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIH1cblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQteHNtYWxsO1xuICB9XG5cbiAgLnVyZHUtdGhlbWUgJiB7XG4gICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICB9XG59XG4uY2F0ZWdvcnktZmllbGQxIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuM3B4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGEge1xuICAgIGNvbG9yOiAjMzM3ZTgxO1xuICB9XG5cbiAgLmVuZy10aGVtZSAmLFxuICAudHVya2lzaC10aGVtZSAmIHtcbiAgICBmb250LXNpemU6ICRmb250LXhzbWFsbDtcbiAgfVxuXG4gIC50dXJraXNoLXRoZW1lICYge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB9XG5cbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBmb250LXNpemU6ICRmb250LXhzbWFsbDtcbiAgfVxuXG4gIC51cmR1LXRoZW1lICYge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgfVxufVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ub2JqZWN0cy1saXN0IHtcbiAgLmNhcmRzICYge1xuICAgIC5vYmplY3QtaXRlbSB7XG4gICAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgICAgICAvL2hlaWdodDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1lZGlhLXZpZGVvLFxuICAgICAgICAmLm1lZGlhLWF1ZGlvIHtcbiAgICAgICAgICAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuOCk7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiA2cHg7XG4gICAgICAgICAgICAgIG1hcmdpbjogMC41cmVtO1xuXG4gICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC0zcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjRweDtcbiAgICAgICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tZWRpYS1hdWRpbyB7XG4gICAgICAgICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkxZVwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaGFzLXNlcGFyYXRvciB7XG4gICAgLm9iamVjdC1pdGVtIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDY5cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnYWluc2Jvcm87XG5cbiAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC5tZWRpYS1vYmplY3Qge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgJi5tZWRpYS12aWRlbyxcbiAgICAgICAgJi5tZWRpYS1hdWRpbyB7XG4gICAgICAgICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzNiwgMjYsIDQ2LCAwLjgpO1xuICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogNnB4O1xuICAgICAgICAgICAgICBtYXJnaW46IDAuNXJlbTtcblxuICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtM3B4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tZWRpYS1hdWRpbyB7XG4gICAgICAgICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkxZVwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWVkaWEtb2JqZWN0LWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTI4cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1heC13aWR0aDogMTAzcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1heC13aWR0aDogMTI4cHg7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLW1lZGlhPVwiandWaWRlb1wiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi13aWR0aDogMTI4cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1pbi13aWR0aDogMTAzcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1pbi13aWR0aDogMTI4cHg7XG4gICAgfVxuICB9XG5cbiAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgfVxuICB9XG59XG5cbi5lbnRyeS10aXRsZSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTQpO1xuICAgIH1cbiAgICAuZW50cnktdmlkZW8tY29udGFpbmVyICYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICB9XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxN3B4O1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZW50cnktc3VidGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBoMiB7XG4gICAgY29sb3I6ICM1NTU1NTU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTE7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgfVxuICB9XG59XG5cbi5lbnRyeS1tZXRhIHtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAuZW50cnktdmlkZW8tY29udGFpbmVyICYge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDIwcHg7XG4gICAgfVxuXG4gICAgPiBkaXYge1xuICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIiB8XCI7XG4gICAgICAgICAgcGFkZGluZzogMCA0cHggMCA0cHg7XG4gICAgICAgICAgY29sb3I6ICM1NTU1NTU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDI7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZW50cnktbWV0YS1maWVsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuXG4gIC51cmR1LXRoZW1lICYge1xuICAgIC8vIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICB9XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gIH1cblxuICAmLmVudHJ5LW1ldGEtYXV0aG9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYuZW50cnktbWV0YS1hdXRob3Ige1xuICAgID4gYSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMztcblxuICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICB9XG5cbiAgICAgIC51cmR1LXRoZW1lICYge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc3BhbixcbiAgdGltZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzU1NTU1NTtcblxuICAgIC51cmR1LXRoZW1lICYge1xuICAgICAgd29yZC1zcGFjaW5nOiA0cHg7XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbiAgfVxuXG4gIC8vICY6YWZ0ZXIge1xuICAvLyAgIGNvbnRlbnQ6IFwiIHxcIjtcbiAgLy8gICBwYWRkaW5nOiAwIDRweCAwIDRweDtcbiAgLy8gICBjb2xvcjogIzU1NTU1NTtcbiAgLy8gICBsaW5lLWhlaWdodDogMTtcbiAgLy8gICBmb250LXNpemU6ICRmb250LXNtYWxsMjtcbiAgLy8gICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAvLyB9XG5cbiAgLy8gJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgLy8gICBkaXNwbGF5OiBub25lO1xuICAvLyB9XG59XG5cbi5lbnRyeS1yZWFkaW5nLXRpbWUge1xuICBjb2xvcjogIzU1NTU1NTtcbn1cbi5lbnRyeS1tZXRhLWNvbW1lbnQge1xuICBhIHtcbiAgICBjb2xvcjogIzU1NTU1NTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG59XG5cbi5lbnRyeS1tZXRhLXNoYXJlcy1jb3VudCB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICBzcGFuIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgcGFkZGluZy1yaWdodDogNHB4O1xuICB9XG59XG5cbi5hdXRob3ItdHdpdHRlciB7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGRpcmVjdGlvbjogbHRyO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICM1NTU1NTU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcblxuICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDI7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICBjb2xvcjogIzU1NTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZW50cnktbWV0YS13cmFwcGVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICY6bm90KC5oYXMtYXZhdGFyICYpIHtcbiAgICAgID4gLmdyaWQteCB7XG4gICAgICAgID4gLmNlbGwuc2hyaW5rIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZW50cnktc3VtbWFyeSB7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjZWMxZjMxO1xuICBwYWRkaW5nOiAxNnB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG4gIGg0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuICB1bCB7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICY6Om1hcmtlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZW50cnktYXJ0aWNsZS10b3BwZXIge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigpO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmVudHJ5LWhlYWRlciB7XG4gICYuaGFzLWF2YXRhciB7XG4gICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgIGgxIHtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC51cmR1LXRoZW1lICYge1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5lbnRyeS1zdWJ0aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNTdweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmVudHJ5LW1ldGEtd3JhcHBlciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1N3B4KTtcbiAgICAgIH1cblxuICAgICAgPiAuZ3JpZC14ID4gLmNlbGwuc2hyaW5rIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1heC13aWR0aDogNzUlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZW50cnktYXJ0aWNsZS1zaGFyZSB7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICAgIH1cbiAgfVxufVxuXG4uZW50cnktYXJ0aWNsZS1ib3R0b20ge1xuICAvL2JhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7XG59XG5cbi5zaGFyZS1mbG9hdGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBkaXNwbGF5OiBub25lO1xuICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIHRvcDogMjBweDtcbiAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAkYmxhY2stNDAwO1xuICBwYWRkaW5nOiAxMHB4IDI0cHg7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zb2NpYWxzLWJ0bnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEycHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAuc29jaWFsLWJ0biB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ2ZDZkO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNoYXJlLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAuZW50cnktdmlkZW8tY29udGFpbmVyICYge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLnBhZ2Utbm9kZSAmIHtcbiAgICAuc29jaWFscy1idG5zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgIC5zb2NpYWwtYnRuIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAzcHg7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb2xsb3ctYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC5lbnRyeS12aWRlby1jb250YWluZXIgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uZm9sbG93LWZiLWluZm8ge1xuICBmb250LXNpemU6ICRmb250LXNtYWxsMTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDhweDtcbiAgY29sb3I6ICM4ODg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmNhcHRpb24tZmllbGQsXG4uZG5kLWNhcHRpb24td3JhcHBlciB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgY29sb3I6ICM2ZDZkNmQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG4gIHBhZGRpbmc6IDEwcHg7XG5cbiAgLnVyZHUtdGhlbWUgJiB7XG4gICAgLy9mb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cblxuLmVudHJ5LWFydGljbGUge1xuICAmLnNoaWZ0ZWQtYXJlYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogODJweDtcbiAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogODJweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIzMHB4KTtcbiAgICB9XG5cbiAgICAuc2hhcmUtYmxvY2sge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDkwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB0b3A6IDIyMHB4O1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMDAlO1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIC5zb2NpYWwtYnRuLnJvdW5kIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbnRlbnQtd3JhcC1ob2xkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDYzNnB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM0NHB4KTtcbiAgfVxufVxuXG4uc2lkZWJhci13cmFwLWhvbGRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAzMDhweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5lbnRyeS1tZWRpYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgLmVudHJ5LXZpZGVvLWNvbnRhaW5lciAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5lbnRyeS1jb250ZW50IHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICBsaW5lLWhlaWdodDogMjZweDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gID4gaDIge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbGFyZ2UyO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cblxuICA+IGgxLFxuICA+IGgyLFxuICA+IGgzIHtcbiAgICBtYXJnaW46IDJyZW0gMCAxOHB4O1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTQ7XG4gIH1cblxuICAvLyBbZGlyPVwicnRsXCJdICYge1xuICAvLyAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMjtcbiAgLy8gICBsaW5lLWhlaWdodDogMS42O1xuICAvLyB9XG5cbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cblxuICBbZGlyPVwicnRsXCJdIC5wZXJzaWFuLXRoZW1lICYge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMztcbiAgfVxuXG4gIC51cmR1LXRoZW1lICYge1xuICAgIC8vZm9udC1zaXplOiAkZm9udC1sYXJnZTI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuICB9XG5cbiAgLyo+IHA6bGFzdC1vZi10eXBlOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQ6ICNlYzFhMmU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDZweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycHg7XG4gIH0qL1xuICB0YWJsZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIHRoIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDM7XG4gICAgICB9XG4gICAgICB0ZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGw0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIC8vIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAvLyBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAvLyBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMDtcbiAgLmVudHJ5LWNvbnRlbnQgJiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMztcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICRibGFjay02MDA7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICB9XG5cbiAgICA+IHA6Zmlyc3QtY2hpbGQge1xuICAgICAgLy8gY29sb3I6ICM4ODg4ODg7XG4gICAgICAvLyBmb250LXN0eWxlOiBpdGFsaWM7XG5cbiAgICAgIC51cmR1LXRoZW1lICYge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICB9XG5cbiAgICAgIC8vICY6YmVmb3JlIHtcbiAgICAgIC8vICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIC8vICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgLy8gICB3aWR0aDogMzhweDtcbiAgICAgIC8vICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgLy8gICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAvLyAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgLy8gfVxuXG4gICAgICAvLyBbZGlyPVwicnRsXCJdICYge1xuICAgICAgLy8gICBmb250LXNpemU6ICRmb250LW1lZGl1bTE7XG4gICAgICAvLyB9XG4gICAgfVxuICB9XG59XG5cbi5ibG9ja3F1b3RlLW1ldGEge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHN0cm9uZyB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG4gIHNwYW4ge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICBjb2xvcjogJGdyZXlzY2FsZS1ncmV5LTcwO1xuICB9XG59XG5cbi5wYWdlLXRheG9ub215LXRlcm0tNjEgLmVudHJ5LWNvbnRlbnQsXG5ibG9ja3F1b3RlIHtcbiAgPiBwIHtcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAkYmxhY2stNjAwO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIC13ZWJraXQtcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDQ3cHg7XG4gICAgICAgIGZsb2F0OiAkZGVmYXVsdC1kaXJlY3Rpb247XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvc3ZnL3F1b3RlLnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIG1hcmdpbjogNHB4IDI0cHggMjRweCAwO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IGluaXRpYWw7XG4gICAgICAgICAgLy8gdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICAgIC8vIGZpbHRlcjogRmxpcEg7XG4gICAgICAgICAgLy8gLW1zLWZpbHRlcjogXCJGbGlwSFwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5lbnRyeS10YWdzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBwYWRkaW5nOiAxMnB4IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDZkNmQ2O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q2ZDZkNjtcblxuICBzcGFuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgfVxuXG4gIGEge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwxO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwYWRkaW5nOiAxcHggOHB4IDA7XG4gICAgbWFyZ2luOiA0cHggOHB4IDRweCAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLmdpZ3lhLW5ld3NsZXR0ZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5lbnRyeS1wcm9tb3RlZC1zdG9yaWVzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uYm94LXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgfVxuXG4gIC8qJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogI2VjMWEyZTtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIH0qL1xufVxuXG4uYmxvY2std3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgfVxuICB9XG4gIC8vIC5zaWRlYmFyLXdyYXAgJiB7XG4gIC8vICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgLy8gICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYjBiMGIwO1xuICAvLyAgICAgcGFkZGluZy10b3A6IDE2cHg7XG4gIC8vICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2IwYjBiMDtcbiAgLy8gICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAvLyAgIH1cbiAgLy8gfVxufVxuXG4uYWQtYmxvY2staGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmc6IDEycHg7XG4gIH1cblxuICBzbWFsbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICB9XG5cbiAgaDMge1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBjb2xvcjogJGJsYWNrLTQwMDtcbiAgICB9XG4gIH1cblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEIwQjBCMDtcbiAgfVxuICAvKiY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICNlYzFhMmU7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9Ki9cbn1cblxuLmluamVjdGVkLWJsb2NrLFxuLmluamVjdGVkLWJsb2NrcyB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOTc5Nzk3O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk3OTc5NztcbiAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIH1cblxuICAudmlld3MtZmllbGQtbmlkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgbGkge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjBiMGIwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICAgIH1cbiAgICAgID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDE2cHg7XG4gICAgICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgLy9jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBjb2xvcjogJGluZHktcmVkO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgLy9jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBjb2xvcjogJGJsYWNrLTkwMDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cbiAgfVxufVxuXG4uaW5qZWN0ZWQtYmxvY2std2F0Y2gtbW9yZSxcbi5pbmplY3RlZC1ibG9ja3Mtd2F0Y2gtbW9yZSB7XG4gIHdpZHRoOiA0OCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgcGFkZGluZzogMC41cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiAzNiU7XG4gIH1cblxuICB1bCB7XG4gICAgbGkge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDhweCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmctdG9wOiA2LjVweDtcbiAgfVxuXG4gIGg2IHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5icmVhZGNydW1icy13cmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgbWFyZ2luLXRvcDogMTRweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuICB9XG4gIC5icmVhZGNydW1icyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRibGFjay02MDA7XG5cbiAgICAgICAgJi5icmVhZGNydW1ic19faG9tZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBjb2xvcjogIzc0NmY3MDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1sZWZ0MjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgIGNvbG9yOiAjYWRhYmFiO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZW50cnktbWVkaWEtaW5uZXIge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4uZW50cnktbWVkaWEtaW5uZXItaW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2FsbGVyeS1jb3VudCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgcGFkZGluZzogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA2cHg7XG4gICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDZweDtcbiAgYmFja2dyb3VuZDogaHNsYSgwLCAwJSwgOTMlLCAwLjY2Nik7XG59XG5cbi5nYWxsZXJ5LXRyaWdnZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IHtcbiAgLmltYWdlcyB7XG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGZsb2F0OiAkZGVmYXVsdC1kaXJlY3Rpb247XG4gICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEwcHggc29saWQgI2ZmZjtcbiAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHggc29saWQgI2ZmZjtcbiAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjZmZmO1xuICAgICAgICBoZWlnaHQ6IDIwJTtcbiAgICAgICAgd2lkdGg6IDI1JTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBoZWlnaHQ6IDc4JTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiBub25lO1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBub25lO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmdyaWQtbW9kLWdhbGxlcnkge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDZkNmQ2O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDYwMHB4O1xufVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZ3JpZC1tb2QtZ2FsbGVyeSB7XG4gICAgaGVpZ2h0OiA2MDBweDtcbiAgfVxufVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSAuZ2FsbGVyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSAuaW1hZ2VzIHtcbiAgZmxleDogMTtcbn1cblxuLmdyaWQtbW9kLWdhbGxlcnkgLmltYWdlcyB1bCB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGNvbG9yOiAjZWMxYTJlO1xufVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgZmxvYXQ6ICRkZWZhdWx0LWRpcmVjdGlvbjtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IDAgMDtcbn1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQgYTpob3ZlciBzcGFuIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSBsaTpsYXN0LWNoaWxkIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFkZmUxO1xuICBjb2xvcjogIzU1NTtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmdyaWQtbW9kLWdhbGxlcnkgbGkuaW1hZ2Utc21hbGwge1xuICBiYWNrZ3JvdW5kLXNpemU6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IC5wYWdlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIC8vbWFyZ2luLXRvcDogLTMwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDFyZW07XG5cbiAgaSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmLm5leHQge1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDE1cHg7XG4gIH1cblxuICAmLnByZXYge1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTVweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyMHB4KSB7XG4gIC5ncmlkLW1vZC1nYWxsZXJ5IC5nYWxsZXJ5LXRpdGxlIHtcbiAgICBtaW4taGVpZ2h0OiA2MHB4O1xuICB9XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IGE6aG92ZXIgLnBhZ2VyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeSAuYWRkaXRpb25hbC1waG90b3Mge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA0MHB4O1xuICBsaW5lLWhlaWdodDogNDZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1mYW1pbHk6IHNhbnMgc2VyaWY7XG5cbiAgaSB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDVweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICB9XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IC5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkZW1wZXJvcjtcbn1cblxuLmdyaWQtbW9kLWdhbGxlcnkgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBoZWlnaHQ6IDQwMHB4O1xuICBtYXJnaW46IDA7XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IGxpIHtcbiAgaGVpZ2h0OiAyNSU7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5IGxpOmZpcnN0LWNoaWxkIHtcbiAgaGVpZ2h0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDAwcHgpIHtcbiAgLmdyaWQtbW9kLWdhbGxlcnkgdWwge1xuICAgIGhlaWdodDogNTAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUwMHB4KSB7XG4gIC5ncmlkLW1vZC1nYWxsZXJ5IHVsIHtcbiAgICBoZWlnaHQ6IDU0MHB4O1xuICB9XG59XG5cbi53ZWlnaHQtMSAuZ3JpZC1tb2QtZ2FsbGVyeSBsaTpudGgtY2hpbGQoMm4pIHtcbiAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAjZmZmO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcbn1cblxuLndlaWdodC0xIC5ncmlkLW1vZC1nYWxsZXJ5IGxpOm50aC1jaGlsZCgybiArIDEpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGkge1xuICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgI2ZmZjtcbiAgaGVpZ2h0OiAyMCU7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQge1xuICBoZWlnaHQ6IDc4JTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IG5vbmU7XG4gIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbn1cblxuLmdyaWQtbW9kLWdhbGxlcnktd3JhcHBlciAuZ3JpZC1tb2QtZ2FsbGVyeSBsaTpsYXN0LWNoaWxkIGEge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbn1cblxuLndlaWdodC0zIC5ncmlkLW1vZC1nYWxsZXJ5IGxpLFxuLndlaWdodC00IC5ncmlkLW1vZC1nYWxsZXJ5IGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCAjZmZmO1xuICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4IHNvbGlkICNmZmY7XG4gIGhlaWdodDogMjUlO1xuICB3aWR0aDogMjAlO1xufVxuXG4ud2VpZ2h0LTMgLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQsXG4ud2VpZ2h0LTQgLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDgwJTtcbn1cblxuLndlaWdodC0zIC5ncmlkLW1vZC1nYWxsZXJ5IGxpOmxhc3QtY2hpbGQgYSxcbi53ZWlnaHQtNCAuZ3JpZC1tb2QtZ2FsbGVyeSBsaTpsYXN0LWNoaWxkIGEge1xuICBwYWRkaW5nLXRvcDogMjRweDtcbn1cblxuLndlaWdodC0zIC5ncmlkLW1vZC1nYWxsZXJ5IC5hZGRpdGlvbmFsLXBob3Rvcyxcbi53ZWlnaHQtNCAuZ3JpZC1tb2QtZ2FsbGVyeSAuYWRkaXRpb25hbC1waG90b3Mge1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGxpbmUtaGVpZ2h0OiA1MnB4O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ3JpZC1tb2QtZ2FsbGVyeS13cmFwcGVyIC5ncmlkLW1vZC1oYWxmLWhlaWdodCBoMSxcbi53ZWlnaHQtMyAuZ3JpZC1tb2QtZ2FsbGVyeSAubGFiZWwsXG4ud2VpZ2h0LTQgLmdyaWQtbW9kLWdhbGxlcnkgLmxhYmVsIHtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MjBweCkge1xuICAuZnVsbC1hcnRpY2xlIC5ncmlkLW1vZC1nYWxsZXJ5IGxpIHtcbiAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNmZmY7XG4gICAgaGVpZ2h0OiAyMCU7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5mdWxsLWFydGljbGUgLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQge1xuICAgIGhlaWdodDogNzglO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IG5vbmU7XG4gICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbiAgfVxuXG4gIC5mdWxsLWFydGljbGUgLmdyaWQtbW9kLWdhbGxlcnkgbGk6bGFzdC1jaGlsZCBhIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgfVxufVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkge1xuICAuZ3JpZC1tb2QtZ2FsbGVyeS13cmFwcGVyIC5ncmlkLW1vZC1nYWxsZXJ5IGxpOm50aC1jaGlsZCgybikge1xuICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwIG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gIH1cblxuICAuZ3JpZC1tb2QtZ2FsbGVyeS13cmFwcGVyIC5ncmlkLW1vZC1nYWxsZXJ5IGxpOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwIG5vbmU7XG4gICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAgbm9uZTtcbiAgfVxuXG4gIC5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGk6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDI1JTtcbiAgfVxuXG4gIC5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGk6Zmlyc3QtY2hpbGQge1xuICAgIGhlaWdodDogNTAlO1xuICB9XG59XG5cbkBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDY2OHB4KSB7XG4gIC5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGk6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgaGVpZ2h0OiAyNSU7XG4gIH1cbn1cblxuQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5ncmlkLW1vZC1nYWxsZXJ5LXdyYXBwZXIgLmdyaWQtbW9kLWdhbGxlcnkgbGk6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgaGVpZ2h0OiAyMCU7XG4gIH1cbn1cblxuYm9keS5mdWxsc2NyZWVuLWdhbGxlcnkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZ2FsbGVyeS1zcGVjaWZpYy10cmlnZ2VyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZnVsbC1nYWxsZXJ5LFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIHotaW5kZXg6IDYwNTAwMDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5mdWxsLWdhbGxlcnkgLmNsb3NlLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuY2xvc2Uge1xuICBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBwYWRkaW5nOiAxNHB4O1xuICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZnVsbC1nYWxsZXJ5IC5jbG9zZTpob3Zlcixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmNsb3NlOmhvdmVyIHtcbiAgY29sb3I6ICNlYzFhMmU7XG59XG5cbi5mdWxsLWdhbGxlcnkgLmdhbGxlcnktdGl0bGUsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5nYWxsZXJ5LXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZm9udC1zaXplOiAkZm9udC1sYXJnZTE7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDRyZW07XG5cbiAgLmdhbGxlcnktaWNvbiB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG59XG5cbi5mdWxsLWdhbGxlcnkgLnNjcm9sbGVyLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuc2Nyb2xsZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uZnVsbC1nYWxsZXJ5IC5nYWxsZXJ5LXdyYXBwZXIsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5nYWxsZXJ5LXdyYXBwZXIge1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuXG4uZ2FsbGVyeS1pbm5lciB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmZ1bGwtZ2FsbGVyeSAuaW1hZ2VzLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuaW1hZ2VzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogJGRlZmF1bHQtZGlyZWN0aW9uO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvKioge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH0qL1xufVxuXG4uZnVsbC1nYWxsZXJ5IC5pbWFnZXMgbGksXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5pbWFnZXMgbGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZ1bGwtZ2FsbGVyeSB1bCxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbi5mdWxsLWdhbGxlcnkgbGksXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIGxpIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIC8vdHJhbnNpdGlvbjogYWxsIDJzIGxpbmVhcjtcbn1cblxuLmZ1bGwtZ2FsbGVyeSBsaS5hY3RpdmUsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIGxpLmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5mdWxsLWdhbGxlcnkgbGkgaW1nLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyBsaSBpbWcge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuXG4vKlxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MjBweCkge1xuICAuZnVsbC1nYWxsZXJ5IC5pY29uLWFycm93LWxlZnQsIC5mdWxsLWdhbGxlcnkgLmljb24tYXJyb3ctcmlnaHQge1xuICAgIG1hcmdpbi10b3A6IC0zMHB4XG4gIH1cblxuICAuZnVsbC1nYWxsZXJ5IC5pY29uLWFycm93LSN7JGRlZmF1bHQtZGlyZWN0aW9ufTpiZWZvcmUsIC5mdWxsLWdhbGxlcnkgLmljb24tYXJyb3ctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogNjBweFxuICB9XG59XG4qL1xuXG4uZnVsbC1nYWxsZXJ5IC5wYWdlcixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLnBhZ2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG5cbiAgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgLy9ib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICBmaWx0ZXI6IEZsaXBIO1xuICAgICAgICAtbXMtZmlsdGVyOiBcIkZsaXBIXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pY29uLWFycm93LWxlZnQge1xuICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgLypbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICB9Ki9cbiAgICB9XG5cbiAgICAmLmljb24tYXJyb3ctcmlnaHQge1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgIC8qW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgfSovXG4gICAgfVxuICB9XG59XG5cbi5mdWxsLWdhbGxlcnkgLnBhZ2VyLnByZXYsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5wYWdlci5wcmV2IHtcbiAgd2lkdGg6IDUwJTtcbiAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAvKltkaXI9XCJydGxcIl0gJiB7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIH0qL1xufVxuXG4uZnVsbC1nYWxsZXJ5IC5wYWdlci5uZXh0LFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAucGFnZXIubmV4dCB7XG4gICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIHdpZHRoOiA1MCU7XG4gIC8qW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgfSovXG59XG5cbi5nYWxsZXJ5LWlubmVyIC5wYWdlci5wcmV2LFxuLmdhbGxlcnktaW5uZXIgLnBhZ2VyLm5leHQge1xuICAmOmhvdmVyIHtcbiAgICBpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uZnVsbC1nYWxsZXJ5IC5sZWdlbmRzLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAubGVnZW5kcyB7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5mdWxsLWdhbGxlcnkgLmxlZ2VuZHMgaDIsXG4uZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5sZWdlbmRzIGgyIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZm9udC1zaXplOiAkZm9udC1sYXJnZTE7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uZnVsbC1nYWxsZXJ5IC5sZWdlbmRzIGgyIC5jb3VudGVyLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAubGVnZW5kcyBoMiAuY291bnRlciB7XG4gIGNvbG9yOiAjZWMxYTJlO1xuICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbn1cblxuLmZ1bGwtZ2FsbGVyeSAubGVnZW5kcyBwLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAubGVnZW5kcyBwIHtcbiAgZm9udC1zaXplOiAkZm9udC1zbWFsbDM7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uZnVsbC1nYWxsZXJ5IC5sZWdlbmRzIC5jcmVkaXRzLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAubGVnZW5kcyAuY3JlZGl0cyB7XG4gIGNvbG9yOiAjODg4O1xufVxuXG4uZnVsbC1nYWxsZXJ5IC5sZWdlbmRzIDpsYXN0LWNoaWxkLFxuLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAubGVnZW5kcyA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5mdWxsLWdhbGxlcnkgLmxlZ2VuZHMgYSxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmxlZ2VuZHMgYSB7XG4gIGNvbG9yOiAjZWMxYTJlICFpbXBvcnRhbnQ7XG59XG5cbi5mdWxsLWdhbGxlcnkgLmxlZ2VuZHMgYTpob3Zlcixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmxlZ2VuZHMgYTpob3ZlciB7XG4gIGNvbG9yOiAjOTQwYzE5ICFpbXBvcnRhbnQ7XG59XG5cbi5mdWxsLWdhbGxlcnkgLmFkLWJ1dHRvbixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmFkLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbn1cblxuLmZ1bGwtZ2FsbGVyeSAuYWQtYnV0dG9uIGltZyxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmFkLWJ1dHRvbiBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5mdWxsLWdhbGxlcnkgLmFkLW1wdSxcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmFkLW1wdSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcblxuICAucHJlbWl1bS1jb250ZW50IHtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MzBweCkge1xuICAuZnVsbC1nYWxsZXJ5IC5hZC1idXR0b24sXG4gIC5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmFkLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5mdWxsLWdhbGxlcnkgLmFkLW1wdSxcbiAgLmZ1bGwtZ2FsbGVyeSAuYWQtbXB1IGltZyxcbiAgLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuYWQtbXB1LFxuICAuZnVsbC1nYWxsZXJ5IC5hZC1tcHUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5mdWxsLWdhbGxlcnkgLmFkLW1wdSxcbiAgLmZ1bGwtZ2FsbGVyeS1zcGVjaWZpYyAuYWQtbXB1IHtcbiAgICBmbG9hdDogJGRlZmF1bHQtZGlyZWN0aW9uO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICAuZnVsbC1nYWxsZXJ5IC5pbWFnZXMsXG4gIC5mdWxsLWdhbGxlcnktc3BlY2lmaWMgLmltYWdlcyB7XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWRpcmVjdGlvbjtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzQwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZnVsbC1nYWxsZXJ5IC5sZWdlbmRzLFxuICAuZnVsbC1nYWxsZXJ5LXNwZWNpZmljIC5sZWdlbmRzIHtcbiAgICBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjtcbiAgICB3aWR0aDogMzQwcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgfVxufVxuXG4uZnVsbC1nYWxsZXJ5LmdhbGxlcnktb3Blbixcbi5mdWxsLWdhbGxlcnktc3BlY2lmaWMuZ2FsbGVyeS1vcGVuIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4ucHJlbWl1bS1jb250ZW50IHtcbiAgcGFkZGluZzogNXB4O1xuICBtYXJnaW46IDAgYXV0byAwLjc1cmVtO1xuXG4gIC5zaWRlYmFyLXdyYXAgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHByaW1hcnktZ3JhcGhpdGU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktZ3JhcGhpdGU7XG4gICAgICBwYWRkaW5nOiAxMnB4IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgcGFkZGluZzogNXB4IDAgMDtcbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDE7XG4gICAgcGFkZGluZzogNHB4IDhweCA4cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICBjb2xvcjogJHByaW1hcnktZ3JhcGhpdGU7XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwxO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZG1wdSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGhlaWdodDogNjAwcHg7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5tcHUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjJyZW07XG4gIH1cbn1cblxuLnJpZ2h0LXBvc2l0aW9uIHtcbiAgPiAuZ3JpZC14IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cbn1cblxuLmxlZnQtcG9zaXRpb24ge1xuICA+IC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgfVxufVxuXG4uZWlnaHQtYXJ0aWNsZXMtZG1wdSB7XG4gIC5hcnRpY2xlcy1saXN0IHtcbiAgICAmOm5vdCguY2FyZHMpIHtcbiAgICAgIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q2ZDZkNjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTM4cHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA5MnB4O1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMzhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmVpZ2h0LWFydGljbGVzLWRtcHUsXG4uc2l4LWFydGljbGVzLW1wdSB7XG4gIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q2ZDZkNjtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uc2l4LWFydGljbGVzLW1wdSxcbi5zZXZlbi1hcnRpY2xlcyB7XG4gIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBtYXgtd2lkdGg6IDEyNnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hcnRpY2xlLWl0ZW0tYXV0aG9yIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLmFydGljbGUtaXRlbS5hcnRpY2xlLWhlcm8ge1xuICAgICAgLy9tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuICAgIC5hcnRpY2xlcy1saXN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB9XG4gICAgLmNlbGwubWVkaXVtLTEyIHtcbiAgICAgIC5hcnRpY2xlcy1saXN0IHtcbiAgICAgICAgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ2FpbnNib3JvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAuY2VsbC5tZWRpdW0tMTIge1xuICAgICAgLmFydGljbGVzLWxpc3Qge1xuICAgICAgICAub2JqZWN0cy1saXN0IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm9iamVjdC1pdGVtIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygzMy4zMyUgLSA4cHgpO1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtNDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2Ni44MDY3JTtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb3VyLWFydGljbGVzLFxuLmNhcmRzLWFydGljbGVzLFxuLnR3by1hcnRpY2xlcy1jb21wYWN0IHtcbiAgLmFydGljbGUtaXRlbSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gICAgJi5hcnRpY2xlLWhlcm8ge1xuICAgICAgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgfVxuXG4gICAgICAmLm1lZGlhLXZpZGVvLFxuICAgICAgJi5tZWRpYS1hdWRpbyB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzNiwgMjYsIDQ2LCAwLjgpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHRvcDogLTI0cHg7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDZweDtcbiAgICAgICAgICAgIG1hcmdpbjogMC41cmVtO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTZweDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubWVkaWEtdmlkZW8tbWlkZGxlLFxuICAgICAgJi5tZWRpYS1hdWRpby1taWRkbGUge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICAgICAgICBib3R0b206IC0yNHB4O1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubWVkaWEtYXVkaW8ge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MWVcIjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAvLyBtaW4taGVpZ2h0OiAxNjBweDtcbiAgICAgIC5ibG9jay13cmFwcGVyICYge1xuICAgICAgICBtaW4taGVpZ2h0OiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC8vIG1pbi1oZWlnaHQ6IDE2MHB4O1xuICAgICAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgfVxuXG4gIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtLWRlc2Mge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGw0O1xuICB9XG5cbiAgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gICAgaDQge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuXG4gICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTI7XG4gICAgICB9XG5cbiAgICAgIC51cmR1LXRoZW1lICYge1xuICAgICAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoMzYwcHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0yO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb3VyLWFydGljbGVzIHtcbiAgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleDogMTtcbiAgfVxuICAuYXJ0aWNsZS1pdGVtLWF1dGhvciB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgfVxuXG4gIC5hcnRpY2xlLWl0ZW0uYXJ0aWNsZS1oZXJvIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBmbGV4OiBub25lO1xuICAgIGhlaWdodDogMTI4cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGhlaWdodDogMTUycHg7XG4gICAgfVxuICB9XG59XG4uZm91ci1hcnRpY2xlczEsXG4uY2FyZHMtYXJ0aWNsZXMsXG4udHdvLWFydGljbGVzLWNvbXBhY3Qge1xuICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyAuYWJzLWJvdHRvbS1lbGVtZW50LFxuICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS1hdWRpbyAuYWJzLWJvdHRvbS1lbGVtZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBtYXJnaW4tdG9wOiAtODBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIH1cblxuICAuY2VsbC5tZWRpdW0tNi5sYXJnZS02IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHdpZHRoOiA5Ny41JTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cbiAgICAmLmFydGljbGUtaGVybyB7XG4gICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cblxuICAgICAgJi5tZWRpYS12aWRlbyxcbiAgICAgICYubWVkaWEtYXVkaW8ge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDI2LCA0NiwgMC44KTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAvLyBjb250ZW50OiBcIlxcZTkwYlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB0b3A6IC0yNHB4O1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiA2cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAuNXJlbTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC02cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubWVkaWEtYXVkaW8ge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MWVcIjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAvLyBtaW4taGVpZ2h0OiAxNjBweDtcbiAgICAgIC5ibG9jay13cmFwcGVyICYge1xuICAgICAgICBtaW4taGVpZ2h0OiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC8vIG1pbi1oZWlnaHQ6IDE2MHB4O1xuICAgICAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgfVxuXG4gIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtLWRlc2Mge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGw0O1xuICB9XG5cbiAgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gICAgaDQge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuXG4gICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTI7XG4gICAgICB9XG5cbiAgICAgIC51cmR1LXRoZW1lICYge1xuICAgICAgICAvL2ZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtNDtcbiAgICAgICAgLy8gZm9udC1zaXplOiAyNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDM2MHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMjtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW00O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGFydGljbGUuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVyby5tZWRpYS12aWRlbyB7XG4gICAgYm9yZGVyOiAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOXB4O1xuICB9XG59XG5cbi50d28tYXJ0aWNsZXMtY29tcGFjdCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgLmFydGljbGUtaXRlbSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICAgIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxufVxuXG4udGhyZWUtYXJ0aWNsZXMge1xuICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGhlaWdodDogMjIwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0yO1xuICAgIH1cbiAgICAudXJkdS10aGVtZSAmIHtcbiAgICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3BsYXNoLXJvdyB7XG4gID4gLmdyaWQteCA+IC5jZWxsLmxhcmdlLTgge1xuICAgID4gLmFydGljbGUtaXRlbS5tZWRpYS12aWRlbyxcbiAgICA+IC5hcnRpY2xlLWl0ZW0ubWVkaWEtYXVkaW8ge1xuICAgICAgLmFicy1ib3R0b20tZWxlbWVudCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hcnRpY2xlcy1saXN0IHtcbiAgICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgJi5oYXMtcmVsYXRlZCB7XG4gICAgICAuYXJ0aWNsZS1pdGVtLmFydGljbGUtaGVybyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC5hYnMtYm90dG9tLWVsZW1lbnQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDhweDtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA4cHg7XG5cbiAgICAgICAgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCA4cHggOHB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDhweCA4cHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmhlYWRsaW5lcy1saXN0IHtcbiAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkICRibGFjaztcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC41cmVtIDAuNXJlbTtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgIG1hcmdpbjogMCAwLjVyZW0gMC41cmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuXG4gICAgICAgICAgICAudXJkdS10aGVtZSB7XG4gICAgICAgICAgICAgIC8vIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtNDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmVpZ2h0LWFydGljbGVzIHtcbiAgLmFydGljbGVzLWxpc3QgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIHtcbiAgICAub2JqZWN0LWl0ZW0ge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zZXZlbi1hcnRpY2xlcyxcbi50d28tYXJ0aWNsZXMge1xuICAuZ3JpZC14IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gIC5laWdodC1hcnRpY2xlcy1kbXB1IC5hcnRpY2xlcy1saXN0IC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDYge1xuICAgIC5lbmctdGhlbWUgJixcbiAgICAudHVya2lzaC10aGVtZSAmIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMjtcbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGVzLWxpc3Qge1xuICAvKkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfSovXG4gICYuY2FyZHMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgLm9iamVjdHMtbGlzdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgIH1cbiAgICAgIC5vYmplY3QtaXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDNweCk7XG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuYXJ0aWNsZS1pdGVtLWF1dGhvciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTE7XG4gICAgICB9XG4gICAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICB9XG4gICAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxNjBweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1lZGlhLW9iamVjdC1pbWc6bm90KFtkYXRhLW1lZGlhPVwiandWaWRlb1wiXSkge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDY2LjgwNjclO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgLm9iamVjdHMtbGlzdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubWVkaWEtb2JqZWN0LXNlY3Rpb246bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIC8vaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAub2JqZWN0LWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGhlaWdodDogNDkuNCU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hdXRob3ItbmFtZSB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAkZm9udC1zbWFsbDM7XG5cbiAgLnVyZHUtdGhlbWUgJiB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIC8vIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuXG4uYXV0aG9yLWhlYWRsaW5lIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4yMnB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIC51cmR1LXRoZW1lICYge1xuICAgIC8vIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuXG4gIC5lbmctdGhlbWUgJixcbiAgLnR1cmtpc2gtdGhlbWUgJiB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDM7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi50aHJlZS1hcnRpY2xlcy1oZWFkc2hvdHMge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGdhaW5zYm9ybztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnYWluc2Jvcm87XG4gIGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZTtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAuc2xpY2stdHJhY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAvL2FsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgICAgYWxpZ24tY29udGVudDogZW5kO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtcyB7XG4gICAgLy9tYXgtaGVpZ2h0OiA5MHB4O1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwIDIuNXJlbTtcbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuYXV0aG9yLW5hbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA4cHggMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIC5hdXRob3ItaGVhZGxpbmUge1xuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6ICRmb250LXNtYWxsMjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAudXJkdS10aGVtZSAmIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgLmNhcm91c2VsLWl0ZW1zIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAuYXV0aG9yLWhlYWRsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gIC51cmR1LXRoZW1lICYge1xuICAgIC5hdXRob3ItaGVhZGxpbmUge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0zO1xuICAgICAgbWFyZ2luLXRvcDogN3B4O1xuICAgIH1cbiAgfVxuXG4gIC5wZXJzaWFuLXRoZW1lICYge1xuICAgIC5hdXRob3ItaGVhZGxpbmUge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDQ7XG4gICAgfVxuICB9XG59XG5cbi5hdXRob3ItZmllbGQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICB0ZXh0LWFsaWduOiAkZGVmYXVsdC1kaXJlY3Rpb247XG4gIH1cbn1cblxuLmF1dGhvci1maWVsZC1pbWcge1xuICBpbWcge1xuICAgIG1heC13aWR0aDogNzVweDtcbiAgfVxufVxuXG4uYXV0aG9yLWZpZWxkLW5hbWUge1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIGZvbnQtc2l6ZTogMjZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgfVxuXG4gIC51cmR1LXRoZW1lICYge1xuICAgIC8vZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG59XG5cbi5hdXRob3ItZmllbGQtam9iLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZm9udC1zaXplOiAkZm9udC1tZWRpdW00O1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogIzg4ODg4ODtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uYXV0aG9yLWZpZWxkLXNvY2lhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICBhIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtNDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjODg4ODg4O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29sb3I6ICM4ODg4ODg7XG4gICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gICAgfVxuICB9XG59XG5cbi5hdXRob3ItZmllbGQtYmlvIHtcbiAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0yO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXdlaWdodDogMzAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4uaTEwMC1ibG9jayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW5saW5lLWdhbGxlcnkge1xuICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q2ZDZkNjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNmQ2ZDY7XG4gIHBhZGRpbmc6IDRweCAwIDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5cbnNwYW4uZ2FsbGVyeS1pY29uIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMThweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogOHB4O1xufVxuXG4uaW5saW5lLWdhbGxlcnktYmVmb3JlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiA4cHggMDtcblxuICBoNCB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0zO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDhweDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuaW5saW5lLWdhbGxlcnktY291bnQge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiAjZWMxYTJlO1xuICAgIGZvbnQ6IDcwMCAxNHB4IEluZGVwZW5kZW50IFNhbnMsIHNhbnMtc2VyaWY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogIzk0MGMxOTtcbiAgICB9XG4gIH1cbn1cblxuLmlubGluZS1nYWxsZXJ5LWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiA0OS41JTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5pbmxpbmUtZ2FsbGVyeS1wcmV2aWV3IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogNjYlO1xuXG4gIC5zaXplciB7XG4gICAgcGFkZGluZy10b3A6IDgwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5jaGV2cm9uLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgei1pbmRleDogMztcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6ICRmb250LWxhcmdlMTtcblxuICAgICYubmV4dC1pY29uIHtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgfVxuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG5cbiAgICAgICYubmV4dC1pY29uIHtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaW5saW5lLWdhbGxlcnktdGh1bWJuYWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIG1hcmdpbi10b3A6IDEycHg7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGZsZXg6IDE7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEycHg7XG4gIH1cbn1cblxuLmdhbGxlcnktdGh1bWJuYWlsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDhweCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMyUgLSA4cHgpO1xuICB9XG5cbiAgLnNpemVyIHtcbiAgICBwYWRkaW5nLXRvcDogODAlO1xuICB9XG59XG5cbi5hdXRob3ItYXZhdGFyIHtcbiAgd2lkdGg6IDcycHg7XG4gIGhlaWdodDogNzJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW46IDE2cHggOHB4IDAgMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkMWIyZjtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIC8vbWFyZ2luOiAxNnB4IDAgMCA4cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6IDEyNXB4O1xuICAgIGhlaWdodDogMTI1cHg7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxNnB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICB3aWR0aDogMTM3cHg7XG4gICAgaGVpZ2h0OiAxMzdweDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xuICB9XG5cbiAgLmhhcy1hdmF0YXIgJiB7XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWRpcmVjdGlvbjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5zZWFyY2gtZm9ybS13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXG4gIC5wYWdlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGNvbG9yOiAjMzAzNjM4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoLWZvcm0tbWFpbiB7XG4gICYuc2VhcmNoYm94IHtcbiAgICA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgLmZvcm0taXRlbS5mb3JtLXR5cGUtdGV4dGZpZWxkIHtcbiAgICAgICAgZmxleDogMSAxIDA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlucHV0LmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmZGZjO1xuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1pbi13aWR0aDogNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaC1tZXRhIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAkZm9udC1zbWFsbDI7XG5cbiAgLnNlYXJjaC10ZXJtIHtcbiAgICBjb2xvcjogIzVmNzE3NjtcblxuICAgIHNwYW4ge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICB9XG4gIH1cblxuICAudHlwbyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgfVxufVxuXG4ucG9zdHMtbGlzdCB7XG4gIC5hcnRpY2xlLWl0ZW0ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICB9XG59XG5cbi5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gIGNvbG9yOiByZ2JhKCRzZWNvbmRhcnktY29sb3IsIDAuNik7XG5cbiAgYSB7XG4gICAgY29sb3I6IHJnYmEoJHByaW1hcnktY29sb3IsIDAuOCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgLmhvcm9zY29wZXMtYXJ0aWNsZXMgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG59XG5cbi5lbnRyeS12aWRlby1jb250YWluZXIge1xuICBwYWRkaW5nOiAxNnB4IDA7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1sYXJnZTI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICB9XG4gIH1cblxuICAuZW50cnktc3VidGl0bGUgaDIsXG4gIC5lbnRyeS1tZXRhLWZpZWxkIHNwYW4sXG4gIC5lbnRyeS1tZXRhLWZpZWxkIHRpbWUsXG4gIC5lbnRyeS1tZXRhLWZpZWxkOmFmdGVyIHtcbiAgICBjb2xvcjogI2RhZGZlMTtcbiAgfVxuXG4gIC5hdXRob3ItdHdpdHRlciBhLFxuICAuZW50cnktbWV0YS1jb21tZW50IGEge1xuICAgIGNvbG9yOiAjZGFkZmUxO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmVudHJ5LW1ldGEtc2hhcmVzLWNvdW50IHNwYW4ge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgfVxufVxuXG4uYnJhbmRpbmcge1xuICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcbiAgY29sb3I6ICRkdXN0eS1ncmF5O1xuICBmb250LXNpemU6ICRmb250LXNtYWxsMTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGVzLWxpc3Qge1xufVxuXG4uc2hvdy1mb3ItcHJpbnRhYmxlLWFyZWEge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAvKi5pbmplY3RlZC1ibG9jaywgLmVudHJ5LXByb21vdGVkLXN0b3JpZXMsIC5zaGFyZS1ibG9jaywgLmZvbGxvdy1ibG9jaywgLmlubGluZS1nYWxsZXJ5LCAuZnVsbC1nYWxsZXJ5LCAucmVzcG9uc2l2ZS1lbWJlZCwgaWZyYW1lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9Ki9cbiAgLypcbiAgIGhlYWRlciwgZm9vdGVyLCAuc2lkZWJhci13cmFwLWhvbGRlciwgLmJyZWFkY3J1bWJzLXdyYXBwZXIsIC5lbnRyeS10YWdzLCAuZW50cnktY29tbWVudHMsIC5pbmplY3RlZC1ibG9jaywgLmVudHJ5LXByb21vdGVkLXN0b3JpZXMsIC5zaGFyZS1ibG9jaywgLmZvbGxvdy1ibG9jaywgLmlubGluZS1nYWxsZXJ5LCAuZnVsbC1nYWxsZXJ5LCAucmVzcG9uc2l2ZS1lbWJlZCwgaWZyYW1lIHtcbiAgICAgZGlzcGxheTogbm9uZTtcbiAgIH1cbiAgIC5jb250ZW50LXdyYXAtaG9sZGVyIHtcbiAgICAgd2lkdGg6IDEwMCU7XG4gICAgIG1heC13aWR0aDogbm9uZTtcbiAgIH1cbiAgIC5lbnRyeS10aXRsZSBoMSB7XG4gICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgfVxuICAgLmVudHJ5LW1ldGEge1xuICAgICB3aWR0aDogMTAwJTtcbiAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgfVxuICAgLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS1tZXRhLXdyYXBwZXIgPiAuZ3JpZC14ID4gLmNlbGwuc2hyaW5rIHtcbiAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgfVxuICAgKi9cbn1cblxuLnVyZHUtdGhlbWUge1xuICAqIHtcbiAgICB3b3JkLXNwYWNpbmc6IC0xcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaG9yb3Njb3BlLWl0ZW0ge1xuICBtYXgtd2lkdGg6IDMyMHB4O1xuICBtYXJnaW46IDAgYXV0byAycmVtO1xuXG4gIGEge1xuICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmhvcm9zY29wZS1pdGVtLWltZyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW0gMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCg0ODApIHtcbiAgICBwYWRkaW5nOiAxcmVtIDNyZW0gMDtcbiAgfVxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgYm9yZGVyOiBzaWx2ZXIgc29saWQgMXB4O1xuICB9XG5cbiAgLmRhaWx5LWhvcm9zY29wZXMgJiB7XG4gICAgYTphZnRlciB7XG4gICAgICBjb250ZW50OiBcItmK2YjZhdmKXCI7XG4gICAgfVxuICB9XG5cbiAgLndlZWtseS1ob3Jvc2NvcGVzICYge1xuICAgIGE6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLYo9iz2KjZiNi52YpcIjtcbiAgICB9XG4gIH1cblxuICAubW9udGhseS1ob3Jvc2NvcGVzICYge1xuICAgIGE6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLYtNmH2LHZilwiO1xuICAgIH1cbiAgfVxuXG4gIC5kYWlseS1ob3Jvc2NvcGVzICYsXG4gIC53ZWVrbHktaG9yb3Njb3BlcyAmLFxuICAubW9udGhseS1ob3Jvc2NvcGVzICYge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjc7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMXJlbTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhvcm9zY29wZS1pdGVtLW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgZm9udC1zaXplOiAkZm9udC1zbWFsbDQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ob3Jvc2NvcGUtaXRlbS1uYW1lIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG5cbi5ob3Jvc2NvcGUtaXRlbS1yYW5nZSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc21hbGw0O1xufVxuXG4ucmVsYXRlZC1ob3Jvc2NvcGUge1xuICBib3JkZXItdG9wOiA2cHggc29saWQgJGJsYWNrO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwcHg7XG4gIH1cbn1cblxuLyogLS0tLS0gTGl2ZSBibG9nIGxpc3Qgc3R5bGVzIC0tLS0tLSBTVEFSVCAtLS0tLS0gKi9cblxuLlJlY2VudFBvc3RzV2lkZ2V0IGlmcmFtZVtzcmMqPVwiandwbGF5ZXJcIl0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmxpdmVibG9nLWNhcHN1bGUge1xuICAvL21hcmdpbjogMCBhdXRvIDAuNXJlbTtcbiAgLy9wYWRkaW5nOiAwIDFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigpO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmxpdmVibG9nLWNhcHN1bGUgLmlubmVyIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweCAxNnB4O1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xufVxuXG4ubGl2ZWJsb2ctY2Fwc3VsZS5hY3RpdmUgLmlubmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZmQzODtcbn1cblxuLmxpdmVibG9nLWNhcHN1bGUgc3BhbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA4cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6ICRmb250LWxhcmdlMTtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTZweDtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTM7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ljb24tbGl2ZS1ibG9nLnBuZykgbm8tcmVwZWF0IDUwJTtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDhweDtcbiAgICB9XG4gIH1cbn1cblxuLmxpdmVibG9nLWNhcHN1bGUgdGltZSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtbGFyZ2UxO1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0zO1xuICB9XG59XG5cbmJvZHkuYXJ0aWNsZS1saXZlYmxvZyB7XG4gIC5lbnRyeS1hcnRpY2xlLWxpdmVibG9nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGFkZmUxO1xuICAgIHBhZGRpbmctdG9wOiAxOHB4O1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgfVxuICB9XG59XG5cbi5saXZlYmxvZyAuY29udGVudCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC50d2l0dGVyLXdpZGdldCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLmxpdmVibG9nIC5saXZlYmxvZy1jb250ZW50IC5jb250ZW50LFxuLmxiLWl0ZW1zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxpdmVibG9nIC5jb250ZW50IHtcbiAgICAvL2ZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMjtcbiAgfVxufVxuXG4ubGItaXRlbXMge1xuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4ubGItaXRlbSB7XG4gIGNvbG9yOiAjMjgxZTFlO1xufVxuXG4ubGl2ZWJsb2cgLmxpdmVibG9nLWNvbnRlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAtMjRweCAwIDAgMjhweDtcbiAgaGVpZ2h0OiA2OHB4O1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbWFyZ2luOiAtMjRweCAyOHB4IDAgMDtcbiAgfVxufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZGF0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udDogNzAwIDE3cHggSW5kZXBlbmRlbnQgU2Fucywgc2Fucy1zZXJpZjtcbiAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDIwcHg7XG4gIG1hcmdpbjogMjRweCAwIDI0cHggMjBweDtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIG1hcmdpbjogMjRweCAyMHB4IDI0cHggMDtcbiAgfVxuXG4gIGNvbG9yOiAjODg4O1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZGF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjODg4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTFweDtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTIwcHg7XG4gIHdpZHRoOiAxOXB4O1xuICBoZWlnaHQ6IDE5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5saXZlYmxvZyAucG9zdC1kYXRlIHRpbWUge1xuICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogOHB4O1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHtcbiAgcGFkZGluZzogMTZweCAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODg7XG4gIGJvcmRlci13aWR0aDogMCAxcHggMXB4O1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICBmb250LXNpemU6ICRmb250LXNtYWxsMztcbn1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCBsaS5hdXRob3ItbmFtZSB7XG4gIGNvbG9yOiAjZWMxYTJlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5saXZlYmxvZyAucG9zdC1mb290ZXIgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCBsaSB7XG4gIHBhZGRpbmc6IDAgOHB4O1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmxhc3QtY2hpbGQge1xuICBjb2xvcjogIzg4ODtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJ8XCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtMXB4O1xufVxuXG4uaGlnaGxpZ2h0cy13cmFwcGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5oaWdobGlnaHRzIHtcbiAgY29sb3I6ICMyODFlMWU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZmNmY2Y7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG5cbiAgYSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZ2hsaWdodHMgaDIge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgfVxufVxuXG4uaGlnaGxpZ2h0cyBoMiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5oaWdobGlnaHRzID4gZGl2IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmhpZ2hsaWdodHMgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpc3Qtc3R5bGU6IG5vcm1hbDtcbiAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAzMXB4O1xuICBmb250LXNpemU6ICRmb250LXNtYWxsMztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICB3aWR0aDogMTlweDtcbiAgICBoZWlnaHQ6IDE5cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uL2ltZy9zdmcvd2hpdGVfYXJyb3cuc3ZnKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxOXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDJweDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMjtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgZmlsdGVyOiBGbGlwSDtcbiAgICAgIC1tcy1maWx0ZXI6IFwiRmxpcEhcIjtcbiAgICAgIHRvcDogMnB4O1xuICAgIH1cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjZGFkZmUxO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMXB4O1xuICAgIHRvcDogMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlnaGxpZ2h0cyBsaSBhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbiNsaXZlLWxpc3QtdXBkYXRlLWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZDM4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjODg4O1xuICBkaXNwbGF5OiBub25lO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMTVweCAyMHB4IDEwcHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGNvbG9yOiAjMjgxZTFlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcblxuICAmLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gICNsaXZlLWxpc3QtdXBkYXRlLWJ1dHRvbiAudXBkYXRlLXRleHQge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIC5pY29uLXJlZnJlc2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC43NXJlbTtcbiAgfVxufVxuXG4ubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAmOmJlZm9yZSB7XG4gICAgd2lkdGg6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjODg4O1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDI4cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLnBhZ2luYXRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAucHJldiB7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICB9XG5cbiAgICAubmV4dCB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xuICAgIH1cblxuICAgIC5zaG9ydGN1dCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICA+ICoge1xuICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZm9udDogNzAwIDE2cHggXCJJbmRlcGVuZGVudCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaWNvbi1ob2xkZXIge1xuICAmLmFicy1lbGVtZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjVyZW07XG4gICAgbGVmdDogMC41cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy93aWR0aDogM3JlbTtcbiAgICAvL2hlaWdodDogM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICYuaWNvbi1mYWNlYm9vayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmYWNlYm9vaztcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgJi5pY29uLXR3aXR0ZXIsXG4gICAgICAmLmljb24tdHdpdHRlci14IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHR3aXR0ZXI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG5cbiAgICAgICYuaWNvbi15b3V0dWJlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHlvdXR1YmU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tIExpdmUgYmxvZyBsaXN0IHN0eWxlcyAtLS0tLS0gRU5EIC0tLS0tLSAqL1xuXG4uc3Vic2NyaWJlLWZpZWxkLXRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnN1YnNjcmliZS1ibG9ja3Mge1xuICAuZ3JpZC1pdGVtcyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmFydGljbGUtaXRlbSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcblxuICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtLWltZyBhOmFmdGVyIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi5jYXJkLWl0ZW0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTVlOGVhO1xuXG4gIC5jYXJkLXNlY3Rpb24ge1xuICB9XG59XG5cbi5hcnRpY2xlLWJvb2sge1xuICAuZW50cnktYXJ0aWNsZS10b3BwZXIge1xuICAgIG1heC13aWR0aDogMTI0MHB4O1xuICB9XG5cbiAgLmVudHJ5LWhlYWRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS1zdWJ0aXRsZSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogIzg4ODtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtbGFyZ2UyO1xuICAgIH1cbiAgfVxuXG4gIC5hdXRob3ItYXZhdGFyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDFyZW0gYXV0bztcbiAgICAvL3dpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmVudHJ5LWhlYWRlci5oYXMtYXZhdGFyIC5lbnRyeS1tZXRhLXdyYXBwZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmVudHJ5LW1lZGlhLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwIDJyZW07XG4gIH1cblxuICAuZW50cnktYXJ0aWNsZS10b3BwZXIgLmNhcHRpb24tZmllbGQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICB3aWR0aDogY2FsYygoMTAwJSAtIDgwMHB4KSAvIDIpO1xuICAgIH1cbiAgfVxufVxuXG4uZmlyc3QtbGV0dGVyIHtcbiAgZm9udC1zaXplOiA1MnB4O1xuICB3aWR0aDogNTJweDtcbiAgaGVpZ2h0OiA1MnB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEycHg7XG4gIG1hcmdpbi10b3A6IDZweDtcbiAgZmxvYXQ6ICRkZWZhdWx0LWRpcmVjdGlvbjtcbiAgcGFkZGluZzogNDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyMjI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMjI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIH1cbn1cblxuLmNhbXBhaWduLWFyZWEge1xuICAuYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2FhYTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICAgIGNvbG9yOiAjMjIyO1xuICB9XG59XG5cbi5wb2RjYXN0LWJhZGdlIHtcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgd2lkdGg6IDQ3LjUlO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLnBvZGNhc3QtbGlzdC1jaGFubmVsIHtcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG5cbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBvZGNhc3QtbGlzdC5oYXMtc2VwYXJhdG9yIC5ncmlkLXgge1xuICBib3JkZXItYm90dG9tOiAwLjVweCBzb2xpZCAjYmRiZGJkO1xuICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgLmFydGljbGUtaW1nIHtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLXBvZGNhc3Qge1xuICBwYWRkaW5nOiAwLjJyZW07XG4gIC5wb2RjYXN0LWJsYWNrICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHAge1xuICAgICAgY29sb3I6ICM4YzhjOGM7XG4gICAgfVxuICB9XG59XG4ucG9kY2FzdC1zb2NpYWwge1xuICBhIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB9XG4gIGltZyB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICB9XG59XG4vLyA9PT09PT09PT09PT09PSA8PiA9PT09PT09PT09PT09PT0gQWRkIHlvdXIgY3VzdG9tIHN0eWxlcyBiZWZvcmUgdGhpcyBsaW5lLiA9PT09PT09PT09PT09PSA8PiA9PT09PT09PT09PT09PT1cblxuLy8gc2xpY2sgY2Fyb3VzZWwgbG9hZGluZyAtLS0tIFNUQVJUIC0tLS0tLVxuLnNsaWNrLWxvYWRpbmcge1xuICBoZWlnaHQ6IDQwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAkd2hpdGUtc21va2UgdXJsKC4uL2ltZy9hamF4LWxvYWRlci5naWYpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuXG4gID4gZGl2IHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJi5zbGljay1pbml0aWFsaXplZCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cblxuICAuc2xpY2stbGlzdCB7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0O1xuICB9XG59XG5cbi8vIHNsaWNrIGNhcm91c2VsIGxvYWRpbmcgLS0tLSBFTkQgLS0tLS0tXG5cbi8vIGxpbWVsaWdodC1wbGF5ZXIgb3ZlcnJpZGUgc3R5bGVzIC0tLS0gU1RBUlQgLS0tLS0tXG5cbi5saW1lbGlnaHQtcGxheWVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDU2LjM0JTtcbiAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy9wYWRkaW5nLXRvcDogMS41NjI1cmVtO1xufVxuXG4ubGltZWxpZ2h0LXBsYXllciAudmpzLWxpbWVsaWdodC1iaWctcGxheSB7XG4gIGZvbnQtc2l6ZTogMTJlbSAhaW1wb3J0YW50O1xufVxuXG4vLyBsaW1lbGlnaHQtcGxheWVyIG92ZXJyaWRlIHN0eWxlcyAtLS0tIEVORCAtLS0tLS1cblxuLyogLS0tLS0tLS0gRmluYWwgc2F5IC0tLS0tLS0tLS0tLS0tLS0gU3RhcnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLm1lZGlhLW9iamVjdC1mb3Itc21hbGwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LWNvbnRhaW5lcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICAgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbigwKTtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKHRvcCk7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjc1cmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXNlY3Rpb24oMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5sYXJnZS1mbHVpZC1pbWcge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4udXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuXG4ubm8tYm9yZGVyIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4uYmxvY2stY3VzdG9tLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNtb2tlO1xuICBjb2xvcjogJGJsYWNrO1xufVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLWZvci1zbWFsbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMS4yNXJlbTtcbiAgfVxufVxuXG4ud2l0aC1wYWRkaW5nIHtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLmhhcy1wYWRkaW5nIHtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4udmVydGljYWwtcGFkZCB7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbn1cblxuLmZ0LXN6LTE1IHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG59XG5cbi5mdC1zei0xOCB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xufVxuXG4uZnQtc3otMjgge1xuICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAucm93IC5sYXJnZS1jb2x1bW4ucm93LnJvdyxcbiAgLnJvdyAucm93LnJvdy5sYXJnZS1jb2x1bW5zIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgLnhzbWFsbC1mdWxsLXdpZHRoID4gbGksXG4gIC54c21hbGwtZnVsbC13aWR0aC5jb2x1bW5zIHtcbiAgICBsaXN0LXN0eWxlOiBvdXRzaWRlIG5vbmUgbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udG9wLXBhZGRpbmctMSB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuXG4udG9wLXBhZGRpbmctMiB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xufVxuXG4uc2VlLW1vcmUtbGluayB7XG4gIGEge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgfVxuICB9XG59XG5cbi5ncmF5LWZvbnQtY29sb3Ige1xuICBjb2xvcjogJGdyYXk7XG59XG5cbi5wcmltYXJ5LWZvbnQtY29sb3Ige1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG59XG5cbi5lbXBlcm9yLWZvbnQtY29sb3Ige1xuICBjb2xvcjogJGVtcGVyb3I7XG4gIEBhdC1yb290IHtcbiAgICBoMyN7Jn0sXG4gICAgaDQjeyZ9LFxuICAgIGg1I3smfSxcbiAgICBoNiN7Jn0ge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYm9yZGVyLWdyYXktYXJvdW5kIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG59XG5cbi50aGljay1ib3JkZXItZ3JheS1hcm91bmQge1xuICBib3JkZXI6IDJweCBzb2xpZCAkbGlnaHQtZ3JheTtcbn1cblxuLnRoaWNrZXItYm9yZGVyLWdyYXktYXJvdW5kIHtcbiAgYm9yZGVyOiA0cHggc29saWQgJGxpZ2h0LWdyYXk7XG59XG5cbi5ncmF5LWJvcmRlci1ib3R0b20ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgjYjNiM2IzLCAwLjMpO1xufVxuXG4uZ3JheS1ib3JkZXItdG9wIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoI2IzYjNiMywgMC4zKTtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbn1cblxuLnRleHR1cmUtcGluay1iZyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIiAuIC4gL2ltZy8gdGV4dHVyZS1waW5rIC4ganBnIFwiKSByZXBlYXQgY2VudGVyXG4gICAgY2VudGVyO1xuXG4gIGgyLFxuICBwLFxuICBhLFxuICBkaXYge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLndoaXRlLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4ubGlnaHQtZ3JheS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXG4gICYuYWJzLWVsZW1lbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuICB9XG59XG5cbi53aGl0ZS1zbW9rZS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZTtcbiAgY29sb3I6ICRibGFjaztcbn1cblxuLndoaXRlLXNtb2tlLW9wYWNpdHktYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZS1zbW9rZSwgMC42KTtcbiAgY29sb3I6ICRibGFjaztcbn1cblxuLnRvcC1wb3J0aW9uLWJsYWNrLWJnIHtcbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1NSU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxYzFjO1xuICB9XG59XG5cbi5ib3R0b20tcG9ydGlvbi1zbW9rZS1iZyB7XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgYm90dG9tOiAwO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzAlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNtb2tlO1xuICB9XG59XG5cbi53aGl0ZS10by1zbW9rZS1ncmFkaWVudC1iZyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICR3aGl0ZSwgJHNtb2tlKTtcbn1cblxuLndoaXRlLXRvLWxpZ2h0LWdyYXktZ3JhZGllbnQtYmcge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkd2hpdGUsICRsaWdodC1ncmF5KTtcbn1cblxuLnNtb2tlLXRvLXdoaXRlLWdyYWRpZW50LWJnIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHNtb2tlLCAkd2hpdGUpO1xufVxuXG4ubGlnaHQtZ3JheS10by13aGl0ZS1ncmFkaWVudC1iZyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRsaWdodC1ncmF5IDcwJSwgJHdoaXRlKTtcbn1cblxuLmdyYWRpZW50LWJnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgOTBkZWcsXG4gICAgcmdiYSgyNDcsIDI0NywgMjQ3LCAwLjEpIDMzJSxcbiAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNikgMFxuICApO1xuXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNzgzcHg7XG4gICAgYm90dG9tOiAwO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiIC4gLiAvaW1nLyB0ZXh0dXJlMiAuIHBuZyBcIikgbm8tcmVwZWF0IGJvdHRvbSBjZW50ZXI7XG4gIH1cbn1cblxuLyoudGV4dHVyZS1iZyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiAuIC4gL2ltZy8gdGV4dHVyZTIgLiBwbmcgXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufSovXG5cbi5ncmF5LWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLXNtb2tlO1xuICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcblxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgIGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5kYXJrLWdyYXktYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUyNTI1O1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJ1dHRvbi5ob2xsb3csXG4ucGFnZXItLWluZmluaXRlLXNjcm9sbCBsaSBhIHtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG59XG5cbmxhYmVsIHtcbiAgc3Bhbi5yZXF1aXJlZCB7XG4gICAgY29sb3I6IHJlZDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4ubGFzdC1uby1tYXJnaW4ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGFydGljbGU6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIGg0LFxuICAgICAgaDUsXG4gICAgICBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tYXhXaWR0aC1tZWRpdW0sXG4ubWF4V2lkdGgtc21hbGwsXG4ubWF4V2lkdGgteHNtYWxsIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xufVxuXG4ubWF4V2lkdGgtbWVkaXVtIHtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbn1cblxuLm1heFdpZHRoLXNtYWxsIHtcbiAgbWF4LXdpZHRoOiA2NzBweDtcbn1cblxuLm1heFdpZHRoLXhzbWFsbCB7XG4gIG1heC13aWR0aDogMzYwcHg7XG59XG5cbi5ncmlkLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xuICB9XG59XG5cbi5zbWFsbC1ncmlkLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG4gICAgLmFydGljbGUtaXRlbS1pbmZvLFxuICAgIC5hcnRpY2xlLWl0ZW0tb3ZlcmJveC1pbm5lciB7XG4gICAgICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludCgzOTApfSBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAgIC5ncmlkLWl0ZW1zIHtcbiAgICAgIC5hcnRpY2xlLWl0ZW0taW5mbyxcbiAgICAgIC5hcnRpY2xlLWl0ZW0tb3ZlcmJveC1pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwge1xuICAgIC5ibG9jay10aXRsZS5zdHlsZS12MyBzcGFuLFxuICAgIC5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIHNwYW4sXG4gICAgLnBhZ2UtdGl0bGUuc3R5bGUtdjMgc3BhbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0tb3ZlcmJveC1pbm5lciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY2VudGVyZWQtY29sdW1uIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oY2VudGVyKTtcbn1cblxuLm5ld3NsZXR0ZXItYXJlYSB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAkYmxhY2s7XG5cbiAgaW5wdXQge1xuICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDE7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cIiBzdWJtaXQgXCJdIHtcbiAgICBib3JkZXI6IDA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIGhlaWdodDogMi42cmVtO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4ubmV3c2xldHRlci1hcmVhLWludHJvIHtcbiAgaDMge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLm1jX2VtYmVkX3NpZ251cCBkaXYjbWNlLXJlc3BvbnNlcyB7XG4gIGZsb2F0OiAkZGVmYXVsdC1kaXJlY3Rpb247XG4gIHRvcDogLTEuNGVtO1xuICBwYWRkaW5nOiAwZW0gMC41ZW0gMGVtIDAuNWVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogOTAlO1xuICBtYXJnaW46IDAgNSU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ubWNfZW1iZWRfc2lnbnVwIGRpdi5yZXNwb25zZSB7XG4gIG1hcmdpbjogMWVtIDA7XG4gIHBhZGRpbmc6IDFlbSAwLjVlbSAwLjVlbSAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZmxvYXQ6ICRkZWZhdWx0LWRpcmVjdGlvbjtcbiAgdG9wOiAtMS41ZW07XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiA4MCU7XG59XG5cbi5tY19lbWJlZF9zaWdudXAgI21jZS1lcnJvci1yZXNwb25zZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tY19lbWJlZF9zaWdudXAgI21jZS1zdWNjZXNzLXJlc3BvbnNlIHtcbiAgY29sb3I6ICM1MjkyMTQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tY19lbWJlZF9zaWdudXAgbGFiZWwuZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxLjA1ZW07XG4gIHRleHQtYWxpZ246ICRkZWZhdWx0LWRpcmVjdGlvbjtcbiAgcGFkZGluZzogMC41ZW0gMDtcbn1cblxuLmJhbm5lci1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uc2NoZWR1bGUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q2ZDZkNjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNmQ2ZDY7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMXJlbSAwO1xuICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuXG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuYXV0aG9yLW5hbWUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuXG4gIC5hdXRob3ItbGl2ZSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1sYXJnZTE7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuXG4gIHVsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5uZXdzLWl0ZW0ge1xuICBwYWRkaW5nOiAwIDEuNXJlbTtcbn1cblxuLnN0YXRpb25zLWxpc3Qge1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDAgMC4ycmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBEcnVwYWwgYWRtaW4gc3R5bGVzIC0tLS0tIFNUQVJUIC0tLS0tKi9cbiNhZG1pbi1tZW51IHtcbiAgei1pbmRleDogMTAwMDAwMDE7XG59XG5cbiNvdmVybGF5LWNvbnRhaW5lcixcbi5vdmVybGF5LW1vZGFsLWJhY2tncm91bmQsXG4ub3ZlcmxheS1lbGVtZW50IHtcbiAgei1pbmRleDogOTk5OTk5OTtcbn1cblxuLm92ZXJsYXktYWN0aXZlIHtcbiAgei1pbmRleDogMTAwMDAwMDA7XG59XG5cbmRpdiN0b29sYmFyIGEjZWRpdC1zaG9ydGN1dHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmh0bWwub3ZlcmxheS1vcGVuIGJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYXNzd29yZC1zdHJlbmd0aCxcbmRpdi5wYXNzd29yZC1jb25maXJtIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZHJ1cGFsLXRhYnMgdWwudGFicyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuXG4gIGxpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDVweCA4cHg7XG4gICAgcGFkZGluZzogNXB4IDE1cHg7XG5cbiAgICAmOmhvdmVyLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGFnZS10YXhvbm9teS10ZXJtIC5hcnRpY2xlLXRlYXNlciAuYXJ0aWNsZS1jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5sb2FkLW1vcmUgdWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ucGFnZXItLWluZmluaXRlLXNjcm9sbCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgbGkgYSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKGZhbHNlLCAkZ3JheSwgJHByaW1hcnktY29sb3IsICRzZWNvbmRhcnktY29sb3IsIGhvbGxvdyk7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRncmF5LCB0cmFuc3BhcmVudCwgJHNlY29uZGFyeS1jb2xvcik7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aWR0aDogMzAlO1xuICB9XG59XG5cbi5hZG1pbi1tZW51IHtcbiAgdWwudGFicy5wcmltYXJ5IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmVsZW1lbnQtaW52aXNpYmxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogRHJ1cGFsIGFkbWluIHN0eWxlcyAtLS0tLSBFTkQgLS0tLS0qL1xuXG4vKiAtLS0tLS0tIFNvY2lhbHMgQnRucyBTdHlsZXMgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuXG4uc29jaWFscy1hcmVhIHtcbiAgaGVhZGVyICYsXG4gICNzdGlja3ktaGVhZGVyICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC5jYW52YXMtcGFuZWwgJiB7XG4gICAgcGFkZGluZzogMS41cmVtIDA7XG4gIH1cblxuICBmb290ZXIgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgaDYge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDM7XG4gICAgfVxuICB9XG59XG5cbi5zb2NpYWwtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkc2lsdmVyO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIG1hcmdpbjogMCA4cHggMCAwO1xuICBsaW5lLWhlaWdodDogMTtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIG1hcmdpbjogMCAwIDAgOHB4O1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBsaW5lYXI7XG4gIH1cblxuICAuc2hhcmVfdG9vbHMgJiB7XG4gICAgbWFyZ2luOiAwIDAgMCA0cHg7XG4gIH1cblxuICAuZW50cnktbWV0YS13cmFwcGVyICYucm91bmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2ZDZkNmQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgJi5yb3VuZCB7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8vICY6aG92ZXIsXG4gICAgLy8gJjpmb2N1cyB7XG4gICAgLy8gICBjb2xvcjogJHdoaXRlO1xuICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3IgIWltcG9ydGFudDtcbiAgICAvLyB9XG4gIH1cblxuICAuY2FudmFzLXBhbmVsICYge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAjMWQxZDFiO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6IDE3cHg7XG4gIH1cbn1cblxuLnNvY2lhbHMtYmxvY2sge1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBhIHtcbiAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICAvL3dpZHRoOiAzNXB4ICFpbXBvcnRhbnQ7XG4gICAgLy9oZWlnaHQ6IDM1cHg7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIC8vbGluZS1oZWlnaHQ6IDM5cHggIWltcG9ydGFudDtcbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3IgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuXG4uZW52ZWxvcGUtYnRuIHtcbiAgY29sb3I6ICRlbnZlbG9wZTtcbn1cblxuLmVudmVsb3BlLWJ0bi1ob3ZlciB7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkZW52ZWxvcGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucnNzLWJ0biB7XG4gIGNvbG9yOiAkcnNzO1xufVxuXG4ucnNzLWJ0bi1ob3ZlciB7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkcnNzICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnlvdXR1YmUtYnRuIHtcbiAgY29sb3I6ICR5b3V0dWJlO1xufVxuXG4ueW91dHViZS1idG4taG92ZXIge1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHlvdXR1YmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ29vZ2xlLXBsdXMtYnRuIHtcbiAgY29sb3I6ICRncGx1cztcbn1cblxuLmdvb2dsZS1wbHVzLWJ0bi1ob3ZlciB7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkZ3BsdXMgIWltcG9ydGFudDtcbiAgfVxufVxuXG4udHdpdHRlci1idG4ge1xuICBjb2xvcjogJHR3aXR0ZXI7XG59XG5cbi50d2l0dGVyLWJ0bi1ob3ZlciB7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkdHdpdHRlciAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5mYWNlYm9vay1idG4ge1xuICBjb2xvcjogJGZhY2Vib29rO1xufVxuXG4uZmFjZWJvb2stYnRuLWhvdmVyIHtcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRmYWNlYm9vayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi53aGF0c2FwcC1idG4ge1xuICBjb2xvcjogJHdoYXRzYXBwO1xufVxuXG4ud2hhdHNhcHAtYnRuLWhvdmVyIHtcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR3aGF0c2FwcCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5pbnN0YWdyYW0tYnRuIHtcbiAgY29sb3I6ICRpbnN0YWdyYW07XG59XG5cbi5pbnN0YWdyYW0tYnRuLWhvdmVyIHtcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRpbnN0YWdyYW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc25hcGNoYXQtYnRuIHtcbiAgY29sb3I6ICRzbmFwY2hhdDtcbiAgdGV4dC1zaGFkb3c6IDAgMCAycHggJG1lZGl1bS1ncmF5O1xufVxuXG4udGVsZWdyYW0tYnRuIHtcbiAgY29sb3I6ICR0ZWxlZ3JhbTtcbn1cblxuLmxpbmtlZGluLWJ0biB7XG4gIGNvbG9yOiAkbGlua2VkaW47XG59XG5cbi5waW50ZXJlc3QtYnRuIHtcbiAgY29sb3I6ICRwaW50ZXJlc3Q7XG59XG5cbi5zb2NpYWxzLWJ0bnMtYmlnIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gIC5zb2NpYWwtYnRuIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uZW52ZWxvcGUtYnRuLWJnIHtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVudmVsb3BlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4ucnNzLWJ0bi1iZyB7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyc3MgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi55b3V0dWJlLWJ0bi1iZyB7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5b3V0dWJlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4ueW91dHViZS1idG4tYmctaG92ZXIge1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeW91dHViZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLmdwbHVzLWJ0bi1iZyB7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncGx1cyAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLnR3aXR0ZXItYnRuLWJnIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJHR3aXR0ZXIgIWltcG9ydGFudDtcbiAgLy8gY29sb3I6ICR3aGl0ZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLnR3aXR0ZXItYnRuLWJnLWhvdmVyIHtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLmZhY2Vib29rLWJ0bi1iZyB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICRmYWNlYm9vaztcbiAgLy8gY29sb3I6ICR3aGl0ZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZhY2Vib29rICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4uZmFjZWJvb2stYnRuLWJnLWhvdmVyIHtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZhY2Vib29rICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4uaW5zdGFncmFtLWJ0bi1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnN0YWdyYW0gIWltcG9ydGFudDtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLmluc3RhZ3JhbS1idG4tYmctaG92ZXIge1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5zdGFncmFtICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4uZ29vZ2xlLXBsdXMtYnRuLWJnLWhvdmVyIHtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdwbHVzICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4uc25hcGNoYXQtYnRuLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNuYXBjaGF0ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzbmFwY2hhdDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi50ZWxlZ3JhbS1idG4tYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVsZWdyYW0gIWltcG9ydGFudDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgLmljb24tdGVsZWdyYW0xOmJlZm9yZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRlbGVncmFtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLmxpbmtlZGluLWJ0bi1iZyB7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rZWRpbiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLnBpbnRlcmVzdC1idG4tYmcge1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGludGVyZXN0ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4ud2hhdHNhcHAtYnRuLWJnIHtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoYXRzYXBwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4uaWNvbi1lbWFpbDpiZWZvcmUge1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG4vKiAtLS0tLS0tIFNvY2lhbHMgQnRucyBTdHlsZXMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuI3JldHVybi10by10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICM2ZDZkNmQ7XG4gIG9wZWNpdHk6IDAuNztcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDM1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDM1cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgei1pbmRleDogMTA7XG59XG5cbiNyZXR1cm4tdG8tdG9wIGkge1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTNweDtcbiAgZm9udC1zaXplOiAkZm9udC1tZWRpdW00O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbiNyZXR1cm4tdG8tdG9wOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG59XG5cbiNyZXR1cm4tdG8tdG9wOmhvdmVyIGkge1xuICBjb2xvcjogI2ZmZjtcbiAgdG9wOiA1cHg7XG59XG5cbi8qIC0tLS0tLS0tIEZpbmFsIHNheSAtLS0tLS0tLS0tLS0tLS0tIEVuZCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYXJ0aWNsZS12Mixcbi5hcnRpY2xlLXYyICoge1xuICBmb250LWZhbWlseTogWWVrYW4sIFwiWWVrYW4gTnVtYmVyc1wiICFpbXBvcnRhbnQ7XG59XG5cbi5hcnRpY2xlLXYzLFxuLmFydGljbGUtdjMgKiB7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gTmFza2ggQXJhYmljXCIgIWltcG9ydGFudDtcbn1cblxuLnBlcnNpYW4tdGhlbWUge1xuICAuZW50cnktbWVkaWEge1xuICAgIC5jYXB0aW9uLWZpZWxkIHtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hcmFiaWMtdGhlbWUge1xuICAubmF2LWNvbnRhaW5lciB7XG4gICAgPiAubWVudSB7XG4gICAgICA+IGxpLm1lbnUtNjkyMSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IGxpLmFjdGl2ZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5pbmR5LXR2IHtcbiAgbWFpbiB7XG4gICAgcGFkZGluZzogMC41cmVtIDAgMDtcbiAgfVxuXG4gIC5iZy1ncmF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubG9nby10diB7XG4gICAgYSB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGhlaWdodDogMTA3cHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDM4JTtcbiAgICAgIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkICNiZGJkYmQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9sb2dvdHYucG5nP3YzKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjMwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNsaWNrLXRyYWNrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICAuY3VycmVudFZpZGVvIHtcbiAgICA+IGg2IHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuXG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cbiAgfVxuXG4gIC51cE5leHRWaWRlb3Mge1xuICAgID4gaDYge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMCAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5tZWRpYS12aWRlbyB7XG4gICAgLmFydGljbGUtaXRlbS1pbWctdHYge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAyM3B4O1xuICAgICAgICBoZWlnaHQ6IDIzcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICBmb250LXNpemU6ICRmb250LW1lZGl1bTE7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuNSk7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcblxuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRleHQtaW5kZW50OiAtM3B4O1xuICAgICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgICYuZHVyYXRpb24ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgIG1hcmdpbjogMC41cmVtIDAuM3B4O1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMyMjI7XG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDE7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gICAgICAgICAgcGFkZGluZzogMnB4IDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5vYmplY3RzLWxpc3Qge1xuICAgICYuaGFzLXNlcGFyYXRvciB7XG4gICAgICAub2JqZWN0LWl0ZW0ge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwLjVweCBzb2xpZCAjYmRiZGJkO1xuXG4gICAgICAgIC5tZWRpYS1vYmplY3Qge1xuICAgICAgICAgICYubWVkaWEtdmlkZW8ge1xuICAgICAgICAgICAgLm1lZGlhLW9iamVjdC1pbWcsXG4gICAgICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZy10diB7XG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjNweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIzcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyNiwgNDYsIDAuNSk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAmLmR1cmF0aW9uIHtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDAuNXJlbSAwLjNweDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzIyMjtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwxO1xuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mbG9hdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLnR2LXNsaWRlciB7XG4gICAgLmFydGljbGUtaXRlbSB7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTVweDtcbiAgICB9XG5cbiAgICAuc2xpY2stcHJldixcbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICB0b3A6IDM4JTtcbiAgICB9XG5cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAyNXB4O1xuICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5wbGF5bGlzdFNsYWJBbmRUaXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgI2JkYmRiZDtcblxuICAgID4gaDQge1xuICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDcwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3NtYWxsdHZsb2dvLnBuZz92Myk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1OXB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNTNweDtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDYwcHg7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0gUG9kY2FzdCBibGFjay0tLSovXG5cbi5wb2RjYXN0LWl0ZW1zIHtcbiAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG5cbiAgLml0ZW1zIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTVlOGVhO1xuICAgIC5wb2RjYXN0LWJsYWNrICYge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNjM2MzYzO1xuICAgIH1cbiAgICBtYXJnaW46IDJyZW0gMDtcbiAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC50YWdnZWQge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogLTVweCAwcHggMCA3cHggIzAwYjVmNiwgNXB4IDBweCAwIDdweCAjMDBiNWY2LFxuICAgICAgICAgICAgMCAwIDAgN3B4ICMwMGI1ZjY7XG4gICAgICAgICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGI1ZjY7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm92ZXJsYXkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgfVxuXG4gICAgICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDQyJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1saW5lLFxuICAgICAgICAuc21hbGwtbGluayB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0zO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmluZm8ge1xuICAgIG1hcmdpbjogMCAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAuY2FwdGlvbiB7XG4gICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICB9XG5cbiAgICAuYWN0aW9ucyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDMwcHg7XG4gICAgICBhIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE0NXB4O1xuICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnBvZGNhc3QtYmxhY2sge1xuICAucGR0MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYjAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5icmVhZGNydW1icyB7XG4gICAgbGkge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgICB9XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgfVxuXG4gICAgICAuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICNlYzFhMmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIG1haW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgI21haW4tZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgLmZvb3Rlci1tZW51IHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNlYzFhMmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoMyxcbiAgaDQsXG4gIGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIGE6bm90KC5zZWUtYWxsKSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAuYWN0aW9ucyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgIGJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLy8vXG5cbi5kYXRlMSB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogJGRhcmstZ3JheTtcbn1cblxuLmhlYWR0eHQge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LWZhbWlseTogXCJJbmRlcGVuZGVudCBTYW5zXCI7XG59XG5cbi5pbWdDb21tZW50IHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5NYWluSGVyb0ltZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiA1MCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxuXG4gICYuZ3JpZC14IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZm91ci1hcnRpY2xlczEgLmFydGljbGUtaXRlbS1jb250ZW50Lk92ZXJUZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICB9XG59XG5cbi5NYWluSGVyb1NtYWxsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy8vL1xuXG4uZm9ybS1yZWdpc3RyYXRpb24ge1xuICAuZm9ybS1yZWdpc3RyYXRpb24taW1nIHtcbiAgICBtYXJnaW4tbGVmdDogMTFyZW07XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5mb3JtLXJlZ2lzdHJhdGlvbi1pbWctY2FwdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQoXG4gICAgICAgIGxpbmVhcixcbiAgICAgICAgbGVmdCBib3R0b20sXG4gICAgICAgIGxlZnQgdG9wLFxuICAgICAgICBjb2xvci1zdG9wKDEsIHJnYmEoJHdoaXRlLCAwLjMpKSxcbiAgICAgICAgLyogVG9wICovIGNvbG9yLXN0b3AoMCwgcmdiYSgkd2hpdGUsIDEpKSAvKiBCb3R0b20gKi9cbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLXJlZ2lzdHJhdGlvbi1ncm91cCB7XG4gIHBhZGRpbmc6IDBweDtcbiAgZGlzcGxheTogZmxleDtcblxuICAuZm9ybS1yZWdpc3RyYXRpb24taW5wdXQge1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyOiAycHggc29saWQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXJlZ2lzdHJhdGlvbi1zdWJtaXQtYnV0dG9uIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYnV0dG9uKHRydWUsICRwcmltYXJ5LWNvbG9yLCBhdXRvLCBhdXRvLCBzb2xpZCk7XG5cbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmb250LXNpemU6ICRmb250LXNtYWxsMjtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBiYWNrZ3JvdW5kOiAjOTk5NTk2O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzIGxpbmVhcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2lkdGg6IDMwJTtcbiAgfVxuXG4gIC5mb3JtLXJlZ2lzdHJhdGlvbi1zb2NpYWwtYnV0dG9uIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtbWVkaXVtMTtcbiAgICBAaW5jbHVkZSBidXR0b24odHJ1ZSwgYXV0bywgaG9sbG93KTtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgd2lkdGg6IDU3JTtcblxuICAgIC5mYSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1yZWdpc3RyYXRpb24tbWVtYmVyLXNpZ25pbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc21hbGwzO1xuXG4gICAgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1yZWdpc3RyYXRpb24tdGVybXMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6ICRmb250LXNtYWxsMTtcblxuICAgIGE6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICAgIH1cblxuICAgIGE6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICB9XG4gIH1cblxuICAub3ItZGl2aWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMS41cmVtIDBweDtcbiAgICBmb250LXNpemU6ICRmb250LXNtYWxsMztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIEBpbmNsdWRlIGhvcml6b250YWwtY2VudGVyO1xuICAgICAgdG9wOiAtMTJweDtcblxuICAgICAgcGFkZGluZzogMCA4cHg7XG4gICAgfVxuICB9XG59XG4uaW1nbG9nbyB7XG4gIC8vIG1hcmdpbi1sZWZ0OiAtMTFyZW07XG4gIC8vIG1hcmdpbi1yaWdodDogOXJlbTtcbiAgLy8gd2lkdGg6IDIwJTtcbiAgaGVpZ2h0OiAxNSU7XG59XG5cbi5idXR0b24uaG9sbG93LmJ1dHRvbiB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgLyogYm9yZGVyLXJhZGl1czogNnB4OyAqL1xuICBib3JkZXItY29sb3I6ICMzMzdlODE7XG4gIGJvcmRlcjogMnB4IHB4IHNvbGlkICMzMzdlODE7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgY29sb3I6ICMzMzdlODE7XG4gIC8qIGZvbnQtd2VpZ2h0OiBib2xkOyAqL1xuICBib3JkZXI6IDJweCBzb2xpZDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgLyogYWxpZ24taXRlbXM6IGNlbnRlcjsgKi9cbiAgLyoganVzdGlmeS1jb250ZW50OiBjZW50ZXI7ICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogbWVkaXVtO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMzM3ZTgxO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGNvbG9yOiAjMzM3ZTgxO1xuICAvKiBkaXNwbGF5OiBub25lOyAqL1xuICBmb250LWZhbWlseTogSW5keSBTYW5zLCBzYW5zLXNlcmlmO1xuICAvKiBmb250LXdlaWdodDogNTAwOyAqL1xuICAvKiBtYXJnaW4tcmlnaHQ6IDE2cHg7ICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICB3aWR0aDogMTAycHg7XG4gIGhlaWdodDogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIC8qIHBhZGRpbmctdG9wOiAycHg7Ki9cbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgfVxufVxuXG4vLy9cbi5oZWFkZXIxIHtcbiAgLy9wYWRkaW5nOiAwIDAgMTJweCAxMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgLy8gYm9yZGVyOiAxcHggc29saWQgI0QzRDNEMztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdyaWQtZ2FwOiAycHg7XG59XG5cbi5oZWFkZXJfX3RleHQge1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgZmxleDogMTtcbiAgbWFyZ2luLWJvdHRvbTogLTkxcHg7XG59XG5cbi5zdmcge1xuICBmbGV4LXNocmluazogMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaGVhZGVyX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG4gIGZvbnQtZmFtaWx5OiBcIkluZGVwZW5kZW50IFNlcmlmXCI7XG4gIGZvbnQtc2l6ZTogJGZvbnQtbGFyZ2UxO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgY29sb3I6ICMyMjIyMjI7XG59XG5cbi5pbWFnZS1jb250YWluZXIge1xuICB3aWR0aDogMTM1cHg7XG4gIGhlaWdodDogMTM1cHg7XG4gIG1hcmdpbi1sZWZ0OiA2cHg7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNlY3Rpb24tbmV3c2xldHRlci1zaWdudXBfX2Zvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG59XG4uc2VjdGlvbi1uZXdzbGV0dGVyLXNpZ251cF9faW5wdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cbi5pbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBmbGV4LWdyb3c6IDM7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2JkYmRiZDtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogIzRlNGU0ZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgZm9udC1zaXplOiAkZm9udC1tZWRpdW0xO1xufVxuaW5wdXQjb2ZmZXJzIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbn1cbi5zdWJtaXQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JkYmRiZDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBtYXJnaW4tbGVmdDogMTJweDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6ICRmb250LXNtYWxsMjtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNiZGJkYmQ7XG4gIGNvbG9yOiAjZmZmO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzIGxpbmVhcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMzMlO1xuICBoZWlnaHQ6IDM3cHg7XG59XG5cbi5vZmZlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgZm9udC1mYW1pbHk6IFwiSW5kZXBlbmRlbnQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6ICRmb250LXh4c21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICBjb2xvcjogIzRlNGU0ZTtcbn1cbi5vZmZlcnMtbGFiZWwgLmxvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm9mZmVycy1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogJGZvbnQteHNtYWxsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLnNlY3Rpb24tbmV3c2xldHRlci1zaWdudXAge1xuICBwYWRkaW5nOiAwIDAgMTJweCAxMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgI2QzZDNkMztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmNoZWNrYm94IHtcbiAgLy8gd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMzNweDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uZm9ybS1yZWdpc3RyYXRpb24tc3VibWl0LWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmbGV4LXNocmluazogMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAkZm9udC1zbWFsbDI7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjYmRiZGJkO1xuICBjb2xvcjogI2ZmZjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC40cyBsaW5lYXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAzOHB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICB9XG59XG5cbmlucHV0I2VtYWlsLWlucHV0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGZsZXgtZ3JvdzogMztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzhweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjYmRiZGJkO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIGNvbG9yOiAjNGU0ZTRlO1xuICBvdXRsaW5lOiBub25lO1xuICBmb250LXNpemU6ICRmb250LW1lZGl1bTE7XG59XG5cbmxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiSW5kZXBlbmRlbnQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6ICRmb250LXh4c21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICBjb2xvcjogIzRlNGU0ZTtcbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6ICM0ZTRlNGU7XG4gIH1cbn1cblxuLmNlbGwubWVkaXVtLTYubGFyZ2UtNiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHdpZHRoOiAxMTAlO1xuICB9XG59XG5cbi5jZWxsLnNtYWxsLTYubWVkaXVtLTMge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi8vID09PT09PT09PT09PT09IFNUQVJUOiBhcnRpY2xlIGF1ZGlvIHBsYXllciA9PT09PT09PT09PT09PT09PT09XG4uYXVkaW8tcGxheWVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLnBvZGNhc3QtZmxvYXRlciAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGF1ZGlvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIH1cbn1cbi5wb2RjYXN0LWZsb2F0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHotaW5kZXg6IDk5O1xuICBwYWRkaW5nOiAwO1xuXG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IDFyZW0gNHJlbTtcbiAgfVxuICAuYnRuLXNoYXJlLXdyYXAge1xuICAgIC5idG4tc2hhcmUge1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgfVxuICB9XG4gIC5jbG9zZS1idG4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTNweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgIGNvbG9yOiAjOTBhM2EyO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zbWFsbDE7XG4gICAgfVxuICB9XG59XG5cbi5wb2RjYXN0LWZsb2F0ZXItaXRlbSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogIzI4MWUxZTtcbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgaDYge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBmb250LXNpemU6ICRmb250LXhzbWFsbDtcbiAgICB9XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT0gRU5EOiBhcnRpY2xlIGF1ZGlvIHBsYXllciA9PT09PT09PT09PT09PT09PT09XG5cbi5wYWdlLWxvZ28ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgI2JkYmRiZDtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA0MDBweDtcbiAgICB9XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT0gU1RBUlQ6IFN1YnNjcmliZSBCb3ggID09PT09PT09PT09PT09PT09PT1cbi5zdWJzY3JpYmUtYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMjBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMTZweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2MHB4O1xuICAgIG1heC13aWR0aDogNzQwcHg7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICB9XG5cbiAgJl9faW1nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogODBweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiAxODBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fZGVzYyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgIG1heC13aWR0aDogNDQwcHg7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAjZWUzZTNlO1xuICAgICAgZm9udC1zaXplOiAzN3B4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiA0NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19mb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDZweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZ2FwOiAxMHB4O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgd2lkdGg6IDE4MXB4O1xuICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBwYWRkaW5nOiA3cHggMTVweDtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6ICNlZTNlM2U7XG4gICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHBhZGRpbmc6IDdweCAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PSBFTkQ6IFN1YnNjcmliZSBCb3ggID09PT09PT09PT09PT09PT09PT1cblxuLmhlcm8tYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICB9XG4gIC5hcnRpY2xlLWhlcm8ubWVkaWEtdmlkZW8ge1xuICAgIC5zaXplciB7XG4gICAgICBwYWRkaW5nLXRvcDogNTUuNyU7XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUtaGVybyB7XG4gICAgLy8gaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgW2RhdGEtbWVkaWE9XCJqd1ZpZGVvXCJdIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG5bZGF0YS1tZWRpYT1cImp3VmlkZW9cIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGltZyxcbiAgLnNpemVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuW2RhdGEtbWVkaWE9XCJqd1ZpZGVvU21cIl0ge1xuICBpbWcsXG4gIC5zaXplciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIuZW50cnktbWV0YS1maWVsZCB7XG4gICYuZW50cnktbWV0YS1hdXRob3Ige1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uZGF0ZTEge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICRkYXJrLWdyYXk7XG59XG5cbi5oZWFkdHh0IHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiSW5kZXBlbmRlbnQgU2Fuc1wiO1xufVxuXG4uaW1nQ29tbWVudCB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uYmxvY2stY29udGFpbmVyID4gLm1wdS13aWR0aCB7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiAyNTBweDtcbn1cblxuLmltZ0NvbW1lbnQgPiBwIHtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiB0aGluO1xuICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5waG90b19nYWxsZXJ5IGZpZ2NhcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnBob3RvX2dhbGxlcnkgZmlnY2FwdGlvbiB7XG4gIGJvcmRlci1yaWdodDogc29saWQ7XG4gIGJvcmRlci1yaWdodC13aWR0aDogdGhpbjtcbiAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xufVxuXG5ib2R5LnVyZHUtdGhlbWUge1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi8qIGFyYWJpYyBvbmx5ICovXG5cbi5tYWluLWhlYWRlcl9fbmF2YmFyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDQycHg7XG4gIH1cblxuICAubmF2LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgfVxuICAgID4gLm1lbnUge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgIH1cbiAgICAgID4gbGkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdWwge1xuICAgICAgPiBsaSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnN1Yi1tZWdhLW1lbnUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLm1haW4tdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkICNiZGJkYmQ7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBoMSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiA4MHB4O1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjMjgxZTFlO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1ncmlkcyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi5jYXJkLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICZfX2ltZyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkaW5keS1yZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIGVuZCBhcmFiaWMgb25seSAqL1xuIl19 */
