@charset "UTF-8";
@font-face {
  font-family: 'icons';
  src: url("../fonts/icons.eot");
  src: url("../fonts/icons.eot?#iefix") format("embedded-opentype"), url("../fonts/icons.woff") format("woff"), url("../fonts/icons.ttf") format("truetype"), url("../fonts/icons.svg#icons") format("svg"); }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/opensans-light-webfont.woff2") format("woff2"), url("../fonts/opensans-light-webfont.woff") format("woff");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/opensans-regular-webfont.woff2") format("woff2"), url("../fonts/opensans-regular-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/opensans-semibold-webfont.woff2") format("woff2"), url("../fonts/opensans-semibold-webfont.woff") format("woff");
  font-weight: 600;
  font-style: normal; }

.tick-list, .feature-list, .nav__list, .blog-nav__tags-list {
  list-style-type: none;
  margin: 0;
  padding: 0; }

.section, .errors, .image-block, .image-block--left, .image-block--right, .checkout__gls, .blog-post, .social, .blog-nav__share {
  *zoom: 1; }
  .section:before, .errors:before, .image-block:before, .image-block--left:before, .image-block--right:before, .checkout__gls:before, .blog-post:before, .social:before, .blog-nav__share:before, .section:after, .errors:after, .image-block:after, .image-block--left:after, .image-block--right:after, .checkout__gls:after, .blog-post:after, .social:after, .blog-nav__share:after {
    content: " ";
    display: table; }
  .section:after, .errors:after, .image-block:after, .image-block--left:after, .image-block--right:after, .checkout__gls:after, .blog-post:after, .social:after, .blog-nav__share:after {
    clear: both; }

[type=tel],
[type=email],
[type=number],
[type=text],
[type=search], textarea, select, blockquote {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.splat, .splat--secondary, .splat--tertiary, .splat--large-alt, .splat--large, .splat--bestseller--large, .splat--bit--large, .splat--bestseller, .splat--bit, .splat__border, .number__increase, .number__decrease, .bullets a, .thumbnail-bullets a, .bullets a:after, .thumbnail-bullets a:after {
  border-radius: 100%; }

select {
  border-radius: 0; }

.section--dark {
  background-color: #384d64; }

.section--highlight {
  background-color: #f7f7f7; }

.section--campaign {
  background-color: #fcdf7a; }

.global-message__close, .permission-bar__close {
  background-color: #393937;
  border: 1px solid #000;
  color: #fff;
  cursor: pointer;
  height: 29px;
  overflow: hidden;
  position: relative;
  text-align: center;
  text-indent: 99px;
  width: 29px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  .global-message__close:hover, .permission-bar__close:hover {
    color: #fff; }
  .global-message__close:after, .permission-bar__close:after {
    content: "\d7";
    display: inline-block;
    font-size: 29px;
    line-height: 25px;
    text-indent: 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%; }

.blog-comment__header {
  color: #666;
  line-height: 1.5;
  font-family: "Open Sans", sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 300; }
  @media (min-width: 48.0625em) {
    .blog-comment__header {
      font-size: 14px; } }
  .lt-ie9 .blog-comment__header {
    font-size: 14px; }

h4,
.h4, th, .subject, .section__header-subject, .section__text-subject, .image-block__subject, .tick-list__item, .button--small, .permission-bar__button, .button--primary--small, .button--secondary--small, .checkout__basket-anchor, .button--tertiary--small, .button, .checkout__submit, .checkout__submit--us, .discount__submit, .button--primary, .button--secondary, .button--tertiary, .button--buy, .lead, [type=tel],
[type=email],
[type=number],
[type=text],
[type=search], textarea, select, .image-block__content {
  font-size: 14px;
  line-height: 1.3; }
  @media (min-width: 48.0625em) {
    h4,
    .h4, th, .subject, .section__header-subject, .section__text-subject, .image-block__subject, .tick-list__item, .button--small, .permission-bar__button, .button--primary--small, .button--secondary--small, .checkout__basket-anchor, .button--tertiary--small, .button, .checkout__submit, .checkout__submit--us, .discount__submit, .button--primary, .button--secondary, .button--tertiary, .button--buy, .lead, [type=tel],
    [type=email],
    [type=number],
    [type=text],
    [type=search], textarea, select, .image-block__content {
      font-size: 16px; } }
  .lt-ie9 h4, .lt-ie9
  .h4, .lt-ie9 th, .lt-ie9 .subject, .lt-ie9 .section__header-subject, .lt-ie9 .section__text-subject, .lt-ie9 .image-block__subject, .lt-ie9 .tick-list__item, .lt-ie9 .button--small, .lt-ie9 .permission-bar__button, .lt-ie9 .button--primary--small, .lt-ie9 .button--secondary--small, .lt-ie9 .checkout__basket-anchor, .lt-ie9 .button--tertiary--small, .lt-ie9 .button, .lt-ie9 .checkout__submit, .lt-ie9 .checkout__submit--us, .lt-ie9 .discount__submit, .lt-ie9 .button--primary, .lt-ie9 .button--secondary, .lt-ie9 .button--tertiary, .lt-ie9 .button--buy, .lt-ie9 .lead, .lt-ie9 [type=tel], .lt-ie9
  [type=email], .lt-ie9
  [type=number], .lt-ie9
  [type=text], .lt-ie9
  [type=search], .lt-ie9 textarea, .lt-ie9 select, .lt-ie9 .image-block__content {
    font-size: 16px; }

h3,
.h3, blockquote {
  line-height: 1.4;
  font-size: 14px; }
  @media (min-width: 48.0625em) {
    h3,
    .h3, blockquote {
      font-size: 18px; } }
  .lt-ie9 h3, .lt-ie9
  .h3, .lt-ie9 blockquote {
    font-size: 18px; }

.checkout__phone, .discount__input, .blog-item__header {
  line-height: 1.4;
  font-size: 16px; }
  @media (min-width: 48.0625em) {
    .checkout__phone, .discount__input, .blog-item__header {
      font-size: 20px; } }
  .lt-ie9 .checkout__phone, .lt-ie9 .discount__input, .lt-ie9 .blog-item__header {
    font-size: 20px; }

h1,
.h1, .image-block__header, .section__text-header, h2,
.h2, h3,
.h3, blockquote, .subject, .section__header-subject, .section__text-subject, .image-block__subject, .tick-list__item, .button--small, .permission-bar__button, .button--primary--small, .button--secondary--small, .checkout__basket-anchor, .button--tertiary--small, .button, .checkout__submit, .checkout__submit--us, .discount__submit, .button--primary, .button--secondary, .button--tertiary, .button--buy, .lead, [type=tel],
[type=email],
[type=number],
[type=text],
[type=search], textarea, select {
  color: #272324;
  font-weight: 300;
  margin-bottom: 0.5em; }

h1,
.h1, .image-block__header, .section__text-header {
  line-height: 1.1;
  font-size: 24px; }
  @media (min-width: 48.0625em) {
    h1,
    .h1, .image-block__header, .section__text-header {
      font-size: 48px; } }
  .lt-ie9 h1, .lt-ie9
  .h1, .lt-ie9 .image-block__header, .lt-ie9 .section__text-header {
    font-size: 48px; }

h2,
.h2 {
  line-height: 1.2;
  font-size: 18px; }
  @media (min-width: 48.0625em) {
    h2,
    .h2 {
      font-size: 28px; } }
  .lt-ie9 h2, .lt-ie9
  .h2 {
    font-size: 28px; }

h3,
.h3, blockquote {
  font-family: "Times", "Times New Roman", serif;
  font-style: italic; }

h4,
.h4, th, strong,
b {
  color: #272324;
  line-height: 1.4;
  font-weight: bold;
  margin-bottom: 0.8em; }

.subject, .section__header-subject, .section__text-subject, .image-block__subject, .tick-list__item, .button--small, .permission-bar__button, .button--primary--small, .button--secondary--small, .checkout__basket-anchor, .button--tertiary--small, .button, .checkout__submit, .checkout__submit--us, .discount__submit, .button--primary, .button--secondary, .button--tertiary, .button--buy, .lead, [type=tel],
[type=email],
[type=number],
[type=text],
[type=search], textarea, select {
  line-height: 1.63; }

.subject, .section__header-subject, .section__text-subject, .image-block__subject, .tick-list__item {
  font-family: "Times", "Times New Roman", serif;
  font-style: italic; }

.button--small, .permission-bar__button, .button--primary--small, .button--secondary--small, .checkout__basket-anchor, .button--tertiary--small, figcaption,
.caption,
.label {
  font-size: 10px; }
  @media (min-width: 48.0625em) {
    .button--small, .permission-bar__button, .button--primary--small, .button--secondary--small, .checkout__basket-anchor, .button--tertiary--small, figcaption,
    .caption,
    .label {
      font-size: 12px; } }
  .lt-ie9 .button--small, .lt-ie9 .permission-bar__button, .lt-ie9 .button--primary--small, .lt-ie9 .button--secondary--small, .lt-ie9 .checkout__basket-anchor, .lt-ie9 .button--tertiary--small, .lt-ie9 figcaption, .lt-ie9
  .caption, .lt-ie9
  .label {
    font-size: 12px; }

strong,
b {
  line-height: 1.5; }

.lead {
  margin-bottom: 1em; }
  @media (min-width: 48.0625em) {
    .lead {
      margin-bottom: 2em; } }
  .lt-ie9 .lead {
    margin-bottom: 2em; }
  @media (min-width: 73.5em) {
    .lead {
      margin-bottom: 3em; } }

p {
  margin-bottom: 10px;
  margin-bottom: 10px;
  margin-bottom: 1rem; }
  p a {
    border-bottom: 2px solid #af9b56; }

a {
  color: #000;
  font-weight: normal;
  text-decoration: none; }
  a:hover, a:focus {
    color: #000; }
  a:focus {
    -webkit-box-shadow: 0;
            box-shadow: 0;
    outline: dotted thin #000; }
  a:active {
    color: #272324;
    text-decoration: none; }
  a[href^=tel] {
    color: inherit;
    text-decoration: none; }

::-moz-selection {
  background: #1BB2E0;
  color: #fd0;
  text-shadow: none; }

::selection {
  background: #1BB2E0;
  color: #fd0;
  text-shadow: none; }

::-moz-selection {
  background: #1BB2E0;
  color: #fd0;
  text-shadow: none; }

em {
  font-style: italic; }

.invert-text {
  color: #fff; }
  .invert-text a {
    color: #ffdf00; }
  .invert-text headings(1)headings(3),
  .invert-text strong,
  .invert-text b {
    color: inherit; }
  .invert-text .button--small, .invert-text .permission-bar__button, .invert-text .button--primary--small, .invert-text .button--secondary--small, .invert-text .checkout__basket-anchor, .invert-text .button--tertiary--small, .invert-text .button, .invert-text .checkout__submit, .invert-text .checkout__submit--us, .invert-text .discount__submit, .invert-text .button--primary, .invert-text .button--secondary, .invert-text .button--tertiary, .invert-text .button--buy {
    color: inherit; }

.subject, .section__header-subject, .section__text-subject, .image-block__subject {
  display: block; }
  .subject:after, .section__header-subject:after, .section__text-subject:after, .image-block__subject:after {
    border-bottom: 1px solid #272324;
    content: "";
    display: inline-block;
    margin-left: 5px;
    position: relative;
    bottom: -3px;
    width: 1.5em; }
    .invert-text .subject:after, .invert-text .section__header-subject:after, .invert-text .section__text-subject:after, .invert-text .image-block__subject:after {
      border-color: #fff; }

/*

// Extending icon selector
.button { @extend .icon--button; }

// Extending placeholder selector (must be applied to pseudo element)
.button {
  &:before { @extend %icon--button; }
}

// Using mixin (must be applied to pseudo element)
// Extends a placeholder selector %icon--button
.button {
  &:before { @include use-icon( button ); }
}

// Icon only (text is hidden)
.arrow {
  @extend %icon-only;
  @extend .icon--arrow;
}

*/
/*

// Forcing style output rather than extending a placeholder selector
.button:before {
  @include susy-breakpoint( $bp-l-xl ) {
    @include use-icon( button, true );
  }
}

*/
/*
In most cases it's not necessary to use all available icons in a given syntax.
This way, we can hand pick the icons we want to use.
Put # in front of { $name } before use

SCSS
====

.footer {
  &__icon {
    @each $name in facebook, instagram {
      &--{ $name } {
        @extend .icon--{ $name };
      }
    }
  }
}

Output
======

.footer__icon--facebook { ... }
.footer__icon--instagram { ... }

*/
/**
 * Returns an icon map base on its name
 * If a property is provided, the value of that property is returned
 * @type  {function}
 * @param {String}  $name       [required] icon name
 * @param {String}  $property   [optional] property name
 */
/**
 * Set icon
 * Can be used without $icons map
 * Must be applied to a pseudo element (:before, :after)
 * @type  {mixin}
 * @param {String}  $char  [required] hexadecimal letter for the icon
 * @param {Bool}    $force [optional] if set to true, the icon styles
 *                                    are rendered inline rather than
 *                                    through @extend (for embedding
 *                                    in media queries)
 */
/**
 * Use icon
 * Requires $icons map to be defined
 * Must be applied to a pseudo element (:before, :after)
 * @type  {mixin}
 * @param {String}  $name   [required] name of icon to use
 * @param {Bool}    $force  [optional] if set to true, the icon styles
 *                                     are rendered inline rather than
 *                                     through @extend (for embedding
 *                                     in media queries)
 */
.icon--plus:before, .number__increase:after, .icon--minus:before, .number__decrease:after, .icon--arrow-circle-right:before, .icon--arrow-circle-left:before, .icon--tick:before, .tick-list__item:before, .icon--error:before, .icon--basket:before, .icon--search:before, .icon--phone:before, .checkout__phone:before, .icon--arrow-right:before, .icon--arrow-down:before, .icon--menu-burger:before, .icon--delete:before, .icon--leaves:before, .splat__icon--bestseller::before, .splat__icon--bestseller--large:before, .icon--stars:before, .splat__icon--bit:before, .splat__icon--bit--large:before, .icon--facebook:before, .icon--instagram:before, .icon--feature-40c:before, .feature-list__item--feature-40c:before, .icon--feature-104f:before, .feature-list__item--feature-104f:before, .icon--feature-dishwasher:before, .feature-list__item--feature-dishwasher:before, .icon--feature-freezer:before, .feature-list__item--feature-freezer:before, .icon--feature-halogen:before, .feature-list__item--feature-halogen:before, .icon--feature-induction:before, .feature-list__item--feature-induction:before, .icon--feature-gas:before, .feature-list__item--feature-gas:before, .icon--feature-ceramic:before, .feature-list__item--feature-ceramic:before, .icon--feature-microwave:before, .feature-list__item--feature-microwave:before, .icon--feature-ovenproof:before, .feature-list__item--feature-ovenproof:before, .icon--feature-radiantrin:before, .feature-list__item--feature-radiantrin:before, .icon--feature-solidplate:before, .feature-list__item--feature-solidplate:before, .icon:before {
  font-family: "icons";
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  height: 1em;
  line-height: 1em;
  speak: none;
  text-indent: 0;
  text-transform: none;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }

.number__increase, .number__decrease {
  text-indent: -999px;
  overflow: hidden;
  display: inline-block; }
  .number__increase:before, .number__decrease:before, .number__increase:after, .number__decrease:after {
    float: inherit;
    text-align: center; }

.icon--plus:before, .number__increase:after {
  content: "";
  font-size: 14px;
  font-size: 14px;
  font-size: 1.4rem; }

.icon--minus:before, .number__decrease:after {
  content: "";
  font-size: 14px;
  font-size: 14px;
  font-size: 1.4rem; }

.icon--arrow-circle-right:before {
  content: "";
  font-size: 48px;
  font-size: 48px;
  font-size: 4.8rem; }

.icon--arrow-circle-left:before {
  content: "";
  font-size: 48px;
  font-size: 48px;
  font-size: 4.8rem; }

.icon--tick:before, .tick-list__item:before {
  color: #6d9343;
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--error:before {
  color: #d62c2d;
  content: "";
  font-size: 21px;
  font-size: 21px;
  font-size: 2.1rem; }

.icon--basket:before {
  content: "";
  font-size: 20px;
  font-size: 20px;
  font-size: 2rem; }

.icon--search:before {
  color: #AE9C57;
  content: "";
  font-size: 14px;
  font-size: 14px;
  font-size: 1.4rem; }

.icon--phone:before, .checkout__phone:before {
  content: "";
  font-size: 20px;
  font-size: 20px;
  font-size: 2rem; }

.icon--arrow-right:before {
  content: "";
  font-size: 25px;
  font-size: 25px;
  font-size: 2.5rem; }

.icon--arrow-down:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--menu-burger:before {
  content: "";
  font-size: 33px;
  font-size: 33px;
  font-size: 3.3rem; }

.icon--delete:before {
  content: "";
  font-size: 25px;
  font-size: 25px;
  font-size: 2.5rem; }

.icon--leaves:before, .splat__icon--bestseller::before, .splat__icon--bestseller--large:before {
  content: "";
  font-size: 50px;
  font-size: 50px;
  font-size: 5rem; }

.icon--stars:before, .splat__icon--bit:before, .splat__icon--bit--large:before {
  content: "";
  font-size: 50px;
  font-size: 50px;
  font-size: 5rem; }

.icon--facebook:before {
  color: #3c5a98;
  content: "";
  font-size: 30px;
  font-size: 30px;
  font-size: 3rem; }

.icon--instagram:before {
  color: #33648d;
  content: "";
  font-size: 30px;
  font-size: 30px;
  font-size: 3rem; }

.icon--feature-40c:before, .feature-list__item--feature-40c:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-104f:before, .feature-list__item--feature-104f:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-dishwasher:before, .feature-list__item--feature-dishwasher:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-freezer:before, .feature-list__item--feature-freezer:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-halogen:before, .feature-list__item--feature-halogen:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-induction:before, .feature-list__item--feature-induction:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-gas:before, .feature-list__item--feature-gas:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-ceramic:before, .feature-list__item--feature-ceramic:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-microwave:before, .feature-list__item--feature-microwave:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-ovenproof:before, .feature-list__item--feature-ovenproof:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-radiantrin:before, .feature-list__item--feature-radiantrin:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon--feature-solidplate:before, .feature-list__item--feature-solidplate:before {
  content: "";
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem; }

.icon:before {
  content: attr(data-icon); }

html {
  font-size: 62.5%; }

body {
  margin: 0 auto;
  color: #666;
  line-height: 1.5;
  font-family: "Open Sans", sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 300;
  font-size: 1.2em; }
  @media (min-width: 48.0625em) {
    body {
      font-size: 14px; } }
  .lt-ie9 body {
    font-size: 14px; }
  @media (min-width: 30.0625em) {
    body {
      font-size: 1.4em; } }
  .lt-ie9 body {
    font-size: 1.4em; }

.splat__text, .splat__text--primary, .splat__text--bestseller, .splat__text--secondary, .splat--large .splat__text--tertiary, .splat--large-alt .splat__text--tertiary, .splat--bestseller--large .splat__text--tertiary, .splat--bit--large .splat__text--tertiary {
  color: inherit;
  display: block;
  line-height: 1; }

.splat__icon--bestseller, .splat__icon--bestseller--large, .splat__icon--bit, .splat__icon--bit--large {
  height: 100%;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%; }
  .splat__icon--bestseller:before, .splat__icon--bestseller--large:before, .splat__icon--bit:before, .splat__icon--bit--large:before {
    font-size: inherit !important;
    line-height: 1;
    margin-top: -0.5em;
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%; }

.splat, .splat--secondary, .splat--tertiary, .splat--large-alt, .splat--large, .splat--bestseller--large, .splat--bit--large, .splat--bestseller, .splat--bit {
  background-color: transparent;
  color: #fff;
  display: table;
  height: 4.6428571429em;
  text-align: center;
  position: relative;
  width: 4.6428571429em; }
  .splat__inner {
    display: table-cell;
    height: 100%;
    vertical-align: middle;
    width: 100%; }
  .splat__border {
    display: table;
    height: 4.6428571429em;
    position: absolute;
    left: 0;
    top: 0;
    width: 4.6428571429em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
  .splat__text, .splat__text--primary, .splat__text--bestseller, .splat__text--secondary, .splat--large .splat__text--tertiary, .splat--large-alt .splat__text--tertiary, .splat--bestseller--large .splat__text--tertiary, .splat--bit--large .splat__text--tertiary {
    font-weight: 500;
    text-transform: uppercase;
    margin: 2px 0;
    margin: 2px 0;
    margin:  0.2rem 0; }
    .splat__text--primary, .splat__text--bestseller {
      font-size: 1.2857142857em;
      font-weight: 700; }
    .splat__text--secondary {
      font-size: 0.8571428571em; }
  .splat__image {
    width: 65%; }
    @media (min-width: 30.0625em) {
      .splat__image {
        width: auto; } }
    .lt-ie9 .splat__image {
      width: auto; }
  .splat--secondary {
    background-color: #6d9343;
    color: #fff; }
  .splat--tertiary, .splat--large-alt {
    background-color: #fcdf7a;
    color: #272324; }
  .splat--large, .splat--large-alt, .splat--bestseller--large, .splat--bit--large {
    height: 10em;
    width: 10em;
    font-size: 0.6666666667em; }
    @media (min-width: 30.0625em) {
      .splat--large, .splat--large-alt, .splat--bestseller--large, .splat--bit--large {
        font-size: 0.8571428571em; } }
    .lt-ie9 .splat--large, .lt-ie9 .splat--large-alt, .lt-ie9 .splat--bestseller--large, .lt-ie9 .splat--bit--large {
      font-size: 0.8571428571em; }
    @media (min-width: 48.0625em) {
      .splat--large, .splat--large-alt, .splat--bestseller--large, .splat--bit--large {
        font-size: 0.7142857143em; } }
    .lt-ie9 .splat--large, .lt-ie9 .splat--large-alt, .lt-ie9 .splat--bestseller--large, .lt-ie9 .splat--bit--large {
      font-size: 0.7142857143em; }
    @media (min-width: 73.5em) {
      .splat--large, .splat--large-alt, .splat--bestseller--large, .splat--bit--large {
        font-size: 1em; } }
    .splat--large .splat__text, .splat--large-alt .splat__text, .splat--bestseller--large .splat__text, .splat--bit--large .splat__text, .splat--large .splat__text--primary, .splat--large-alt .splat__text--primary, .splat--bestseller--large .splat__text--primary, .splat--bit--large .splat__text--primary, .splat--large .splat__text--bestseller, .splat--large-alt .splat__text--bestseller, .splat--bestseller--large .splat__text--bestseller, .splat--bit--large .splat__text--bestseller, .splat--large .splat__text--secondary, .splat--large-alt .splat__text--secondary, .splat--bestseller--large .splat__text--secondary, .splat--bit--large .splat__text--secondary, .splat--large .splat__text--tertiary, .splat--large-alt .splat__text--tertiary, .splat--bestseller--large .splat__text--tertiary, .splat--bit--large .splat__text--tertiary {
      font-weight: 300;
      text-transform: none;
      margin: 6px 0;
      margin: 6px 0;
      margin:  0.6rem 0; }
      .splat--large .splat__text--primary, .splat--large-alt .splat__text--primary, .splat--bestseller--large .splat__text--primary, .splat--bit--large .splat__text--primary, .splat--large .splat__text--bestseller, .splat--large-alt .splat__text--bestseller, .splat--bestseller--large .splat__text--bestseller, .splat--bit--large .splat__text--bestseller {
        font-size: 1.7142857143em;
        text-transform: uppercase; }
      .splat--large .splat__text--secondary, .splat--large-alt .splat__text--secondary, .splat--bestseller--large .splat__text--secondary, .splat--bit--large .splat__text--secondary {
        font-size: 1.1428571429em; }
      .splat--large .splat__text--tertiary, .splat--large-alt .splat__text--tertiary, .splat--bestseller--large .splat__text--tertiary, .splat--bit--large .splat__text--tertiary {
        font-size: 0.7857142857em; }
  .splat--large-alt .splat__text--primary, .splat--large-alt .splat__text--bestseller {
    font-size: 2.8571428571em;
    font-weight: bold;
    margin: 0; }
  .splat--large-alt .splat__text--secondary {
    font-size: 1.7857142857em;
    margin-bottom: 0.08em;
    text-transform: uppercase; }
  .splat--large-alt .splat__text--tertiary {
    font-size: 0.9285714286em;
    margin-top: 0.1538461538em; }
  .splat--bestseller, .splat--bestseller--large {
    background-color: #fff;
    color: #272324;
    height: 5.5714285714em;
    padding: 0.7142857143em;
    position: relative;
    width: 5.5714285714em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
  .splat__icon--bestseller {
    font-size: 4.9285714286em; }
    .splat__icon--bestseller::before {
      color: #6d9343; }
  .splat__text--bestseller {
    font-size: 0.8571428571em; }
  .splat--bestseller--large {
    display: block;
    height: 11.4285714286em;
    width: 11.4285714286em; }
    .splat--bestseller--large .splat__border {
      border: 2px dotted #272324;
      height: 11.4285714286em;
      width: 11.4285714286em;
      padding: 0 20px;
      padding: 0 20px;
      padding:  0 2rem; }
  .splat__icon--bestseller--large {
    font-size: 8.7857142857em; }
    .splat__icon--bestseller--large:before {
      color: #6d9343; }
  .splat--bit, .splat--bit--large {
    background-color: #6d9343;
    height: 4.6428571429em;
    position: relative;
    width: 4.6428571429em; }
  .splat--jul {
    position: absolute;
    left: 0;
    top: 0; }
  .splat__icon--bit {
    font-size: 4.0714285714em; }
    .splat__icon--bit:before {
      color: #fff; }
  .splat__text--bit {
    display: block;
    font-size: 0.7857142857em;
    line-height: 1;
    padding: 0.2142857143em 0.4285714286em 0; }
  .splat--bit--large {
    height: 11.4285714286em;
    width: 11.4285714286em; }
    .splat--bit--large .splat__text--bit {
      font-size: 1.7142857143em;
      padding: 0; }
  .splat__icon--bit--large {
    font-size: 9.2857142857em; }
    .splat__icon--bit--large:before {
      color: #fff; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

nav ul {
  list-style: none; }

.tick-list__item:before, .feature-list__item:before, .feature-list__item--feature-40c:before, .feature-list__item--feature-104f:before, .feature-list__item--feature-dishwasher:before, .feature-list__item--feature-freezer:before, .feature-list__item--feature-halogen:before, .feature-list__item--feature-induction:before, .feature-list__item--feature-gas:before, .feature-list__item--feature-ceramic:before, .feature-list__item--feature-microwave:before, .feature-list__item--feature-ovenproof:before, .feature-list__item--feature-radiantrin:before, .feature-list__item--feature-solidplate:before {
  display: inline;
  position: relative;
  bottom: -0.1428571429em;
  margin-right: 10px;
  margin-right: 10px;
  margin-right: 1rem; }

.tick-list__item {
  margin-bottom: 0; }
  @media (min-width: 30.0625em) {
    .tick-list__item {
      display: inline-block;
      margin-right: 2.5em; }
      .tick-list__item:last-child {
        margin-right: 0; } }
  .lt-ie9 .tick-list__item {
    display: inline-block;
    margin-right: 2.5em; }
    .lt-ie9 .tick-list__item:last-child {
      margin-right: 0; }

.feature-list__item.deactive, .deactive.feature-list__item--feature-40c, .deactive.feature-list__item--feature-104f, .deactive.feature-list__item--feature-dishwasher, .deactive.feature-list__item--feature-freezer, .deactive.feature-list__item--feature-halogen, .deactive.feature-list__item--feature-induction, .deactive.feature-list__item--feature-gas, .deactive.feature-list__item--feature-ceramic, .deactive.feature-list__item--feature-microwave, .deactive.feature-list__item--feature-ovenproof, .deactive.feature-list__item--feature-radiantrin, .deactive.feature-list__item--feature-solidplate, .feature-list__item.deactive:before, .deactive.feature-list__item--feature-40c:before, .deactive.feature-list__item--feature-104f:before, .deactive.feature-list__item--feature-dishwasher:before, .deactive.feature-list__item--feature-freezer:before, .deactive.feature-list__item--feature-halogen:before, .deactive.feature-list__item--feature-induction:before, .deactive.feature-list__item--feature-gas:before, .deactive.feature-list__item--feature-ceramic:before, .deactive.feature-list__item--feature-microwave:before, .deactive.feature-list__item--feature-ovenproof:before, .deactive.feature-list__item--feature-radiantrin:before, .deactive.feature-list__item--feature-solidplate:before {
  color: #999; }

.feature-list__item.deactive .feature-list__item-text, .deactive.feature-list__item--feature-40c .feature-list__item-text, .deactive.feature-list__item--feature-104f .feature-list__item-text, .deactive.feature-list__item--feature-dishwasher .feature-list__item-text, .deactive.feature-list__item--feature-freezer .feature-list__item-text, .deactive.feature-list__item--feature-halogen .feature-list__item-text, .deactive.feature-list__item--feature-induction .feature-list__item-text, .deactive.feature-list__item--feature-gas .feature-list__item-text, .deactive.feature-list__item--feature-ceramic .feature-list__item-text, .deactive.feature-list__item--feature-microwave .feature-list__item-text, .deactive.feature-list__item--feature-ovenproof .feature-list__item-text, .deactive.feature-list__item--feature-radiantrin .feature-list__item-text, .deactive.feature-list__item--feature-solidplate .feature-list__item-text {
  text-decoration: line-through; }

.feature-list__item:before, .feature-list__item--feature-40c:before, .feature-list__item--feature-104f:before, .feature-list__item--feature-dishwasher:before, .feature-list__item--feature-freezer:before, .feature-list__item--feature-halogen:before, .feature-list__item--feature-induction:before, .feature-list__item--feature-gas:before, .feature-list__item--feature-ceramic:before, .feature-list__item--feature-microwave:before, .feature-list__item--feature-ovenproof:before, .feature-list__item--feature-radiantrin:before, .feature-list__item--feature-solidplate:before {
  color: #272324;
  font-size: 1.7857142857em; }

.button--small, .permission-bar__button, .button--primary--small, .button--secondary--small, .checkout__basket-anchor, .button--tertiary--small, .button, .checkout__submit, .checkout__submit--us, .discount__submit, .button--primary, .button--secondary, .button--tertiary, .button--buy {
  border: 0 solid transparent;
  border-bottom-width: 0.3em;
  border-radius: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-weight: 500;
  padding: 0.8em 3em 0.6em;
  text-align: center;
  text-transform: uppercase;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: #6d9343;
  border-color: #60813b; }
  .button--small:hover, .permission-bar__button:hover, .button--primary--small:hover, .button--secondary--small:hover, .checkout__basket-anchor:hover, .button--tertiary--small:hover, .button:hover, .checkout__submit:hover, .checkout__submit--us:hover, .discount__submit:hover, .button--primary:hover, .button--secondary:hover, .button--tertiary:hover, .button--buy:hover, .button--small:active, .permission-bar__button:active, .button--primary--small:active, .button--secondary--small:active, .checkout__basket-anchor:active, .button--tertiary--small:active, .button:active, .checkout__submit:active, .checkout__submit--us:active, .discount__submit:active, .button--primary:active, .button--secondary:active, .button--tertiary:active, .button--buy:active, .hover.button--small, .hover.permission-bar__button, .hover.button--primary--small, .hover.button--secondary--small, .hover.checkout__basket-anchor, .hover.button--tertiary--small, .hover.button, .hover.checkout__submit, .hover.checkout__submit--us, .hover.discount__submit, .hover.button--primary, .hover.button--secondary, .hover.button--tertiary, .hover.button--buy, .pressed.button--small, .pressed.permission-bar__button, .pressed.button--primary--small, .pressed.button--secondary--small, .pressed.checkout__basket-anchor, .pressed.button--tertiary--small, .pressed.button, .pressed.checkout__submit, .pressed.checkout__submit--us, .pressed.discount__submit, .pressed.button--primary, .pressed.button--secondary, .pressed.button--tertiary, .pressed.button--buy {
    background-color: #7aa54b; }
  .button--small:disabled, .permission-bar__button:disabled, .button--primary--small:disabled, .button--secondary--small:disabled, .checkout__basket-anchor:disabled, .button--tertiary--small:disabled, .button:disabled, .checkout__submit:disabled, .checkout__submit--us:disabled, .discount__submit:disabled, .button--primary:disabled, .button--secondary:disabled, .button--tertiary:disabled, .button--buy:disabled, .disabled.button--small, .disabled.permission-bar__button, .disabled.button--primary--small, .disabled.button--secondary--small, .disabled.checkout__basket-anchor, .disabled.button--tertiary--small, .disabled.button, .disabled.checkout__submit, .disabled.checkout__submit--us, .disabled.discount__submit, .disabled.button--primary, .disabled.button--secondary, .disabled.button--tertiary, .disabled.button--buy {
    background-color: #6d9343; }
  @media (min-width: 25em) {
    .button--small, .permission-bar__button, .button--primary--small, .button--secondary--small, .checkout__basket-anchor, .button--tertiary--small, .button, .checkout__submit, .checkout__submit--us, .discount__submit, .button--primary, .button--secondary, .button--tertiary, .button--buy {
      white-space: nowrap; } }
  .lt-ie9 .button--small, .lt-ie9 .permission-bar__button, .lt-ie9 .button--primary--small, .lt-ie9 .button--secondary--small, .lt-ie9 .checkout__basket-anchor, .lt-ie9 .button--tertiary--small, .lt-ie9 .button, .lt-ie9 .checkout__submit, .lt-ie9 .checkout__submit--us, .lt-ie9 .discount__submit, .lt-ie9 .button--primary, .lt-ie9 .button--secondary, .lt-ie9 .button--tertiary, .lt-ie9 .button--buy {
    white-space: nowrap; }
  .button--small:hover, .permission-bar__button:hover, .button--primary--small:hover, .button--secondary--small:hover, .checkout__basket-anchor:hover, .button--tertiary--small:hover, .button:hover, .checkout__submit:hover, .checkout__submit--us:hover, .discount__submit:hover, .button--primary:hover, .button--secondary:hover, .button--tertiary:hover, .button--buy:hover, .hover.button--small, .hover.permission-bar__button, .hover.button--primary--small, .hover.button--secondary--small, .hover.checkout__basket-anchor, .hover.button--tertiary--small, .hover.button, .hover.checkout__submit, .hover.checkout__submit--us, .hover.discount__submit, .hover.button--primary, .hover.button--secondary, .hover.button--tertiary, .hover.button--buy, .button--small:active, .permission-bar__button:active, .button--primary--small:active, .button--secondary--small:active, .checkout__basket-anchor:active, .button--tertiary--small:active, .button:active, .checkout__submit:active, .checkout__submit--us:active, .discount__submit:active, .button--primary:active, .button--secondary:active, .button--tertiary:active, .button--buy:active, .button--small:focus, .permission-bar__button:focus, .button--primary--small:focus, .button--secondary--small:focus, .checkout__basket-anchor:focus, .button--tertiary--small:focus, .button:focus, .checkout__submit:focus, .checkout__submit--us:focus, .discount__submit:focus, .button--primary:focus, .button--secondary:focus, .button--tertiary:focus, .button--buy:focus, .pressed.button--small, .pressed.permission-bar__button, .pressed.button--primary--small, .pressed.button--secondary--small, .pressed.checkout__basket-anchor, .pressed.button--tertiary--small, .pressed.button, .pressed.checkout__submit, .pressed.checkout__submit--us, .pressed.discount__submit, .pressed.button--primary, .pressed.button--secondary, .pressed.button--tertiary, .pressed.button--buy {
    color: #fff;
    text-decoration: none; }
  .button--small:active, .permission-bar__button:active, .button--primary--small:active, .button--secondary--small:active, .checkout__basket-anchor:active, .button--tertiary--small:active, .button:active, .checkout__submit:active, .checkout__submit--us:active, .discount__submit:active, .button--primary:active, .button--secondary:active, .button--tertiary:active, .button--buy:active, .button--small:focus, .permission-bar__button:focus, .button--primary--small:focus, .button--secondary--small:focus, .checkout__basket-anchor:focus, .button--tertiary--small:focus, .button:focus, .checkout__submit:focus, .checkout__submit--us:focus, .discount__submit:focus, .button--primary:focus, .button--secondary:focus, .button--tertiary:focus, .button--buy:focus, .pressed.button--small, .pressed.permission-bar__button, .pressed.button--primary--small, .pressed.button--secondary--small, .pressed.checkout__basket-anchor, .pressed.button--tertiary--small, .pressed.button, .pressed.checkout__submit, .pressed.checkout__submit--us, .pressed.discount__submit, .pressed.button--primary, .pressed.button--secondary, .pressed.button--tertiary, .pressed.button--buy {
    border-bottom-width: 0;
    border-top-width: 0.3em;
    padding-top: 0.6em;
    padding-bottom: 0.8em; }
  .button--small:disabled, .permission-bar__button:disabled, .button--primary--small:disabled, .button--secondary--small:disabled, .checkout__basket-anchor:disabled, .button--tertiary--small:disabled, .button:disabled, .checkout__submit:disabled, .checkout__submit--us:disabled, .discount__submit:disabled, .button--primary:disabled, .button--secondary:disabled, .button--tertiary:disabled, .button--buy:disabled, .disabled.button--small, .disabled.permission-bar__button, .disabled.button--primary--small, .disabled.button--secondary--small, .disabled.checkout__basket-anchor, .disabled.button--tertiary--small, .disabled.button, .disabled.checkout__submit, .disabled.checkout__submit--us, .disabled.discount__submit, .disabled.button--primary, .disabled.button--secondary, .disabled.button--tertiary, .disabled.button--buy {
    border-bottom-width: 0.3em;
    border-top-width: 0;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    padding-top: 0.8em;
    padding-bottom: 0.6em; }

.button--primary, .button--primary--small {
  background-color: #6d9343;
  border-color: #60813b; }
  .button--primary:hover, .button--primary--small:hover, .button--primary:active, .button--primary--small:active, .button--primary.hover, .hover.button--primary--small, .button--primary.pressed, .pressed.button--primary--small {
    background-color: #7aa54b; }
  .button--primary:disabled, .button--primary--small:disabled, .button--primary.disabled, .disabled.button--primary--small {
    background-color: #6d9343; }

.button--secondary, .button--secondary--small, .checkout__basket-anchor {
  background-color: #384d64;
  border-color: #2f4054; }
  .button--secondary:hover, .button--secondary--small:hover, .checkout__basket-anchor:hover, .button--secondary:active, .button--secondary--small:active, .checkout__basket-anchor:active, .button--secondary.hover, .hover.button--secondary--small, .hover.checkout__basket-anchor, .button--secondary.pressed, .pressed.button--secondary--small, .pressed.checkout__basket-anchor {
    background-color: #415a74; }
  .button--secondary:disabled, .button--secondary--small:disabled, .checkout__basket-anchor:disabled, .button--secondary.disabled, .disabled.button--secondary--small, .disabled.checkout__basket-anchor {
    background-color: #384d64; }

.button--tertiary, .button--tertiary--small {
  background-color: #353535;
  border-color: #232323; }
  .button--tertiary:hover, .button--tertiary--small:hover, .button--tertiary:active, .button--tertiary--small:active, .button--tertiary.hover, .hover.button--tertiary--small, .button--tertiary.pressed, .pressed.button--tertiary--small {
    background-color: #424242; }
  .button--tertiary:disabled, .button--tertiary--small:disabled, .button--tertiary.disabled, .disabled.button--tertiary--small {
    background-color: #353535; }

.button--buy, .checkout__basket-anchor {
  width: 100%;
  padding: 0.5em 3em 0.3em;
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  text-transform: uppercase; }
  .button--buy:before, .checkout__basket-anchor:before {
    display: inline-block;
    font-size: 32px;
    margin-right: 0.375em;
    margin-top: -0.375em;
    position: relative;
    top: 0.25em; }

[type=tel],
[type=email],
[type=number],
[type=text],
[type=search], textarea, select {
  margin: 10px 0 20px;
  margin: 10px 0 20px;
  margin:  1rem 0 2rem; }

[type=tel],
[type=email],
[type=number],
[type=text],
[type=search], textarea, select {
  border: 1px solid #ccc;
  display: block;
  height: 50px;
  line-height: 1.3;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 18px;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 10px 18px;
  padding: 10px 18px;
  padding:  1rem 1.8rem; }
  @media (min-width: 30.0625em) {
    [type=tel],
    [type=email],
    [type=number],
    [type=text],
    [type=search], textarea, select {
      height: 50px;
      font-size: 16px;
      font-size: 1.6rem;
      padding: 10px 18px;
      padding:  1rem 1.8rem; } }
  .lt-ie9 [type=tel], .lt-ie9
  [type=email], .lt-ie9
  [type=number], .lt-ie9
  [type=text], .lt-ie9
  [type=search], .lt-ie9 textarea, .lt-ie9 select {
    height: 50px;
    font-size: 16px;
    font-size: 16px;
    font-size: 1.6rem;
    padding: 10px 18px;
    padding: 10px 18px;
    padding:  1rem 1.8rem; }

.permission-bar__label {
  display: none; }
  .lt-ie10 .permission-bar__label {
    display: block; }

[type=radio] + label, [type=checkbox] + label {
  display: block;
  line-height: 24px;
  min-height: 24px;
  margin: 5px 0;
  margin: 5px 0;
  margin:  0.5rem 0;
  padding: 0 0 0 30px;
  padding: 0 0 0 30px;
  padding:  0 0 0 3rem; }

.number-container {
  display: block;
  padding-bottom: 50px;
  position: relative;
  margin: 10px 0 20px;
  margin: 10px 0 20px;
  margin:  1rem 0 2rem; }
  @media (min-width: 30.0625em) {
    .number-container {
      padding-bottom: 50px; } }
  .lt-ie9 .number-container {
    padding-bottom: 50px; }

[type=tel],
[type=email],
[type=number],
[type=text],
[type=search], textarea {
  background-color: #fff; }
  [type=tel]:focus,
  [type=email]:focus,
  [type=number]:focus,
  [type=text]:focus,
  [type=search]:focus, textarea:focus, .focus[type=tel],
  .focus[type=email],
  .focus[type=number],
  .focus[type=text],
  .focus[type=search], textarea.focus {
    background-color: #f7f7f7; }

label {
  margin-top: 10px;
  margin-top: 10px;
  margin-top: 1rem; }

[type=tel]::-ms-clear,
[type=email]::-ms-clear,
[type=number]::-ms-clear,
[type=text]::-ms-clear,
[type=search]::-ms-clear {
  width: 0;
  height: 0; }

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

textarea {
  height: auto; }

select {
  background: #fff url("../images/forms/select-arrow.png") right 10px center no-repeat;
  height: 50px;
  line-height: 22px;
  padding: 0 0 0 18px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-ms-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    select {
      background-image: url("../images/forms@2x/select-arrow.png");
      -webkit-background-size: image-width("forms@2x/select-arrow.png")/2 auto;
              background-size: image-width("forms@2x/select-arrow.png")/2 auto; } }
  @media (min-width: 30.0625em) {
    select {
      height: 50px;
      padding: 0 0 0 18px; } }
  .lt-ie9 select {
    height: 50px;
    padding: 0 0 0 18px; }
  select::-ms-expand {
    display: none; }

@-moz-document url-prefix() {
  select select {
    padding-top: 15px;
    text-indent: 0.01px;
    text-overflow: '';
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; } }
  select.is-required {
    border-color: red; }
  select:focus, select.focus {
    background-color: #f7f7f7; }

.radio-container [type=radio] {
  position: absolute;
  left: -50px;
  top: 0; }

.radio-container {
  overflow: hidden;
  position: relative; }

[type=radio] + label {
  background: url("../images/forms/radio-btn-normal.png") left center no-repeat; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-ms-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    [type=radio] + label {
      background-image: url("../images/forms/radio-btn-normal.png");
      -webkit-background-size: image-width("../images/forms/radio-btn-normal.png")/2 auto;
              background-size: image-width("../images/forms/radio-btn-normal.png")/2 auto; } }

[type=radio] + label:hover,
[type=radio]:focus + label,
[type=radio]:checked + label {
  color: black; }

[type=radio]:checked + label {
  background-image: url("../images/forms/radio-btn-checked.png"); }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-ms-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    [type=radio]:checked + label {
      background-image: url("../images/forms/radio-btn-checked.png"); } }

[type=radio]:disabled + label {
  color: #d9d9d9; }

.checkbox-container [type=checkbox], .checkout__accept-checkbox-container [type=checkbox] {
  position: absolute;
  left: -50px;
  top: 0; }

.checkbox-container, .checkout__accept-checkbox-container {
  overflow: hidden;
  position: relative; }

[type=checkbox] + label {
  background: url("../images/forms/checkbox-btn-normal.png") left center no-repeat; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-ms-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    [type=checkbox] + label {
      background-image: url("../images/forms/checkbox-btn-normal.png");
      -webkit-background-size: image-width("../images/forms/checkbox-btn-normal.png")/2 auto;
              background-size: image-width("../images/forms/checkbox-btn-normal.png")/2 auto; } }
  [type=checkbox] + label:hover {
    color: black; }

[type=checkbox]:focus + label,
[type=checkbox]:checked + label {
  color: black; }

[type=checkbox]:checked + label {
  background-image: url("../images/forms/checkbox-btn-checked.png"); }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-ms-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    [type=checkbox]:checked + label {
      background-image: url("../images/forms/checkbox-btn-checked.png"); } }

[type=checkbox]:disabled + label {
  color: #d9d9d9; }

[type=number] {
  -moz-appearance: textfield; }
  [type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0; }

.number-container {
  padding-left: 60px;
  padding-right: 60px; }
  @media (min-width: 30.0625em) {
    .number-container {
      padding-left: 60px;
      padding-right: 60px; } }
  .lt-ie9 .number-container {
    padding-left: 60px;
    padding-right: 60px; }

.number-container .number__input {
  float: left;
  margin: 0;
  text-align: center; }

.number__increase, .number__decrease {
  background: #f7f7f7;
  border: none;
  height: 50px;
  line-height: 50px;
  outline: 0;
  padding: 0;
  position: absolute;
  top: 0;
  width: 50px; }
  .number__increase:after, .number__decrease:after {
    position: absolute;
    left: 0;
    top: 0;
    text-indent: 0; }
    @media (min-width: 30.0625em) {
      .number__increase:after, .number__decrease:after {
        font-size: 20px; } }
    .lt-ie9 .number__increase:after, .lt-ie9 .number__decrease:after {
      font-size: 20px; }
    .number-container .number__increase:after, .number-container .number__decrease:after {
      height: 100%;
      line-height: inherit;
      width: 100%; }
  @media (min-width: 30.0625em) {
    .number__increase, .number__decrease {
      height: 50px;
      line-height: 50px;
      width: 50px; } }
  .lt-ie9 .number__increase, .lt-ie9 .number__decrease {
    height: 50px;
    line-height: 50px;
    width: 50px; }

.number__increase {
  right: 0; }

.number__decrease {
  left: 0; }

[type=range] {
  /*removes default webkit styles*/
  -webkit-appearance: none;
  /*fix for FF unable to apply focus style bug */
  border: 1px solid white;
  padding: 0;
  /*required for proper track sizing in FF*/
  width: 180px;
  height: 32px;
  /*hide the outline behind the border*/ }
  @media (max-width: 30em) {
    [type=range] {
      width: 100%; } }
  [type=range]::-webkit-slider-runnable-track {
    height: 10px;
    background: #f7f7f7;
    border: none;
    border-radius: 10px;
    width: 180px; }
    @media (max-width: 30em) {
      [type=range]::-webkit-slider-runnable-track {
        width: 100%; } }
  [type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    border: none;
    height: 32px;
    width: 32px;
    border-radius: 50%;
    background: #384d64;
    margin-top: -11px; }
  [type=range]:focus {
    outline: none; }
  [type=range]:focus::-webkit-slider-runnable-track {
    background: #e5e5e5; }
  [type=range]::-moz-range-track {
    height: 10px;
    background: #f7f7f7;
    border: none;
    border-radius: 10px;
    width: 180px; }
    @media (max-width: 30em) {
      [type=range]::-moz-range-track {
        width: 100%; } }
  [type=range]::-moz-range-thumb {
    border: none;
    height: 32px;
    width: 32px;
    border-radius: 50%;
    background: #384d64; }
  [type=range]:-moz-focusring {
    outline: 1px solid white;
    outline-offset: -1px; }
  [type=range]::-ms-track {
    height: 10px;
    background: #f7f7f7;
    border: none;
    border-radius: 10px;
    /*remove default tick marks*/
    color: transparent;
    width: 180px; }
    @media (max-width: 30em) {
      [type=range]::-ms-track {
        width: 100%; } }
  [type=range]::-ms-fill-lower {
    outline: none;
    background: #f7f7f7;
    border-radius: 10px 0 0 10px; }
  [type=range]::-ms-thumb {
    border: none;
    height: 32px;
    width: 32px;
    border-radius: 50%;
    background: #384d64; }
  [type=range]:focus::-ms-track {
    background: #e5e5e5; }
  [type=range]:focus::-ms-fill-lower {
    background: #e5e5e5; }

blockquote {
  border-left: 2px solid #dbdbdb;
  font-weight: bold;
  margin: 0;
  width: 50%;
  padding: 0 0 0 20px;
  padding: 0 0 0 20px;
  padding:  0 0 0 2rem; }
  blockquote p:before {
    content: '“'; }
  blockquote p:after {
    content: '”'; }
  blockquote cite {
    color: #666;
    line-height: 1.5;
    font-family: "Open Sans", sans-serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    display: block; }
    @media (min-width: 48.0625em) {
      blockquote cite {
        font-size: 14px; } }
    .lt-ie9 blockquote cite {
      font-size: 14px; }

table {
  width: 100%; }

tr {
  background-color: #f5f5f5;
  border-bottom: 1px solid #d8d7d7; }

tr:nth-child(2n),
thead tr {
  background-color: transparent; }

th {
  text-align: left;
  font-weight: 300; }

th, td {
  padding: 15px 20px; }

.bullets, .thumbnail-bullets {
  cursor: default;
  display: inline-block;
  padding: 0;
  text-align: center; }

.bullets a, .thumbnail-bullets a {
  background-color: #fff;
  border: 2px solid #cdcdcd;
  cursor: pointer;
  display: inline-block;
  height: 12px;
  position: relative;
  width: 12px; }
  .bullets a:after, .thumbnail-bullets a:after {
    background-color: #384d64;
    content: "";
    display: none;
    position: absolute;
    bottom: 3px;
    left: 3px;
    right: 3px;
    top: 3px; }
  .bullets a.selected, .thumbnail-bullets a.selected {
    border-color: #384d64; }
    .bullets a.selected:after, .thumbnail-bullets a.selected:after {
      display: block; }

@media (min-width: 48.0625em) {
  .thumbnail-bullets a {
    height: auto;
    line-height: 0;
    width: auto;
    border-radius: 0; }
    .thumbnail-bullets a.selected:after {
      display: none; } }

.lt-ie9 .thumbnail-bullets a, .thumbnail-bullets .lt-ie9 a {
  height: auto;
  line-height: 0;
  width: auto;
  border-radius: 0; }
  .lt-ie9 .thumbnail-bullets a.selected:after, .thumbnail-bullets .lt-ie9 a.selected:after {
    display: none; }

.thumbnail-bullets img {
  display: none; }
  @media (min-width: 48.0625em) {
    .thumbnail-bullets img {
      display: inline-block; } }
  .lt-ie9 .thumbnail-bullets img, .thumbnail-bullets .lt-ie9 img {
    display: inline-block; }

.lt-ie9 body {
  min-width: 48.0625em; }

.container, .container--center, .global-message__content {
  max-width: 84em;
  margin-left: auto;
  margin-right: auto;
  padding: 0 10px;
  padding: 0 10px;
  padding:  0 1rem; }
  .container:after, .container--center:after, .global-message__content:after {
    content: " ";
    display: block;
    clear: both; }
  @media (min-width: 30.0625em) {
    .container, .container--center, .global-message__content {
      padding: 0 20px;
      padding:  0 2rem; } }
  .lt-ie9 .container, .lt-ie9 .container--center, .lt-ie9 .global-message__content {
    padding: 0 20px;
    padding: 0 20px;
    padding:  0 2rem; }

.image-block__content {
  padding: 2.5510204082%; }

@media (min-width: 25em) {
  .row {
    margin: 0 -20px; } }

.lt-ie9 .row {
  margin: 0 -20px; }

.img-fluid {
  width: 100%; }

.pt-1 {
  padding-top: 10px !important; }

.pt-2 {
  padding-top: 20px !important; }

.pt-3 {
  padding-top: 30px !important; }

.pt-4 {
  padding-top: 40px !important; }

.pt-5 {
  padding-top: 50px !important; }

.pt-5 {
  padding-top: 50px !important; }

.pt-6 {
  padding-top: 60px !important; }

.pt-7 {
  padding-top: 70px !important; }

.pt-8 {
  padding-top: 80px !important; }

.pt-9 {
  padding-top: 90px !important; }

.pb-1 {
  padding-bottom: 10px !important; }

.pb-2 {
  padding-bottom: 20px !important; }

.pb-3 {
  padding-bottom: 30px !important; }

.pb-4 {
  padding-bottom: 40px !important; }

.pb-5 {
  padding-bottom: 50px !important; }

.pb-5 {
  padding-bottom: 50px !important; }

.pb-6 {
  padding-bottom: 60px !important; }

.pb-7 {
  padding-bottom: 70px !important; }

.pb-8 {
  padding-bottom: 80px !important; }

.pb-9 {
  padding-bottom: 90px !important; }

@media (min-width: 30.0625em) {
  .pt-lg-9 {
    padding-top: 90px !important; } }

.lt-ie9 .pt-lg-9 {
  padding-top: 90px !important; }

/* v1.0.6 */
/* Core RS CSS file. 95% of time you shouldn't change anything here. */
.royalSlider {
  width: 600px;
  height: 400px;
  position: relative;
  direction: ltr; }

.royalSlider > * {
  float: left; }

.rsWebkit3d .rsSlide,
.rsWebkit3d .rsContainer,
.rsWebkit3d .rsThumbs,
.rsWebkit3d .rsPreloader,
.rsWebkit3d img,
.rsWebkit3d .rsOverflow,
.rsWebkit3d .rsBtnCenterer,
.rsWebkit3d .rsAbsoluteEl,
.rsWebkit3d .rsABlock,
.rsWebkit3d .rsLink {
  -webkit-backface-visibility: hidden; }

.rsFade.rsWebkit3d .rsSlide,
.rsFade.rsWebkit3d img,
.rsFade.rsWebkit3d .rsContainer {
  -webkit-transform: none; }

.rsOverflow {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  float: left;
  -webkit-tap-highlight-color: transparent; }

.rsVisibleNearbyWrap {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  left: 0;
  top: 0;
  -webkit-tap-highlight-color: transparent; }

.rsVisibleNearbyWrap .rsOverflow {
  position: absolute;
  left: 0;
  top: 0; }

.rsContainer {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-tap-highlight-color: transparent; }

.rsArrow,
.rsThumbsArrow {
  cursor: pointer; }

.rsThumb {
  float: left;
  position: relative; }

.rsArrow,
.rsNav,
.rsThumbsArrow {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transition: opacity 0.3s linear;
  -o-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear; }

.rsHidden {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  visibility: hidden;
  -webkit-transition: visibility 0s linear 0.3s,opacity 0.3s linear;
  -o-transition: visibility 0s linear 0.3s,opacity 0.3s linear;
  transition: visibility 0s linear 0.3s,opacity 0.3s linear; }

.rsGCaption {
  width: 100%;
  float: left;
  text-align: center; }

/* Fullscreen options, very important ^^ */
.royalSlider.rsFullscreen {
  position: fixed !important;
  height: auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 2147483647 !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  right: 0 !important; }

.royalSlider .rsSlide.rsFakePreloader {
  opacity: 1 !important;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transition: 0s;
  -o-transition: 0s;
  transition: 0s;
  display: none; }

.rsSlide {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  overflow: hidden;
  text-align: center;
  height: 100%;
  width: 100%; }

.royalSlider.rsAutoHeight,
.rsAutoHeight .rsSlide {
  height: auto; }

.rsContent {
  width: 100%;
  height: 100%;
  position: relative; }

.rsPreloader {
  position: absolute;
  z-index: 0; }

.rsNav {
  -moz-user-select: -moz-none;
  -webkit-user-select: none;
  -ms-user-select: none;
      user-select: none; }

.rsNavItem {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.25); }

.rsThumbs {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  float: left;
  z-index: 2; }

.rsTabs {
  float: left;
  background: none !important; }

.rsTabs,
.rsThumbs {
  -webkit-tap-highlight-color: transparent;
  -webkit-tap-highlight-color: transparent; }

.rsVideoContainer {
  width: auto;
  height: auto;
  line-height: 0;
  position: relative; }

.rsVideoFrameHolder {
  position: absolute;
  left: 0;
  top: 0;
  background: #141414;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transition: .3s; }

.rsVideoFrameHolder.rsVideoActive {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.rsVideoContainer iframe,
.rsVideoContainer video,
.rsVideoContainer embed,
.rsVideoContainer .rsVideoObj {
  position: absolute;
  z-index: 50;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

/* ios controls over video bug, shifting video */
.rsVideoContainer.rsIOSVideo iframe,
.rsVideoContainer.rsIOSVideo video,
.rsVideoContainer.rsIOSVideo embed {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 44px; }

.rsABlock {
  left: 0;
  top: 0;
  position: absolute;
  z-index: 15; }

img.rsImg {
  max-width: none; }

.grab-cursor {
  cursor: url(grab.png) 8 8, move; }

.grabbing-cursor {
  cursor: url(grabbing.png) 8 8, move; }

.rsNoDrag {
  cursor: auto; }

.rsLink {
  left: 0;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 20;
  background: url(blank.gif); }

/******************************
*
*  RoyalSlider Universal Skin
*
*    1. Arrows
*    2. Bullets
*    3. Thumbnails
*    4. Tabs
*    5. Fullscreen button
*    6. Play/close video button
*    7. Preloader
*    8. Caption
*
*  Sprite: '../images/royal-slider-uni-theme.png'
*  Feel free to edit anything
*  If you don't some part - just delete it
*
******************************/
/* Background */
.rsUni,
.rsUni .rsOverflow,
.rsUni .rsSlide,
.rsUni .rsVideoFrameHolder,
.rsUni .rsThumbs {
  background: #fff;
  color: #FFF; }

/***************
*
*  1. Arrows
*
****************/
.rsUni .rsArrow {
  height: 100%;
  width: 60px;
  position: absolute;
  display: block;
  cursor: pointer;
  z-index: 1; }

.rsUni.rsVer .rsArrow {
  width: 100%;
  height: 60px; }

.rsUni.rsVer .rsArrowLeft {
  top: 0;
  left: 0; }

.rsUni.rsVer .rsArrowRight {
  bottom: 0;
  left: 0; }

.rsUni.rsHor .rsArrowLeft {
  left: 0;
  top: 0; }

.rsUni.rsHor .rsArrowRight {
  right: 0;
  top: 0; }

.rsUni .rsArrowIcn {
  width: 32px;
  height: 32px;
  top: 50%;
  left: 50%;
  margin-top: -16px;
  margin-left: -16px;
  position: absolute;
  cursor: pointer;
  background: url("../images/royal-slider-uni-theme.png");
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  border-radius: 2px; }

.rsUni .rsArrow:hover .rsArrowIcn {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.rsUni.rsHor .rsArrowLeft .rsArrowIcn {
  background-position: -64px -32px; }

.rsUni.rsHor .rsArrowRight .rsArrowIcn {
  background-position: -64px -64px; }

.rsUni.rsVer .rsArrowLeft .rsArrowIcn {
  background-position: -96px -32px; }

.rsUni.rsVer .rsArrowRight .rsArrowIcn {
  background-position: -96px -64px; }

.rsUni .rsArrowDisabled .rsArrowIcn {
  opacity: .1 !important;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
  filter: alpha(opacity=20);
  *display: none; }

/***************
*
*  2. Bullets
*
****************/
.rsUni .rsBullets {
  position: relative;
  z-index: 2;
  padding-top: 4px;
  width: 100%;
  height: auto;
  margin: 0 auto;
  text-align: center;
  line-height: 5px;
  overflow: hidden; }

.rsUni .rsBullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  padding: 5px; }

.rsUni .rsBullet span {
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #BBB; }

.rsUni .rsBullet.rsNavSelected span {
  background-color: #383838; }

/***************
*
*  3. Thumbnails
*
****************/
.rsUni .rsThumbsHor {
  width: 100%;
  height: 72px; }

.rsUni .rsThumbsVer {
  width: 96px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0; }

.rsUni.rsWithThumbsHor .rsThumbsContainer {
  position: relative;
  height: 100%; }

.rsUni.rsWithThumbsVer .rsThumbsContainer {
  position: relative;
  width: 100%; }

.rsUni .rsThumb {
  float: left;
  overflow: hidden;
  width: 96px;
  height: 72px; }

.rsUni .rsThumb img {
  width: 100%; }

.rsUni .rsThumb.rsNavSelected {
  background: #333; }

.rsUni .rsThumb.rsNavSelected img {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  filter: alpha(opacity=30); }

.rsUni .rsThumb.rsNavSelected .thumbIco {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border: 2px solid #FFF;
  border: 2px solid rgba(255, 255, 255, 0.9);
  -webkit-backface-visibility: hidden; }

.rsUni .rsTmb {
  display: block; }

/* Thumbnails with text */
.rsUni .rsTmb h5 {
  font-size: 16px;
  margin: 0;
  padding: 0;
  line-height: 20px;
  color: #FFF; }

.rsUni .rsTmb span {
  color: #DDD;
  margin: 0;
  padding: 0;
  font-size: 13px;
  line-height: 18px; }

/* Thumbnails arrow icons */
.rsUni .rsThumbsArrow {
  height: 100%;
  width: 20px;
  position: absolute;
  display: block;
  cursor: pointer;
  z-index: 1; }

.rsUni.rsWithThumbsVer .rsThumbsArrow {
  width: 100%;
  height: 20px; }

.rsUni.rsWithThumbsVer .rsThumbsArrowLeft {
  top: 0;
  left: 0; }

.rsUni.rsWithThumbsVer .rsThumbsArrowRight {
  bottom: 0;
  left: 0; }

.rsUni.rsWithThumbsHor .rsThumbsArrowLeft {
  left: 0;
  top: 0; }

.rsUni.rsWithThumbsHor .rsThumbsArrowRight {
  right: 0;
  top: 0; }

.rsUni .rsThumbsArrowIcn {
  width: 16px;
  height: 16px;
  top: 50%;
  left: 50%;
  margin-top: -8px;
  margin-left: -8px;
  position: absolute;
  cursor: pointer;
  background: url("../stylesheets/royalslider/rs-default-inverted.png") transparent; }

.rsUni.rsWithThumbsHor .rsThumbsArrowLeft .rsThumbsArrowIcn {
  background-position: -128px -32px; }

.rsUni.rsWithThumbsHor .rsThumbsArrowRight .rsThumbsArrowIcn {
  background-position: -128px -48px; }

.rsUni.rsWithThumbsVer .rsThumbsArrowLeft .rsThumbsArrowIcn {
  background-position: -144px -32px; }

.rsUni.rsWithThumbsVer .rsThumbsArrowRight .rsThumbsArrowIcn {
  background-position: -144px -48px; }

.rsUni .rsThumbsArrowDisabled {
  display: none !important; }

/* Thumbnails resizing on smaller screens */
@media screen and (min-width: 0px) and (max-width: 800px) {
  .rsUni .rsThumb {
    width: 59px;
    height: 44px; }
  .rsUni .rsThumbsHor {
    height: 44px; }
  .rsUni .rsThumbsVer {
    width: 59px; } }

/***************
*
*  4. Tabs
*
****************/
.rsUni .rsTabs {
  width: 100%;
  height: auto;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  padding-top: 12px;
  position: relative; }

.rsUni .rsTab {
  display: inline-block;
  cursor: pointer;
  text-align: center;
  height: auto;
  width: auto;
  color: #333;
  padding: 5px 13px 6px;
  min-width: 72px;
  border: 1px solid #D9D9DD;
  text-decoration: none;
  background: #FFF;
  border-right: none;
  *display: inline;
  *zoom: 1;
  *border-right: 1px solid #d9d9d9; }

.rsUni .rsTab:first-child {
  border-top-left-radius: 16px;
  border-bottom-left-radius: 16px; }

.rsUni .rsTab:last-child {
  border-top-right-radius: 16px;
  border-bottom-right-radius: 16px;
  border-right: 1px solid #D9D9DD; }

.rsUni .rsTab:active {
  background-color: #f4f4f4; }

.rsUni .rsTab.rsNavSelected {
  color: #FFF;
  background: #383838;
  border-color: #383838; }

/***************
*
*  5. Fullscreen button
*
****************/
.rsUni .rsFullscreenBtn {
  right: 0;
  top: 0;
  width: 44px;
  height: 44px;
  z-index: 2;
  display: block;
  position: absolute;
  cursor: pointer; }

.rsUni .rsFullscreenIcn {
  display: block;
  margin: 6px;
  width: 32px;
  height: 32px;
  background: url("../stylesheets/royalslider/rs-default-inverted.png") 0 0 transparent;
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  border-radius: 2px; }

.rsUni .rsFullscreenBtn:hover .rsFullscreenIcn {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.rsUni.rsFullscreen .rsFullscreenIcn {
  background-position: -32px 0; }

/***************
*
*  6. Play/close video button
*
****************/
.rsUni .rsPlayBtn {
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0.3);
  width: 64px;
  height: 64px;
  margin-left: -32px;
  margin-top: -32px;
  cursor: pointer; }

.rsUni .rsPlayBtnIcon {
  width: 64px;
  display: block;
  height: 64px;
  border-radius: 4px;
  -webkit-transition: .3s;
  -o-transition: .3s;
     transition: .3s;
  background: url("../stylesheets/royalslider/rs-default-inverted.png") no-repeat 0 -32px;
  background-color: #383838;
  background-color: rgba(255, 255, 255, 0.75);
  *background-color: #383838; }

.rsUni .rsPlayBtn:hover .rsPlayBtnIcon {
  background-color: rgba(255, 255, 255, 0.9); }

.rsUni .rsBtnCenterer {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 20px;
  height: 20px; }

.rsUni .rsCloseVideoBtn {
  right: 0;
  top: 0;
  width: 44px;
  height: 44px;
  z-index: 50;
  position: absolute;
  cursor: pointer;
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0); }

.rsUni .rsCloseVideoBtn.rsiOSBtn {
  top: -38px;
  right: -6px; }

.rsUni .rsCloseVideoIcn {
  margin: 6px;
  width: 32px;
  height: 32px;
  background: url("../stylesheets/royalslider/rs-default-inverted.png") -64px 0;
  background-color: #383838;
  background-color: rgba(255, 255, 255, 0.75);
  *background-color: #383838; }

.rsUni .rsCloseVideoIcn:hover {
  background-color: rgba(255, 255, 255, 0.9); }

/***************
*
*  7. Preloader
*
****************/
.rsUni .rsPreloader {
  width: 20px;
  height: 20px;
  background-image: url("../stylesheets/royalslider/preloader-white.gif");
  left: 50%;
  top: 50%;
  margin-left: -10px;
  margin-top: -10px; }

/***************
*
*  8. Global caption
*
****************/
.rsUni .rsGCaption {
  position: absolute;
  float: none;
  bottom: 6px;
  left: 6px;
  text-align: left;
  background: #222;
  color: #FFF;
  padding: 2px 8px;
  width: auto;
  font-size: 12px;
  border-radius: 2px; }

.page {
  -webkit-transition: padding-top 200ms ease;
  -webkit-transition-delay: 300ms;
  -o-transition: padding-top 200ms ease 300ms;
  -webkit-transition: padding-top 200ms ease 300ms;
          transition: padding-top 200ms ease 300ms;
  padding-top: 60px; }
  body.has-global-message .page {
    padding-top: 145px;
    -webkit-transition: none;
    -o-transition: none;
    transition: none; }
  @media (min-width: 30.0625em) {
    .page {
      padding-top: 115px; }
      body.has-global-message .page {
        padding-top: 198px; } }
  .lt-ie9 .page {
    padding-top: 115px; }
    body.has-global-message .lt-ie9 .page {
      padding-top: 198px; }
  @media (min-width: 48.0625em) {
    .page {
      padding-top: 155px; }
      body.has-global-message .page {
        padding-top: 207px; } }
  .lt-ie9 .page {
    padding-top: 155px; }
    body.has-global-message .lt-ie9 .page {
      padding-top: 207px; }
  @media (min-width: 73.5em) {
    .page {
      padding-top: 115px; }
      body.has-global-message .page {
        padding-top: 167px; } }

@media (min-width: 48.0625em) {
  .main--has-aside, .main--checkout {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    float: left; } }

.lt-ie9 .main--has-aside, .lt-ie9 .main--checkout {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  float: left; }

@media (min-width: 73.5em) {
  .main--has-aside, .main--checkout {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 66.6666666667%;
    float: left; } }

@media (min-width: 73.5em) {
  .main--checkout {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 58.3333333333%;
    float: left; } }

@media (min-width: 48.0625em) {
  .aside, .aside--checkout {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    float: left;
    padding-left: 2.5510204082%; } }

.lt-ie9 .aside, .lt-ie9 .aside--checkout {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  float: left;
  padding-left: 2.5510204082%; }

@media (min-width: 73.5em) {
  .aside, .aside--checkout {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 33.3333333333%;
    float: left; } }

@media (min-width: 48.0625em) {
  .aside--checkout {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 41.6666666667%;
    float: right; } }

.lt-ie9 .aside--checkout {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 41.6666666667%;
  float: right; }

.aside .basket, .aside--checkout .basket {
  margin: 0; }
  @media (min-width: 48.0625em) {
    .aside .basket, .aside--checkout .basket {
      margin-top: 20px; } }
  .lt-ie9 .aside .basket, .lt-ie9 .aside--checkout .basket {
    margin-top: 20px; }

.main--has-aside, .main--checkout, .aside--checkout {
  margin-bottom: 5%; }
  @media (min-width: 48.0625em) {
    .main--has-aside, .main--checkout, .aside--checkout {
      margin-bottom: 4%; } }
  .lt-ie9 .main--has-aside, .lt-ie9 .main--checkout, .lt-ie9 .aside--checkout {
    margin-bottom: 4%; }

.section, .errors, .image-block, .image-block--left, .image-block--right, .checkout__gls, .blog-post {
  margin: 5% 0; }
  @media (min-width: 48.0625em) {
    .section, .errors, .image-block, .image-block--left, .image-block--right, .checkout__gls, .blog-post {
      margin: 4% 0; } }
  .lt-ie9 .section, .lt-ie9 .errors, .lt-ie9 .image-block, .lt-ie9 .image-block--left, .lt-ie9 .image-block--right, .lt-ie9 .checkout__gls, .lt-ie9 .blog-post {
    margin: 4% 0; }
  .section--dark, .section--highlight, .section--campaign, .errors {
    border-bottom: 1px solid transparent;
    border-top: 1px solid transparent;
    clear: both;
    padding: 5% 0; }
    @media (min-width: 48.0625em) {
      .section--dark, .section--highlight, .section--campaign, .errors {
        padding: 2.5% 0; } }
    .lt-ie9 .section--dark, .lt-ie9 .section--highlight, .lt-ie9 .section--campaign, .lt-ie9 .errors {
      padding: 2.5% 0; }
  @media (min-width: 48.0625em) {
    .section--limit {
      margin: 30px 0; } }
  .lt-ie9 .section--limit {
    margin: 30px 0; }
  .section--dark {
    border-color: #2f4054; }
  .section--highlight {
    border-color: #eaeaea; }
  .section--campaign {
    border: none; }
    @media (min-width: 48.0625em) {
      .section--campaign {
        padding: 4% 0; } }
    .lt-ie9 .section--campaign {
      padding: 4% 0; }
  @media (min-width: 25em) {
    .section__header--center {
      text-align: center; } }
  .lt-ie9 .section__header--center {
    text-align: center; }
  @media (min-width: 48.0625em) {
    .section__header--center {
      margin: 0 auto;
      width: 83.3333333333%; } }
  .lt-ie9 .section__header--center {
    margin: 0 auto;
    width: 83.3333333333%; }
  @media (min-width: 73.5em) {
    .section__header--center {
      width: 66.6666666667%; } }
  .section__header h1, .section__header--center h1 {
    margin-top: 0; }
  .section__header-subject + h1,
  .section__header-subject + h2,
  .section__header-subject + h3 {
    margin-top: 0; }
  .section__text {
    margin: auto; }
    @media (min-width: 48.0625em) {
      .section__text {
        max-width: 60em; } }
    .lt-ie9 .section__text {
      max-width: 60em; }
    .section__text .button--small, .section__text .permission-bar__button, .section__text .button--primary--small, .section__text .button--secondary--small, .section__text .checkout__basket-anchor, .section__text .button--tertiary--small, .section__text .button, .section__text .checkout__submit, .section__text .checkout__submit--us, .section__text .discount__submit, .section__text .button--primary, .section__text .button--secondary, .section__text .button--tertiary, .section__text .button--buy {
      margin-top: 1.25em; }

@media (min-width: 48.0625em) {
  .container--center {
    text-align: center; } }

.lt-ie9 .container--center {
  text-align: center; }

.divider {
  border: none;
  border-top: 1px solid #dbdbdb;
  margin: 0; }

@media (min-width: 48.0625em) {
  .text--split {
    -webkit-columns: 2;
    -ms-columns: 2;
    -o-columns: 2;
    columns: 2;
    -webkit-column-gap: 30px;
    -ms-column-gap: 30px;
    -o-column-gap: 30px;
    column-gap: 30px; }
    .text--split p:first-child {
      margin-top: 0; } }

.lt-ie9 .text--split {
  -webkit-columns: 2;
  -ms-columns: 2;
  -o-columns: 2;
  columns: 2;
  -webkit-column-gap: 30px;
  -ms-column-gap: 30px;
  -o-column-gap: 30px;
  column-gap: 30px; }
  .lt-ie9 .text--split p:first-child {
    margin-top: 0; }

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

@media (min-width: 48.0625em) {
  .textcol, .textcol--first {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    float: left;
    padding-left: 1.2755102041%; } }

.lt-ie9 .textcol, .lt-ie9 .textcol--first {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  float: left;
  padding-left: 1.2755102041%; }

@media (min-width: 48.0625em) {
  .textcol--first {
    padding-left: 0;
    padding-right: 1.2755102041%; } }

.lt-ie9 .textcol--first {
  padding-left: 0;
  padding-right: 1.2755102041%; }

.errors {
  background-color: #F7AFAF;
  border-color: #d62c2d;
  color: #272324; }
  .errors__header {
    margin-top: 0; }
  .errors__list {
    margin-bottom: 0; }

.raptor-container {
  position: relative;
  max-height: 2000px;
  overflow: hidden;
  -webkit-transition: max-height 1.8s ease-in-out;
       -o-transition: max-height 1.8s ease-in-out;
          transition: max-height 1.8s ease-in-out; }
  .raptor-container.is-loading {
    max-height: 32px;
    min-height: 32px; }
    .raptor-container.is-loading:after {
      content: '';
      background: url("../images/loader.gif") no-repeat;
      position: absolute;
      top: 50%;
      left: 50%;
      width: 32px;
      height: 32px;
      margin: -16px 0 0 -16px; }

.nav__item--has-children > .nav__list {
  max-height: 0;
  overflow: hidden; }
  .nav__item--has-children > .active.nav__list {
    max-height: none; }

@media (max-width: 30em) {
  .no-js#scanpan:target body,
  .no-js body:target, body.show-menu, body.show-basket {
    overflow: hidden;
    position: fixed;
    top: 0; } }

.page-overlay {
  background-color: rgba(0, 0, 0, 0.5);
  display: none;
  height: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  z-index: 3;
  width: 100%; }
  .no-js#scanpan:target .page-overlay,
  .no-js #shop:target .page-overlay,
  .show-menu .page-overlay,
  .show-basket .page-overlay {
    display: block; }
  @media (min-width: 30.0625em) {
    .page-overlay .no-js#scanpan:target,
    .show-menu .page-overlay {
      display: none; } }
  .lt-ie9 .page-overlay .no-js#scanpan:target,
  .show-menu .lt-ie9 .page-overlay {
    display: none; }

@media (min-width: 30.0625em) {
  .nav {
    text-align: center; } }

.lt-ie9 .nav {
  text-align: center; }

@media (min-width: 30.0625em) {
  .nav__list .nav__list {
    background-color: #373334;
    min-width: 256px;
    position: absolute;
    text-align: left; }
    .nav__list .nav__list .nav__item, .nav__list .nav__list .nav__item--has-children {
      border-top: 1px solid #404040; }
      .nav__list .nav__list .nav__item:first-child, .nav__list .nav__list .nav__item--has-children:first-child {
        border-top: none; } }

.lt-ie9 .nav__list .nav__list {
  background-color: #373334;
  min-width: 256px;
  position: absolute;
  text-align: left; }
  .lt-ie9 .nav__list .nav__list .nav__item, .lt-ie9 .nav__list .nav__list .nav__item--has-children {
    border-top: 1px solid #404040; }
    .lt-ie9 .nav__list .nav__list .nav__item:first-child, .lt-ie9 .nav__list .nav__list .nav__item--has-children:first-child {
      border-top: none; }

@media (max-width: 30em) {
  .nav__item.active > .nav__list, .active.nav__item--has-children > .nav__list {
    display: block; } }

@media (min-width: 30.0625em) {
  .nav__list {
    display: inline-block; }
    .no-js .nav__item:hover > .nav__list, .no-js .nav__item--has-children:hover > .nav__list,
    .nav__item.hover > .nav__list, .hover.nav__item--has-children > .nav__list {
      display: block; } }

.lt-ie9 .nav__list {
  display: inline-block; }
  .no-js .nav__item:hover > .lt-ie9 .nav__list, .no-js .nav__item--has-children:hover > .lt-ie9 .nav__list,
  .nav__item.hover > .lt-ie9 .nav__list, .hover.nav__item--has-children > .lt-ie9 .nav__list {
    display: block; }

@media (min-width: 30.0625em) {
  .nav__item, .nav__item--has-children {
    float: left; }
    .nav__item .nav__item, .nav__item--has-children .nav__item, .nav__item .nav__item--has-children, .nav__item--has-children .nav__item--has-children {
      float: none; }
    .nav__item:last-child, .nav__item--has-children:last-child {
      position: absolute;
      right: 0; } }

.lt-ie9 .nav__item, .lt-ie9 .nav__item--has-children {
  float: left; }
  .lt-ie9 .nav__item .lt-ie9 .nav__item, .lt-ie9 .nav__item--has-children .lt-ie9 .nav__item, .lt-ie9 .nav__item .lt-ie9 .nav__item--has-children, .lt-ie9 .nav__item--has-children .lt-ie9 .nav__item--has-children {
    float: none; }
  .lt-ie9 .nav__item:last-child, .lt-ie9 .nav__item--has-children:last-child {
    position: absolute;
    right: 0; }

@media (min-width: 30.0625em) {
  .nav__item--has-children > .nav__list {
    display: none;
    overflow: visible;
    max-height: none !important; } }

.lt-ie9 .nav__item--has-children > .nav__list {
  display: none;
  overflow: visible;
  max-height: none !important; }

.nav__link {
  display: block;
  font-weight: 300;
  padding: 15px;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  .nav__link, .nav__link:hover, .nav__link:focus, .nav__link:active {
    color: #fff;
    text-decoration: none; }
  @media (min-width: 30.0625em) {
    .nav__link {
      display: inline-block; }
      .no-js .nav__item--has-children:hover > .nav__link,
      .nav__item--has-children.hover > .nav__link {
        background-color: #373334;
        color: #af9b56; }
        .no-js .nav__item--has-children:hover > .nav__link:after,
        .nav__item--has-children.hover > .nav__link:after {
          color: inherit; } }
  .lt-ie9 .nav__link {
    display: inline-block; }
    .no-js .nav__item--has-children:hover > .lt-ie9 .nav__link,
    .nav__item--has-children.hover > .lt-ie9 .nav__link {
      background-color: #373334;
      color: #af9b56; }
      .no-js .nav__item--has-children:hover > .lt-ie9 .nav__link:after,
      .nav__item--has-children.hover > .lt-ie9 .nav__link:after {
        color: inherit; }
  .nav__item--has-children > .nav__link {
    position: relative; }
    .nav__item--has-children > .nav__link:hover:after {
      color: inherit; }
    .nav__item--has-children > .nav__link:after {
      color: #999;
      float: right;
      margin-top: -6px;
      position: absolute;
      right: 10px;
      top: 50%;
      font-size: 11px;
      font-size: 11px;
      font-size: 1.1rem;
      content: "";
      font-family: "icons";
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      height: 1em;
      line-height: 1em;
      speak: none;
      text-indent: 0;
      text-transform: none;
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased; }
    .nav__item--has-children > .nav__link.active:after {
      -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg); }
  @media (max-width: 30em) {
    .nav__link {
      border-bottom: 1px solid #404040;
      display: block;
      padding: 0.8em 8%;
      font-size: 16px;
      font-size: 1.6rem; }
      .nav__item--has-children .nav__list .nav__link {
        color: #999;
        padding: 0.8em 12%; } }
  @media (min-width: 30.0625em) {
    .nav__link:hover, .nav__link:focus, .nav__link:active {
      background-color: #373334;
      color: #af9b56; }
      .nav__link:hover:after, .nav__link:focus:after, .nav__link:active:after {
        color: inherit; }
    .nav__item.active > .nav__link, .active.nav__item--has-children > .nav__link {
      color: #af9b56; }
      .nav__item.active > .nav__link.highlight--secondary, .active.nav__item--has-children > .nav__link.highlight--secondary {
        color: #272324; } }
  .lt-ie9 .nav__link:hover, .lt-ie9 .nav__link:focus, .lt-ie9 .nav__link:active {
    background-color: #373334;
    color: #af9b56; }
    .lt-ie9 .nav__link:hover:after, .lt-ie9 .nav__link:focus:after, .lt-ie9 .nav__link:active:after {
      color: inherit; }
  .nav__item.active > .lt-ie9 .nav__link, .active.nav__item--has-children > .lt-ie9 .nav__link {
    color: #af9b56; }
    .nav__item.active > .lt-ie9 .nav__link.highlight--secondary, .active.nav__item--has-children > .lt-ie9 .nav__link.highlight--secondary {
      color: #272324; }
  @media (min-width: 48.0625em) {
    .nav__link {
      padding: 19px 23px;
      font-size: 16px;
      font-size: 1.6rem; }
      .nav__item--has-children .nav__list .nav__link {
        font-size: 16px;
        font-size: 1.6rem; }
      .nav__link:after {
        position: relative;
        top: -2px; } }
  .lt-ie9 .nav__link {
    padding: 19px 23px;
    font-size: 16px;
    font-size: 16px;
    font-size: 1.6rem; }
    .nav__item--has-children .nav__list .lt-ie9 .nav__link {
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem; }
    .lt-ie9 .nav__link:after {
      position: relative;
      top: -2px; }

.nav__highlight--senary {
  color: #272324;
  background-color: #fcdf7a; }

.header-nav {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
  position: relative; }
  @media (min-width: 30.0625em) {
    .header-nav {
      display: block;
      text-align: center; } }
  .lt-ie9 .header-nav {
    display: block;
    text-align: center; }

.header-nav__list {
  padding: 0 0 0 20px;
  margin: 0; }
  @media (min-width: 73.5em) {
    .header-nav__list {
      padding: 0;
      display: inline-block; } }
  .header-nav__list.has-level-1 {
    float: left;
    margin: 60px 0;
    width: 100%; }
  .header-nav__list.has-level-2 {
    margin: 0;
    width: 100%; }

.header-nav__container {
  position: relative; }

.header-nav__item {
  float: left;
  margin-left: 20px; }
  @media (max-width: 73.4375em) {
    .header-nav__item.last-child {
      position: absolute;
      right: 20px; } }
  @media (min-width: 73.5em) {
    .header-nav__item.last-child {
      position: absolute;
      right: 0; }
      .header-nav__item.last-child .header-nav__link {
        padding-right: 0; }
        .header-nav__item.last-child .header-nav__link:after {
          padding: 0;
          left: 0; } }
  .has-column-count-4 .header-nav__item {
    float: left;
    width: 25%; }
    @media (min-width: 30.0625em) {
      .has-column-count-4 .header-nav__item:last-child {
        position: relative; } }
    .lt-ie9 .has-column-count-4 .header-nav__item:last-child {
      position: relative; }
    @media (min-width: 48.0625em) {
      .has-column-count-4 .header-nav__item {
        width: 25%; }
        .has-column-count-4 .header-nav__item:nth-child(5n+1) {
          clear: none; }
        .has-column-count-4 .header-nav__item:nth-child(3n+1) {
          clear: none; }
        .has-column-count-4 .header-nav__item:nth-child(4n+1) {
          clear: left; } }
    .lt-ie9 .has-column-count-4 .header-nav__item {
      width: 25%; }
      .lt-ie9 .has-column-count-4 .header-nav__item:nth-child(5n+1) {
        clear: none; }
      .lt-ie9 .has-column-count-4 .header-nav__item:nth-child(3n+1) {
        clear: none; }
      .lt-ie9 .has-column-count-4 .header-nav__item:nth-child(4n+1) {
        clear: left; }
  .has-level-1 > .header-nav__item {
    float: left;
    margin: 0 0 30px;
    position: relative; }
    @media (min-width: 48.0625em) {
      .has-level-1 > .header-nav__item:nth-child(-n+2)::after {
        background-color: #e3e3e3;
        content: "";
        height: 110%;
        position: absolute;
        right: 20%;
        top: 0;
        width: 1px; } }
    .lt-ie9 .has-level-1 > .header-nav__item:nth-child(-n+2)::after {
      background-color: #e3e3e3;
      content: "";
      height: 110%;
      position: absolute;
      right: 20%;
      top: 0;
      width: 1px; }
  .has-level-2 .header-nav__item {
    float: none;
    margin: 0;
    width: 75%; }
    .has-level-2 .header-nav__item:first-child .header-nav__link {
      margin: 0; }
  .header-nav__item:first-child {
    margin-left: 0; }
    .header-nav__item:first-child .header-nav__link {
      padding-left: 0; }
      .header-nav__item:first-child .header-nav__link.header-nav__highlight--secondary, .header-nav__item:first-child .header-nav__link.header-nav__highlight--senary {
        padding-left: 10px; }

.header-nav__top-level {
  position: absolute;
  display: none;
  top: 22px; }
  .header-nav__top-level.is-active {
    display: block; }
  .header-nav__top-level .header-nav__top-level--link {
    text-decoration: none;
    font-family: "Open Sans", sans-serif;
    font-size: 10px;
    border: 1px solid #000;
    padding: 5px 10px;
    border-radius: 5px; }

.header-nav__link {
  color: #fff;
  display: block;
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  text-decoration: none;
  padding: 20px 10px;
  position: relative;
  z-index: 1; }
  .is-active > .header-nav__link::after {
    border-bottom: 7px solid #AE9C57;
    content: "";
    padding: 0 6px;
    position: absolute;
    left: -11px;
    bottom: 0;
    width: 100%; }
  .is-active > .header-nav__link, .header-nav__link.is-active, .header-nav__link.is-inpath {
    color: white; }
  .is-current > .header-nav__link,
  .is-inpath > .header-nav__link {
    color: #fff; }
  .header-nav__link:hover, .header-nav__link:focus, .header-nav__link:active {
    color: #fff;
    text-decoration: none; }
  .has-level-1 .header-nav__link {
    font-size: 21px;
    height: auto;
    line-height: normal;
    margin-bottom: 30px;
    padding: 0;
    color: #000; }
    .has-level-1 .header-nav__link:hover, .has-level-1 .header-nav__link:focus, .has-level-1 .header-nav__link:active {
      color: #000;
      text-decoration: none; }
    .has-level-1 .header-nav__link::after {
      display: none; }
  .has-level-2 .header-nav__link {
    color: #666666;
    font-size: 16px;
    margin: 10px 0 0; }
    .has-level-2 .header-nav__link::after {
      display: none; }
    .has-level-2 .header-nav__link:hover {
      color: #000; }

.header-nav__highlight--secondary,
.header-nav__highlight--senary {
  color: #272324;
  font-weight: 600; }
  .header-nav__highlight--secondary::after,
  .header-nav__highlight--senary::after {
    border-bottom: none; }

.header-nav__highlight--secondary {
  background-color: #af9b56; }

.header-nav__highlight--senary {
  background-color: #fcdf7a; }

.header-nav__link.header-nav__highlight--secondary:hover,
.header-nav__link.header-nav__highlight--senary:hover {
  color: #272324; }

.header-nav__item.is-active .header-nav__highlight--secondary,
.header-nav__item.is-active .header-nav__highlight--senary {
  color: #272324; }
  .header-nav__item.is-active .header-nav__highlight--secondary::after,
  .header-nav__item.is-active .header-nav__highlight--senary::after {
    border-bottom: none; }

.header-nav__item.is-active .header-nav__highlight--secondary {
  background-color: #b7a567; }

.header-nav__item.is-active .header-nav__highlight--senary {
  background-color: #fde593; }

.nav-dropdown {
  background-color: #fff;
  -webkit-box-shadow: 0 7px 49px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 7px 49px 0 rgba(0, 0, 0, 0.25);
  height: 0;
  min-height: 350px;
  margin: 0 auto;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  overflow: hidden;
  position: absolute;
  left: 0;
  right: 0;
  -webkit-transition: visibility 0ms linear 250ms, opacity 250ms ease;
       -o-transition: visibility 0ms linear 250ms, opacity 250ms ease;
          transition: visibility 0ms linear 250ms, opacity 250ms ease;
  visibility: hidden;
  width: 100%;
  z-index: 9;
  text-align: left; }
  .is-active + .nav-dropdown,
  .is-active > .nav-dropdown {
    height: auto;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transition: visibility 0 linear, opacity 250ms ease;
         -o-transition: visibility 0 linear, opacity 250ms ease;
            transition: visibility 0 linear, opacity 250ms ease;
    visibility: visible; }
  .is-active + .nav-dropdown {
    display: block; }

.header-nav__cta {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  float: left;
  position: relative;
  -webkit-transition: opacity 250ms ease;
       -o-transition: opacity 250ms ease;
          transition: opacity 250ms ease;
  z-index: 10;
  margin-top: -30px; }
  .header-nav__cta .splat, .header-nav__cta .splat--secondary, .header-nav__cta .splat--tertiary, .header-nav__cta .splat--large-alt, .header-nav__cta .splat--large, .header-nav__cta .splat--bestseller--large, .header-nav__cta .splat--bit--large, .header-nav__cta .splat--bestseller, .header-nav__cta .splat--bit {
    background: #AE9C57;
    height: auto;
    pointer-events: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 44px;
    z-index: 10;
    text-align: center;
    color: #000;
    padding: 18px 15px; }
    .header-nav__cta .splat .from, .header-nav__cta .splat--secondary .from, .header-nav__cta .splat--tertiary .from, .header-nav__cta .splat--large-alt .from, .header-nav__cta .splat--large .from, .header-nav__cta .splat--bestseller--large .from, .header-nav__cta .splat--bit--large .from, .header-nav__cta .splat--bestseller .from, .header-nav__cta .splat--bit .from {
      font-size: 15px;
      font-style: italic;
      font-family: 'Times New Roman', Times, serif;
      line-height: 0.8; }
    .header-nav__cta .splat .price, .header-nav__cta .splat--secondary .price, .header-nav__cta .splat--tertiary .price, .header-nav__cta .splat--large-alt .price, .header-nav__cta .splat--large .price, .header-nav__cta .splat--bestseller--large .price, .header-nav__cta .splat--bit--large .price, .header-nav__cta .splat--bestseller .price, .header-nav__cta .splat--bit .price {
      font-size: 21px;
      font-weight: 600; }
    @media (min-width: 30.0625em) {
      .header-nav__cta .splat, .header-nav__cta .splat--secondary, .header-nav__cta .splat--tertiary, .header-nav__cta .splat--large-alt, .header-nav__cta .splat--large, .header-nav__cta .splat--bestseller--large, .header-nav__cta .splat--bit--large, .header-nav__cta .splat--bestseller, .header-nav__cta .splat--bit {
        -webkit-transform: scale(0.5, 0.5);
            -ms-transform: scale(0.5, 0.5);
             -o-transform: scale(0.5, 0.5);
                transform: scale(0.5, 0.5); } }
    .lt-ie9 .header-nav__cta .splat, .lt-ie9 .header-nav__cta .splat--secondary, .lt-ie9 .header-nav__cta .splat--tertiary, .lt-ie9 .header-nav__cta .splat--large-alt, .lt-ie9 .header-nav__cta .splat--large, .lt-ie9 .header-nav__cta .splat--bestseller--large, .lt-ie9 .header-nav__cta .splat--bit--large, .lt-ie9 .header-nav__cta .splat--bestseller, .lt-ie9 .header-nav__cta .splat--bit {
      -webkit-transform: scale(0.5, 0.5);
          -ms-transform: scale(0.5, 0.5);
           -o-transform: scale(0.5, 0.5);
              transform: scale(0.5, 0.5); }
    @media (min-width: 48.0625em) {
      .header-nav__cta .splat, .header-nav__cta .splat--secondary, .header-nav__cta .splat--tertiary, .header-nav__cta .splat--large-alt, .header-nav__cta .splat--large, .header-nav__cta .splat--bestseller--large, .header-nav__cta .splat--bit--large, .header-nav__cta .splat--bestseller, .header-nav__cta .splat--bit {
        -webkit-transform: none;
            -ms-transform: none;
             -o-transform: none;
                transform: none;
        top: -50px; } }
    .lt-ie9 .header-nav__cta .splat, .lt-ie9 .header-nav__cta .splat--secondary, .lt-ie9 .header-nav__cta .splat--tertiary, .lt-ie9 .header-nav__cta .splat--large-alt, .lt-ie9 .header-nav__cta .splat--large, .lt-ie9 .header-nav__cta .splat--bestseller--large, .lt-ie9 .header-nav__cta .splat--bit--large, .lt-ie9 .header-nav__cta .splat--bestseller, .lt-ie9 .header-nav__cta .splat--bit {
      -webkit-transform: none;
          -ms-transform: none;
           -o-transform: none;
              transform: none;
      top: -50px; }

.header-nav__cta-image {
  max-width: 80%; }

.header-nav__top-button {
  position: fixed;
  left: 50%;
  top: 73px;
  min-width: 225px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
  background-color: #000;
  padding: 0 10px 11px 30px;
  margin: 0;
  z-index: 10; }
  .header-nav__top-button:hover {
    background-color: #1a1a1a; }
  .header-nav__top-button .icon-next-circle::before {
    height: 26px;
    width: 26px;
    font-size: 26px;
    margin-left: 15px; }
  @media (min-width: 30.0625em) {
    .header-nav__top-button {
      top: 115px; } }
  .lt-ie9 .header-nav__top-button {
    top: 115px; }
  @media (min-width: 48.0625em) {
    .header-nav__top-button {
      position: relative;
      top: auto;
      width: auto;
      background-color: #272324;
      -webkit-box-shadow: none;
              box-shadow: none;
      border-radius: 0;
      display: inline-block;
      padding: 0 20px;
      line-height: 4;
      height: 64px; }
      .header-nav__top-button:hover {
        background-color: #ccb100; }
      .header-nav__top-button .icon-next-circle {
        top: 0.75em; }
        .header-nav__top-button .icon-next-circle::before {
          height: 35px;
          width: 35px;
          font-size: 35px; } }
  .lt-ie9 .header-nav__top-button {
    position: relative;
    top: auto;
    width: auto;
    background-color: #272324;
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: 0;
    display: inline-block;
    padding: 0 20px;
    line-height: 4;
    height: 64px; }
    .lt-ie9 .header-nav__top-button:hover {
      background-color: #ccb100; }
    .lt-ie9 .header-nav__top-button .icon-next-circle {
      top: 0.75em; }
      .lt-ie9 .header-nav__top-button .icon-next-circle::before {
        height: 35px;
        width: 35px;
        font-size: 35px; }

.image-block, .image-block--left, .image-block--right {
  position: relative;
  overflow: hidden; }
  .lt-ie9 .image-block__container {
    position: relative;
    max-width: 84em;
    margin-left: auto;
    margin-right: auto;
    padding: 0 10px;
    padding: 0 10px;
    padding:  0 1rem; }
    .lt-ie9 .image-block__container:after {
      content: " ";
      display: block;
      clear: both; }
    @media (min-width: 30.0625em) {
      .lt-ie9 .image-block__container {
        padding: 0 20px;
        padding:  0 2rem; } }
    .lt-ie9 .lt-ie9 .image-block__container {
      padding: 0 20px;
      padding: 0 20px;
      padding:  0 2rem; }
  @media (min-width: 73.5em) {
    .image-block__container {
      max-width: 84em;
      margin-left: auto;
      margin-right: auto;
      padding: 0 10px;
      padding:  0 1rem; }
      .image-block__container:after {
        content: " ";
        display: block;
        clear: both; } }
  @media (min-width: 73.5em) and (min-width: 30.0625em) {
    .image-block__container {
      padding: 0 20px;
      padding:  0 2rem; } }
  @media (min-width: 73.5em) {
      .lt-ie9 .image-block__container {
        padding: 0 20px;
        padding:  0 2rem; } }
  .image-block__content {
    padding-bottom: 0; }
    @media (min-width: 62.5em) {
      .image-block__content {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 50%;
        float: left; } }
    .lt-ie9 .image-block__content {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      width: 50%;
      float: left; }
    @media (min-width: 73.5em) {
      .image-block__content {
        padding-left: 0;
        width: 33.3333333333%; } }
    @media (min-width: 62.5em) {
      .image-block--left .image-block__content {
        float: right; } }
    .lt-ie9 .image-block--left .image-block__content {
      float: right; }
    @media (min-width: 73.5em) {
      .image-block--left .image-block__content {
        padding-left: 1.875em;
        padding-right: 0; } }
    .image-block__content .button--small, .image-block__content .permission-bar__button, .image-block__content .button--primary--small, .image-block__content .button--secondary--small, .image-block__content .checkout__basket-anchor, .image-block__content .button--tertiary--small, .image-block__content .button, .image-block__content .checkout__submit, .image-block__content .checkout__submit--us, .image-block__content .discount__submit, .image-block__content .button--primary, .image-block__content .button--secondary, .image-block__content .button--tertiary, .image-block__content .button--buy {
      margin-top: 1.25em; }
      @media (min-width: 73.5em) {
        .image-block__content .button--small, .image-block__content .permission-bar__button, .image-block__content .button--primary--small, .image-block__content .button--secondary--small, .image-block__content .checkout__basket-anchor, .image-block__content .button--tertiary--small, .image-block__content .button, .image-block__content .checkout__submit, .image-block__content .checkout__submit--us, .image-block__content .discount__submit, .image-block__content .button--primary, .image-block__content .button--secondary, .image-block__content .button--tertiary, .image-block__content .button--buy {
          margin-top: 2.5em; } }
  .image-block__header, .section__text-header {
    margin-top: 0; }
  .image-block__picture {
    position: relative;
    display: block;
    line-height: 0; }
    @media (min-width: 62.5em) {
      .image-block__picture {
        height: 100%;
        overflow: hidden;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 1;
        width: 50%; } }
    .lt-ie9 .image-block__picture {
      height: 100%;
      overflow: hidden;
      position: absolute;
      right: 0;
      top: 0;
      z-index: 1;
      width: 50%; }
    @media (min-width: 73.5em) {
      .image-block__picture {
        overflow: visible;
        position: relative;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 66.6666666667%;
        float: right; } }
    @media (min-width: 62.5em) {
      .image-block--left .image-block__picture {
        left: 0;
        right: auto; } }
    .lt-ie9 .image-block--left .image-block__picture {
      left: 0;
      right: auto; }
    @media (min-width: 73.5em) {
      .image-block--left .image-block__picture {
        float: left; } }
  .image-block__image {
    width: 100%; }
    @media (min-width: 62.5em) {
      .image-block__image {
        height: 100%;
        width: auto; } }
    .lt-ie9 .image-block__image {
      height: 100%;
      width: auto; }
    @media (min-width: 73.5em) {
      .image-block__image {
        height: auto;
        width: 100%; } }
    @media (min-width: 62.5em) {
      .image-block--left .image-block__image {
        float: right; } }
    .lt-ie9 .image-block--left .image-block__image {
      float: right; }
  .image-block .splat, .image-block--left .splat, .image-block--right .splat, .image-block .splat--secondary, .image-block--left .splat--secondary, .image-block--right .splat--secondary, .image-block .splat--tertiary, .image-block--left .splat--tertiary, .image-block--right .splat--tertiary, .image-block .splat--large-alt, .image-block--left .splat--large-alt, .image-block--right .splat--large-alt, .image-block .splat--large, .image-block--left .splat--large, .image-block--right .splat--large, .image-block .splat--bestseller--large, .image-block--left .splat--bestseller--large, .image-block--right .splat--bestseller--large, .image-block .splat--bit--large, .image-block--left .splat--bit--large, .image-block--right .splat--bit--large, .image-block .splat--bestseller, .image-block--left .splat--bestseller, .image-block--right .splat--bestseller, .image-block .splat--bit, .image-block--left .splat--bit, .image-block--right .splat--bit {
    position: absolute;
    left: 0;
    top: 0; }

.checkout__accept-checkbox-container {
  display: inline-block;
  float: left;
  margin-bottom: 18px;
  margin-right: 2em; }
  @media (min-width: 73.5em) {
    .checkout__accept-checkbox-container {
      margin-top: 10px;
      margin-bottom: 0; } }

@media (min-width: 48.0625em) {
  .checkout__basket-anchor {
    display: none; } }

.lt-ie9 .checkout__basket-anchor {
  display: none; }

.checkout__basket-anchor:before {
  font-size: 25px; }

.checkout__shippingmethod {
  display: none; }

.checkout__submit, .checkout__submit--us {
  margin: 0; }
  @media (min-width: 73.5em) {
    .checkout__submit, .checkout__submit--us {
      float: right; } }
  .checkout__submit--us {
    position: relative;
    text-indent: 0;
    -webkit-transition: all 200ms ease-in-out;
    -o-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out; }
    .checkout__submit--us:disabled {
      text-indent: -300px; }
      .checkout__submit--us:disabled:before {
        background: transparent url("../images/loader.gif") no-repeat;
        content: '';
        height: 32px;
        position: absolute;
        left: 50%;
        top: 50%;
        width: 32px;
        margin: -16px 0 0 -16px;
        margin: -16px 0 0 -16px;
        margin:  -1.6rem 0 0 -1.6rem; }

.checkout__payment--is-hidden {
  display: none; }

.checkout__payment-icon {
  vertical-align: middle; }

.checkout__phone {
  display: block;
  font-weight: 300;
  margin: 10px 0;
  margin: 10px 0;
  margin:  1rem 0; }
  .checkout__phone:before {
    color: #af9b56;
    font-size: 22px;
    margin-right: 12px; }

.checkout__opening {
  margin: 0; }

.checkout__gls {
  margin-top: 0; }

.checkout__gls-results {
  clear: both;
  margin-bottom: 20px;
  margin-bottom: 20px;
  margin-bottom: 2rem; }

.checkout__hidden {
  display: none; }
  .checkout__hidden.is-active {
    display: block; }

.discount {
  position: relative; }
  .discount__submit {
    position: absolute;
    top: 0;
    right: 0;
    padding: 14px 40px 10px;
    padding: 14px 40px 10px;
    padding:  1.4rem 4rem 1rem; }
    @media (min-width: 48.0625em) {
      .discount__submit {
        padding: 12px 40px 8px;
        padding:  1.2rem 4rem 0.8rem; } }
    .lt-ie9 .discount__submit {
      padding: 12px 40px 8px;
      padding: 12px 40px 8px;
      padding:  1.2rem 4rem 0.8rem; }

.social__item--facebook, .social__item--twitter, .social__item--gplus {
  display: inline-block;
  height: 30px;
  overflow: hidden;
  width: 120px; }

.global-message--primary, .global-message, .global-message--secondary, .global-message--tertiary, .global-message--quaternary, .global-message--quinary, .global-message--senary, .global-message--xmas, .global-message--xmas-alt {
  border-bottom: 1px solid #404040;
  max-height: 0;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  overflow: hidden;
  width: 100%;
  -webkit-transition: opacity 300ms ease, max-height 200ms ease;
  -webkit-transition-delay: 0s, 300ms;
  -o-transition: opacity 300ms ease, max-height 200ms ease 300ms;
  -webkit-transition: opacity 300ms ease, max-height 200ms ease 300ms;
          transition: opacity 300ms ease, max-height 200ms ease 300ms;
  /**
   * Rendering theme colors and selectors
   */ }
  .global-message--primary:first-child, .global-message:first-child, .global-message--secondary:first-child, .global-message--tertiary:first-child, .global-message--quaternary:first-child, .global-message--quinary:first-child, .global-message--senary:first-child, .global-message--xmas:first-child, .global-message--xmas-alt:first-child {
    border-top: none; }
  .is-active.global-message--primary, .is-active.global-message, .is-active.global-message--secondary, .is-active.global-message--tertiary, .is-active.global-message--quaternary, .is-active.global-message--quinary, .is-active.global-message--senary, .is-active.global-message--xmas, .is-active.global-message--xmas-alt {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    max-height: 150px;
    -webkit-transition: none;
    -o-transition: none;
    transition: none; }
    @media (min-width: 30.0625em) {
      .is-active.global-message--primary, .is-active.global-message, .is-active.global-message--secondary, .is-active.global-message--tertiary, .is-active.global-message--quaternary, .is-active.global-message--quinary, .is-active.global-message--senary, .is-active.global-message--xmas, .is-active.global-message--xmas-alt {
        max-height: 80px; } }
    .lt-ie9 .is-active.global-message--primary, .lt-ie9 .is-active.global-message, .lt-ie9 .is-active.global-message--secondary, .lt-ie9 .is-active.global-message--tertiary, .lt-ie9 .is-active.global-message--quaternary, .lt-ie9 .is-active.global-message--quinary, .lt-ie9 .is-active.global-message--senary, .lt-ie9 .is-active.global-message--xmas, .lt-ie9 .is-active.global-message--xmas-alt {
      max-height: 80px; }
    @media (min-width: 48.0625em) {
      .is-active.global-message--primary, .is-active.global-message, .is-active.global-message--secondary, .is-active.global-message--tertiary, .is-active.global-message--quaternary, .is-active.global-message--quinary, .is-active.global-message--senary, .is-active.global-message--xmas, .is-active.global-message--xmas-alt {
        max-height: 60px; } }
    .lt-ie9 .is-active.global-message--primary, .lt-ie9 .is-active.global-message, .lt-ie9 .is-active.global-message--secondary, .lt-ie9 .is-active.global-message--tertiary, .lt-ie9 .is-active.global-message--quaternary, .lt-ie9 .is-active.global-message--quinary, .lt-ie9 .is-active.global-message--senary, .lt-ie9 .is-active.global-message--xmas, .lt-ie9 .is-active.global-message--xmas-alt {
      max-height: 60px; }
  @media (max-width: 30em) {
    .header .global-message--primary, .header .global-message, .header .global-message--secondary, .header .global-message--tertiary, .header .global-message--quaternary, .header .global-message--quinary, .header .global-message--senary, .header .global-message--xmas, .header .global-message--xmas-alt {
      position: absolute;
      top: 60px; } }
  .global-message, .global-message--primary, .global-message--secondary, .global-message--tertiary, .global-message--quaternary, .global-message--quinary, .global-message--senary, .global-message--xmas, .global-message--xmas-alt {
    background-color: #272324;
    color: #fff; }
    .global-message .global-message__close, .global-message--primary .global-message__close, .global-message--secondary .global-message__close, .global-message--tertiary .global-message__close, .global-message--quaternary .global-message__close, .global-message--quinary .global-message__close, .global-message--senary .global-message__close, .global-message--xmas .global-message__close, .global-message--xmas-alt .global-message__close {
      background-color: #999;
      border-color: #999;
      color: #272324; }
      .global-message .global-message__close:hover, .global-message--primary .global-message__close:hover, .global-message--secondary .global-message__close:hover, .global-message--tertiary .global-message__close:hover, .global-message--quaternary .global-message__close:hover, .global-message--quinary .global-message__close:hover, .global-message--senary .global-message__close:hover, .global-message--xmas .global-message__close:hover, .global-message--xmas-alt .global-message__close:hover {
        background-color: #272324;
        color: #999; }
  .global-message--secondary {
    background-color: #af9b56;
    color: #fff; }
    .global-message--secondary .global-message__close {
      background-color: #736536;
      border-color: #736536;
      color: #af9b56; }
      .global-message--secondary .global-message__close:hover {
        background-color: #af9b56;
        color: #736536; }
  .global-message--tertiary {
    background-color: #384d64;
    color: #fff; }
    .global-message--tertiary .global-message__close {
      background-color: #7894b3;
      border-color: #7894b3;
      color: #384d64; }
      .global-message--tertiary .global-message__close:hover {
        background-color: #384d64;
        color: #7894b3; }
  .global-message--quaternary {
    background-color: #6d9343;
    color: #fff; }
    .global-message--quaternary .global-message__close {
      background-color: #a0c27a;
      border-color: #a0c27a;
      color: #6d9343; }
      .global-message--quaternary .global-message__close:hover {
        background-color: #6d9343;
        color: #a0c27a; }
  .global-message--quinary {
    background-color: #f7f7f7;
    color: #666; }
    .global-message--quinary .global-message__close {
      background-color: #272324;
      border-color: #272324;
      color: #f7f7f7; }
      .global-message--quinary .global-message__close:hover {
        background-color: #f7f7f7;
        color: #272324; }
  .global-message--senary {
    background-color: #fcdf7a;
    color: #666; }
    .global-message--senary .global-message__close {
      background-color: #cea105;
      border-color: #cea105;
      color: #fcdf7a; }
      .global-message--senary .global-message__close:hover {
        background-color: #fcdf7a;
        color: #cea105; }
  .global-message--xmas {
    background-color: #ea4e49;
    color: #fff; }
    .global-message--xmas .global-message__close {
      background-color: #c11c16;
      border-color: #c11c16;
      color: #ea4e49; }
      .global-message--xmas .global-message__close:hover {
        background-color: #ea4e49;
        color: #c11c16; }
  .global-message--xmas-alt {
    background-color: #310041;
    color: #fff; }
    .global-message--xmas-alt .global-message__close {
      background-color: #ba5bd9;
      border-color: #ba5bd9;
      color: #310041; }
      .global-message--xmas-alt .global-message__close:hover {
        background-color: #310041;
        color: #ba5bd9; }
  .global-message__content {
    padding-bottom: 10px;
    padding-top: 8px;
    position: relative; }
  .global-message__text {
    text-align: center;
    padding-right: 34px;
    padding-right: 34px;
    padding-right: 3.4rem; }
    .global-message__text p {
      display: inline; }
  .global-message__counter {
    font-weight: bold;
    padding-right: 34px;
    text-align: center; }
  .global-message__close {
    height: 24px;
    position: absolute;
    margin-top: -12px;
    top: 50%;
    width: 24px;
    right: 10px;
    right: 10px;
    right: 1rem; }
    @media (min-width: 30.0625em) {
      .global-message__close {
        right: 20px;
        right: 2rem; } }
    .lt-ie9 .global-message__close {
      right: 20px;
      right: 20px;
      right: 2rem; }
    .global-message__close:after {
      font-size: 24px;
      line-height: 22px; }

.global-message a, .global-message--primary a, .global-message--secondary a, .global-message--tertiary a, .global-message--quaternary a, .global-message--quinary a, .global-message--senary a, .global-message--xmas a, .global-message--xmas-alt a, .global-message p, .global-message--primary p, .global-message--secondary p, .global-message--tertiary p, .global-message--quaternary p, .global-message--quinary p, .global-message--senary p, .global-message--xmas p, .global-message--xmas-alt p, .global-message p strong, .global-message--primary p strong, .global-message--secondary p strong, .global-message--tertiary p strong, .global-message--quaternary p strong, .global-message--quinary p strong, .global-message--senary p strong, .global-message--xmas p strong, .global-message--xmas-alt p strong {
  color: #fff; }

.global-message--quinary a, .global-message--quinary p, .global-message--quinary p strong,
.global-message--senary a,
.global-message--senary p,
.global-message--senary p strong {
  color: #666; }

@-webkit-keyframes popup {
  0% {
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px); }
  40% {
    -webkit-transform: translateY(-80px);
    -ms-transform: translateY(-80px);
    -o-transform: translateY(-80px);
    transform: translateY(-80px); }
  60% {
    -webkit-transform: translateY(-66px);
    -ms-transform: translateY(-66px);
    -o-transform: translateY(-66px);
    transform: translateY(-66px); }
  80% {
    -webkit-transform: translateY(-73px);
    -ms-transform: translateY(-73px);
    -o-transform: translateY(-73px);
    transform: translateY(-73px); }
  100% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); } }

@-o-keyframes popup {
  0% {
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px); }
  40% {
    -webkit-transform: translateY(-80px);
    -ms-transform: translateY(-80px);
    -o-transform: translateY(-80px);
    transform: translateY(-80px); }
  60% {
    -webkit-transform: translateY(-66px);
    -ms-transform: translateY(-66px);
    -o-transform: translateY(-66px);
    transform: translateY(-66px); }
  80% {
    -webkit-transform: translateY(-73px);
    -ms-transform: translateY(-73px);
    -o-transform: translateY(-73px);
    transform: translateY(-73px); }
  100% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); } }

@keyframes popup {
  0% {
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px); }
  40% {
    -webkit-transform: translateY(-80px);
    -ms-transform: translateY(-80px);
    -o-transform: translateY(-80px);
    transform: translateY(-80px); }
  60% {
    -webkit-transform: translateY(-66px);
    -ms-transform: translateY(-66px);
    -o-transform: translateY(-66px);
    transform: translateY(-66px); }
  80% {
    -webkit-transform: translateY(-73px);
    -ms-transform: translateY(-73px);
    -o-transform: translateY(-73px);
    transform: translateY(-73px); }
  100% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); } }

@-webkit-keyframes teaser {
  0% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); }
  40% {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -o-transform: translateY(-100px);
    transform: translateY(-100px); }
  60% {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -o-transform: translateY(-100px);
    transform: translateY(-100px); }
  70% {
    -webkit-transform: translateY(-66px);
    -ms-transform: translateY(-66px);
    -o-transform: translateY(-66px);
    transform: translateY(-66px); }
  85% {
    -webkit-transform: translateY(-73px);
    -ms-transform: translateY(-73px);
    -o-transform: translateY(-73px);
    transform: translateY(-73px); }
  100% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); } }

@-o-keyframes teaser {
  0% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); }
  40% {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -o-transform: translateY(-100px);
    transform: translateY(-100px); }
  60% {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -o-transform: translateY(-100px);
    transform: translateY(-100px); }
  70% {
    -webkit-transform: translateY(-66px);
    -ms-transform: translateY(-66px);
    -o-transform: translateY(-66px);
    transform: translateY(-66px); }
  85% {
    -webkit-transform: translateY(-73px);
    -ms-transform: translateY(-73px);
    -o-transform: translateY(-73px);
    transform: translateY(-73px); }
  100% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); } }

@keyframes teaser {
  0% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); }
  40% {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -o-transform: translateY(-100px);
    transform: translateY(-100px); }
  60% {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -o-transform: translateY(-100px);
    transform: translateY(-100px); }
  70% {
    -webkit-transform: translateY(-66px);
    -ms-transform: translateY(-66px);
    -o-transform: translateY(-66px);
    transform: translateY(-66px); }
  85% {
    -webkit-transform: translateY(-73px);
    -ms-transform: translateY(-73px);
    -o-transform: translateY(-73px);
    transform: translateY(-73px); }
  100% {
    -webkit-transform: translateY(-70px);
    -ms-transform: translateY(-70px);
    -o-transform: translateY(-70px);
    transform: translateY(-70px); } }

.permission-bar {
  background-color: #1b1b19;
  display: none;
  height: 540px;
  overflow: hidden;
  position: fixed;
  bottom: -540px;
  right: 20px;
  z-index: 9;
  text-decoration: none;
  width: 390px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 16px;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 70px 20px 20px 20px;
  padding: 70px 20px 20px 20px;
  padding:  7rem 2rem 2rem 2rem;
  -webkit-transition: bottom 0.3s ease-out;
  -o-transition: bottom 0.3s ease-out;
  transition: bottom 0.3s ease-out;
  -webkit-animation: popup 1s 6s forwards, teaser 2s 30s;
  -o-animation: popup 1s 6s forwards, teaser 2s 30s;
  animation: popup 1s 6s forwards, teaser 2s 30s; }
  @media (min-width: 48.0625em) {
    .permission-bar {
      display: block; } }
  .lt-ie9 .permission-bar {
    display: block; }
  .permission-bar:hover {
    bottom: -535px;
    color: #fff; }
  .permission-bar.is-active {
    bottom: -70px; }
  .lt-ie10 .permission-bar {
    bottom: 0;
    padding-bottom: 0;
    height: 70px; }
    .lt-ie10 .permission-bar:hover {
      height: 75px; }
    .lt-ie10 .permission-bar.is-active {
      height: 584px;
      padding-bottom: 20px;
      padding-bottom: 20px;
      padding-bottom: 2rem; }
  .permission-bar__headline {
    color: #af9b56;
    cursor: pointer;
    height: 70px;
    font-weight: 300;
    margin: 0;
    position: absolute;
    left: 0;
    top: 0;
    text-align: center;
    text-decoration: none;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 34px;
    font-size: 34px;
    font-size: 3.4rem;
    padding: 12px 0 0;
    padding: 12px 0 0;
    padding:  1.2rem 0 0; }
    .permission-bar__headline:hover {
      color: #af9b56;
      text-decoration: none; }
  .permission-bar__text {
    color: #fff;
    font-family: "Open Sans", sans-serif;
    margin-top: 0;
    text-align: center;
    font-size: 16px;
    font-size: 16px;
    font-size: 1.6rem; }
    .permission-bar__text p:first-child {
      margin-top: 0; }
    .permission-bar__text a {
      color: #af9b56; }
    .permission-bar__text img {
      display: block;
      margin: auto; }
  .permission-bar__button {
    width: 100%;
    margin-top: 10px;
    margin-top: 10px;
    margin-top: 1rem; }
  .permission-bar__input {
    font-size: 14px;
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0 10px;
    margin: 0 0 10px;
    margin:  0 0 1rem;
    height: 39px;
    height: 39px;
    height: 3.9rem; }
  .permission-bar__close {
    position: absolute;
    right: 4px;
    top: -29px;
    -webkit-transition: top 0.3s 0.5s;
    -webkit-transition-delay: ease-out;
    -o-transition: top 0.3s 0.5s ease-out;
    -webkit-transition: top 0.3s 0.5s ease-out;
            transition: top 0.3s 0.5s ease-out; }
    .is-active .permission-bar__close {
      top: 4px; }

.blog-topimage {
  width: 100%;
  background-color: #000;
  height: 30vw;
  overflow: hidden;
  position: relative;
  min-height: 340px;
  max-height: 500px; }

.blog-topimage__image {
  opacity: 0.4;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
  position: absolute;
  left: 50%;
  vertical-align: top;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
       -o-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
  @media (min-width: 48.0625em) {
    .blog-topimage__image {
      -webkit-transform: translate(0, -50%);
          -ms-transform: translate(0, -50%);
           -o-transform: translate(0, -50%);
              transform: translate(0, -50%);
      top: 50%;
      left: auto;
      width: 100%;
      height: auto; } }
  .lt-ie9 .blog-topimage__image {
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
         -o-transform: translate(0, -50%);
            transform: translate(0, -50%);
    top: 50%;
    left: auto;
    width: 100%;
    height: auto; }

.blog-nav {
  margin-top: 44px;
  padding: 10px 0 2px; }
  .blog-nav__title {
    display: inline-block;
    float: left;
    padding: 5px 10px 5px 0;
    padding: 5px 10px 5px 0;
    padding:  0.5rem 1rem 0.5rem 0; }
  .blog-nav__share {
    margin-bottom: 8px;
    margin-bottom: 8px;
    margin-bottom: 0.8rem; }
    @media (min-width: 48.0625em) {
      .blog-nav__share {
        float: right; } }
    .lt-ie9 .blog-nav__share {
      float: right; }
  .blog-nav__share-tools {
    float: left;
    margin-top: 5px;
    margin-top: 5px;
    margin-top: 0.5rem; }

.blog-nav__tags {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: auto !important;
  margin-bottom: 30px;
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  overflow: hidden;
  text-align: center;
  -webkit-transition: opacity 0.5s ease-in-out;
       -o-transition: opacity 0.5s ease-in-out;
          transition: opacity 0.5s ease-in-out;
  width: 100%; }
  .blog-nav__tags.is-loading {
    height: 0 !important;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  .blog-nav__tags .rsThumb {
    display: inline-block;
    float: none; }
  .blog-nav__tags .rsThumbsContainer {
    text-align: center; }
  .blog-nav__tags .rsThumbs {
    width: 100% !important; }
  .blog-nav__tags .rsNavSelected {
    border: none; }

.blog-nav__tags--blue {
  background-color: #394d64;
  height: 56px !important;
  text-align: center;
  width: 100%;
  margin: 0; }
  .blog-nav__tags--blue .rsNavItem {
    border: none; }
  .blog-nav__tags--blue .blog-nav__tags-item {
    color: #fff;
    font-size: 16px;
    font-weight: 100;
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    margin: 0 10px;
    padding: 14px 0 18px;
    position: relative; }
    .blog-nav__tags--blue .blog-nav__tags-item.is-active {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .blog-nav__tags--blue .blog-nav__tags-item.is-active::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 3px;
      background-color: #fff; }

.blog__header {
  text-align: center; }

.blog-nav__tags-item {
  display: inline-block; }

.blog-nav__tag {
  padding: 5px 14px;
  background-color: transparent;
  display: inline-block;
  border: 1px solid #d6d6d6;
  border-radius: 3px;
  -webkit-transition: background-color 0.3s ease-in-out;
       -o-transition: background-color 0.3s ease-in-out;
          transition: background-color 0.3s ease-in-out;
  width: 100px; }
  .blog-nav__tag:hover {
    background-color: #e3e3e3; }

.blog-post__author-image {
  border-radius: 50%;
  overflow: hidden;
  width: 63px;
  height: 63px;
  margin: 10px auto; }

.blog-post__top-content {
  -webkit-font-smoothing: antialiased;
  color: #fff;
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  text-align: center;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 1; }

.blog-post__header {
  color: #fff;
  margin-top: 0;
  display: inline-block; }
  @media (min-width: 25em) {
    .blog-post__header {
      text-align: center; } }
  .lt-ie9 .blog-post__header {
    text-align: center; }
  @media (min-width: 48.0625em) {
    .blog-post__header {
      font-size: 55px; } }
  .lt-ie9 .blog-post__header {
    font-size: 55px; }

.blog-post__subheader {
  color: #000;
  margin: 0;
  font-size: 24px;
  margin: 0 auto 40px;
  line-height: 1.6;
  max-width: 700px; }

.blog-post__date {
  font-size: 16px;
  font-style: italic;
  font-family: "Times", "Times New Roman", serif;
  text-align: center; }

.blog-post {
  margin-top: 0;
  padding-top: 0;
  border: none; }
  .blog-post__details {
    font-family: "Times", "Times New Roman", serif;
    font-style: italic;
    text-align: center; }
  .blog-post__comment {
    min-height: 150px; }

.blog-post__body, .blog-comment__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  max-width: 980px;
  padding: 0 10px; }
  .blog-post__body img, .blog-comment__item img {
    display: block;
    max-width: 100%; }

@media (min-width: 25em) {
  .blog-item {
    padding: 0 20px;
    min-height: 13.5714285714em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    float: left; } }

.lt-ie9 .blog-item {
  padding: 0 20px;
  min-height: 13.5714285714em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  float: left; }

@media (min-width: 30.0625em) {
  .blog-item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    float: left; } }

.lt-ie9 .blog-item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  float: left; }

@media (min-width: 48.0625em) {
  .blog-item {
    min-height: 18.5714285714em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 33.3333333333%;
    float: left; } }

.lt-ie9 .blog-item {
  min-height: 18.5714285714em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 33.3333333333%;
  float: left; }

.blog-item:nth-of-type(3) {
  clear: left; }

.blog-item__image-container {
  line-height: 0;
  position: relative; }

.blog-item__image {
  width: 100%; }

.blog-item__content {
  padding: 20px; }
  @media (min-width: 25em) {
    .blog-item__content {
      min-height: 130px; } }
  .lt-ie9 .blog-item__content {
    min-height: 130px; }

.blog-item__date {
  color: #000;
  float: right;
  font-family: "Times", "Times New Roman", serif;
  font-size: 14px;
  font-style: italic;
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }

.blog-item__tags {
  color: #B69D4B;
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  font-weight: 600; }

.blog-item--large {
  width: 100%; }
  @media (min-width: 30.0625em) {
    .blog-item--large {
      float: left;
      width: 50%; } }
  .lt-ie9 .blog-item--large {
    float: left;
    width: 50%; }
  @media (min-width: 25em) {
    .blog-item--large .blog-item__content {
      min-height: 180px; } }
  .lt-ie9 .blog-item--large .blog-item__content {
    min-height: 180px; }
  @media (min-width: 30.0625em) {
    .blog-item--large .blog-item__header {
      font-size: 24px; } }
  .lt-ie9 .blog-item--large .blog-item__header {
    font-size: 24px; }

.blog-comment {
  margin: 0 auto; }
  @media (min-width: 48.0625em) {
    .blog-comment {
      width: 80%; } }
  .lt-ie9 .blog-comment {
    width: 80%; }
  @media (min-width: 73.5em) {
    .blog-comment {
      width: 75%; } }
  .blog-comment__item {
    background-color: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 1px;
    margin-bottom: 1px;
    margin-bottom: 0.1rem; }
  .blog-comment__text-container {
    float: left; }
  .blog-comment__header {
    font-family: "Times", "Times New Roman", serif;
    font-style: italic;
    margin-top: 0; }
  .blog-comment__image {
    float: left;
    height: 50px;
    width: 50px;
    margin-right: 20px;
    margin-right: 20px;
    margin-right: 2rem; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImllLmNzcyIsImNvcmUvX2ZvbnRzLnNjc3MiLCJjb3JlL190ZW1wbGF0ZXMuc2NzcyIsInBhcnRpYWxzL19nbG9iYWwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9jb21wYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL19zaGFyZWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9jb21wYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL19ib3gtc2l6aW5nLnNjc3MiLCJjb3JlL19zZXR0aW5ncy5zY3NzIiwicGFydGlhbHMvX21lc3NhZ2Uuc2NzcyIsImNvcmUvX2hlbHBlcnMuc2NzcyIsImNvcmUvYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9fYnJlYWtwb2ludC5zY3NzIiwicGFydGlhbHMvX2Jsb2cuc2NzcyIsInBhcnRpYWxzL19jaGVja291dC5zY3NzIiwiY29yZS9iYXNlL19idXR0b25zLnNjc3MiLCJjb3JlL2Jhc2UvX2ljb25zLnNjc3MiLCJjb3JlL2Jhc2UvX2Zvcm1zLnNjc3MiLCJjb3JlL2Jhc2UvX21haW4uc2NzcyIsImNvcmUvYmFzZS9fc3BsYXQuc2NzcyIsImNvcmUvYmFzZS9fbGlzdHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9jb21wYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL191c2VyLWludGVyZmFjZS5zY3NzIiwiPG5vIHNvdXJjZT4iLCIuLi9ub2RlX21vZHVsZXMvY29tcGFzcy1taXhpbnMvbGliL2NvbXBhc3MvY3NzMy9fYXBwZWFyYW5jZS5zY3NzIiwiY29yZS9iYXNlL19xdW90ZXMuc2NzcyIsImNvcmUvYmFzZS9fdGFibGVzLnNjc3MiLCJjb3JlL2Jhc2UvX25hdmlnYXRpb24uc2NzcyIsImNvcmUvX2xheW91dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zdXBwb3J0L19yZW0uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19jb250YWluZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fY2xlYXJmaXguc2NzcyIsImxpYi9fcm95YWwtc2xpZGVyLnNjc3MiLCJsaWIvX3JveWFsLXNsaWRlci11bmktdGhlbWUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9jb21wYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL190cmFuc2l0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fc3Bhbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zaGFyZWQvX2RpcmVjdGlvbi5zY3NzIiwicGFydGlhbHMvX25hdmlnYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9jb21wYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL190cmFuc2Zvcm0uc2NzcyIsInBhcnRpYWxzL19pbWFnZS1ibG9jay5zY3NzIiwicGFydGlhbHMvX3NvY2lhbC5zY3NzIiwicGFydGlhbHMvX3Blcm1pc3Npb24tYmFyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDR2pCO0VBQ0kscUJBQXFCO0VBQ3JCLCtCQUFRO0VBQ1IsME1BRzJDLEVBQUE7O0FBRy9DO0VBQ0kseUJBQXlCO0VBQ3pCLDhIQUN1RDtFQUN2RCxpQkFBaUI7RUFDakIsbUJBQW1CLEVBQUE7O0FBR3ZCO0VBQ0kseUJBQXlCO0VBQ3pCLGtJQUN5RDtFQUN6RCxpQkFBaUI7RUFDakIsbUJBQW1CLEVBQUE7O0FBR3ZCO0VBQ0kseUJBQXlCO0VBQ3pCLG9JQUMwRDtFQUMxRCxpQkFBaUI7RUFDakIsbUJBQW1CLEVBQUE7O0FDN0J2QjtFQUNFLHNCQUFzQjtFQUN0QixVQUFVO0VBQ1YsV0FBVyxFQUNaOztBQ2lGRDtHRHJDRSxRQUFTLEVBR3NCO0VDa0NqQztJRDlDSSxhQUFhO0lBQ2IsZUFBZSxFQUNoQjtFQVVIO0lBUEksWUFBWSxFQUNiOztBRlpIOzs7OztFSXZCeUQsK0JDTjNDO0VEV21ELHVCQ1huRCxFSGlEbUM7O0FBRWpEO0VFeENpRSxvQkZ3Q3JCLEVBQUs7O0FBRWpEO0VFMUNpRSxpQkYwQzFCLEVBQUs7O0FBRTVDO0VBR2dCLDBCSWhDZ0IsRUpnQzJCOztBQUgzRDtFQUtlLDBCSWhDaUIsRUpnQ3lCOztBQ3FCekQ7RURwQmMsMEJJaENrQixFSmdDdUI7O0FLbkR2RDtFTDBERSwwQkk0RnFDO0VKM0ZyQyx1Qkk0RjhCO0VKM0Y5QixZSXZDVztFSndDWCxnQkFBZ0I7RUFDaEIsYUl1RnNCO0VKdEZ0QixpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsWUlrRnNCO0VGekppQywrQkNOM0M7RURXbUQsdUJDWG5ELEVINkZiO0VBMUJEO0lBYVksWUlqREMsRUppRDZCO0VBYjFDO0lBZ0JJLGVBQWU7SUFDZixzQkFBc0I7SUFDdEIsZ0JJMEVvQjtJSnpFcEIsa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZixtQkFBbUI7SUFDakIsUUFBUTtJQUNSLE9BQU87SUFDVCxZQUNELEVBQUM7O0FNNURBO0VBakNBLFlGeUMwQjtFRXpDMUIsaUJDSWtCO0VESmxCLHFDRmEwQjtFRWIxQixnQkNNaUI7RUROakIsbUJDT29CO0VEUHBCLGlCQ1FrQixFRDJCakI7RUVzQkQ7SUNpTko7TUgxUUksZ0JDV2lCLEVEd0JoQixFQUFBO0VFcURHO0lGeEZKLGdCQ1dpQixFQytFWjs7QUZ6REw7Ozs7OztFQWpDQSxnQkNnQmlCO0VEaEJqQixpQkNpQmtCLEVEa0JqQjtFRXNCRDtJRGlHSjs7Ozs7O01EMUpJLGdCQ29CaUIsRURlaEIsRUFBQTtFRXFERzs7Ozs7O0lGeEZKLGdCQ29CaUIsRUNzRVo7O0FEOERUOztFRHhKSSxpQkN5QmtCO0VEekJsQixnQkMwQmlCLEVEU2hCO0VFc0JEO0lEK0ZKOztNRHhKSSxnQkM2QmlCLEVETWhCLEVBQUE7RUVxREc7O0lGeEZKLGdCQzZCaUIsRUM2RFo7O0FFaEdUO0VKTUksaUJDa0NrQjtFRGxDbEIsZ0JDbUNpQixFREFoQjtFRXNCRDtJRS9ESjtNSk1JLGdCQ3NDaUIsRURIaEIsRUFBQTtFRXFERztJRnhGSixnQkNzQ2lCLEVDb0RaOztBRnpETDs7Ozs7Ozs7RUFqQ0EsZUZ5QjRCO0VFekI1QixpQkM2RGtCO0VEN0RsQixxQkM4RHNCLEVEM0JyQjs7QUFGRDs7RUFqQ0EsaUJDb0VrQjtFRHBFbEIsZ0JDcUVpQixFRGxDaEI7RUVzQkQ7SUZ4QkE7O01BakNBLGdCQ3dFaUIsRURyQ2hCLEVBQUE7RUFGRDs7SUFqQ0EsZ0JDd0VpQixFQ2tCWjs7QUZ6REw7O0VBakNBLGlCQzhFa0I7RUQ5RWxCLGdCQytFaUIsRUQ1Q2hCO0VFc0JEO0lGeEJBOztNQWpDQSxnQkNrRmlCLEVEL0NoQixFQUFBO0VBRkQ7O0lBakNBLGdCQ2tGaUIsRUNRWjs7QUQ4RFQ7O0VEeEpJLCtDRmM0QztFRWQ1QyxtQkN5Rm9CLEVEdERuQjs7QUFGRDs7O0VBakNBLGVGeUI0QjtFRXpCNUIsaUJDZ0drQjtFRGhHbEIsa0JDaUdtQjtFRGpHbkIscUJDa0dzQixFRC9EckI7O0FBRkQ7Ozs7O0VBakNBLGtCQzJHbUIsRUR4RWxCOztBQUZEO0VBakNBLCtDRmM0QztFRWQ1QyxtQkNrSG9CLEVEL0VuQjs7QUtnQ0w7OztFTG5FSSxnQkN1SGlCLEVEcEZoQjtFRXNCRDtJRnhCQTs7O01BakNBLGdCQzBIaUIsRUR2RmhCLEVBQUE7RUVxREc7OztJRnhGSixnQkMwSGlCLEVDaENaOztBRDBIVDs7RUFuRUUsaUJBQWlCLEVBQ2xCOztBQVdEO0VBQ0UsbUJBQW1CLEVBSXBCO0VDekdHO0lEb0dKO01BRzhDLG1CQUFtQixFQUVoRSxFQUFBO0VDMUVPO0lEd0VzQyxtQkFBbUIsRUN0RXhEO0VBakNMO0lEb0dKO01BSStDLG1CQUFtQixFQUNqRSxFQUFBOztBQUdEO0VEekVFLG9CQzBFaUM7RUR0RS9CLG9CQUF3QjtFQUF4QixvQkFBd0IsRUN5RTNCO0VBSkQ7SUFH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LGtCQUF3QixFTXFHekI7O0FBVkQ7RUE3RUEsYUFBUztFTmxCVCxnQkZ5TG1EO0VFckxqRCxnQkFBd0I7RUFBeEIsa0JBQXdCLEVNcUd6Qjs7QUFJRDtFQTNGQSxhQUFTO0VObEJULGdCRjBMbUQ7RUV0TGpELGdCQUF3QjtFQUF4QixnQkFBd0IsRU1xR3pCOztBQVZEO0VBN0VBLGFBQVM7RU5sQlQsZ0JGMkxtRDtFRXZMakQsZ0JBQXdCO0VBQXhCLGdCQUF3QixFTXFHekI7O0FBVkQ7RUFDZSxlUmdHcUQ7RVE5S3BFLGFBQVM7RU5sQlQsZ0JGZ01tRDtFRTVMakQsZ0JBQXdCO0VBQXhCLGdCQUF3QixFTXFHekI7O0FBVkQ7RUFDZSxlUmlHcUQ7RVEvS3BFLGFBQVM7RU5sQlQsZ0JGaU1tRDtFRTdMakQsZ0JBQXdCO0VBQXhCLGdCQUF3QixFTXFHekI7O0FBVkQ7RUE3RUEsYUFBUztFTmxCVCxnQkZzTW1EO0VFbE1qRCxnQkFBd0I7RUFBeEIsa0JBQXdCLEVNcUd6Qjs7QUFJRDtFQTNGQSxhQUFTO0VObEJULGdCRnVNbUQ7RUVuTWpELGdCQUF3QjtFQUF4QixrQkFBd0IsRU1xR3pCOztBQVZEO0VBN0VBLGFBQVM7RU5sQlQsZ0JGd01tRDtFRXBNakQsZ0JBQXdCO0VBQXhCLGtCQUF3QixFTXFHekI7O0FBVkQ7RUE3RUEsYUFBUztFTmxCVCxnQkZ5TW1EO0VFck1qRCxnQkFBd0I7RUFBeEIsa0JBQXdCLEVNcUd6Qjs7QUFJRDtFQTNGQSxhQUFTO0VObEJULGdCRjBNbUQ7RUV0TWpELGdCQUF3QjtFQUF4QixrQkFBd0IsRU1xR3pCOztBQVZEO0VBN0VBLGFBQVM7RU5sQlQsZ0JGMk1tRDtFRXZNakQsZ0JBQXdCO0VBQXhCLGtCQUF3QixFTXFHekI7O0FBSUQ7RUEzRkEsYUFBUztFTmxCVCxnQkY0TW1EO0VFeE1qRCxnQkFBd0I7RUFBeEIsa0JBQXdCLEVNcUd6Qjs7QUFWRDtFQTdFQSxhQUFTO0VObEJULGdCRjZNbUQ7RUV6TWpELGdCQUF3QjtFQUF4QixrQkFBd0IsRU1xR3pCOztBQVZEO0VBN0VBLGFB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RWV4M0JFLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsaUJBQWlCO0VQOERqQixjTzdEMkI7RVBnRnpCLGNPaEZ5QjtFUGdGekIsa0JPaEZ5QjtFUDZEM0Isb0JPNURpQztFUCtFL0Isb0JBTDJDO0VBSzNDLHFCQUwyQyxFT3pFOUM7O0FBRUQ7RUFDRSxlQUFlO0VBQ2YscUJUMEVrQztFU3pFbEMsbUJBQW1CO0VQc0RuQixvQk9yRGlDO0VQd0UvQixvQkFMMkM7RUFLM0MscUJBTDJDLEVPaEU5QztFTGVHO0lLdEJKO01BTTZDLHFCVHNFVCxFU3JFbkMsRUFBQTtFQVBEO0lBTTZDLHFCVHNFVCxFSXJCM0I7O0FWKzBCVDs7Ozs7RWUxM0JFLHVCVGZXLEVTbUJaO0VmNDNCQzs7Ozs7Ozs7O0llNzNCVSwwQlRyQm9CLEVTcUI4Qjs7QUFHOUQ7RVB1Q0UsaUJPdkNvQztFUDJDbEMsaUJBQXdCO0VBQXhCLGlCQUF3QixFTzNDZ0I7O0FmeTRCNUM7Ozs7O0VlNzNCSSxTQUFVO0VBQ1YsVUFBVSxFQUNYOztBZm00Qkg7RUkvN0J5RCwrQkNOM0M7RURXbUQsdUJDWG5ELEVVcUVxQzs7QUFFbkQ7RUFFRSxhQUFhLEVBQ2Q7O0FBR0Q7RUFHRSxxRkFBZ0g7RUFDaEgsYVQ2QmtDO0VTNUJsQyxrQkFBa0I7RUFDbEIsb0JUNkJ1QztFRjFHZ0IseUJpQkgzQztFakJLOEMsc0JpQkw5QztFakJRbUQsaUJpQlJuRCxFTmlIYjtFUDNERztJT29CSjtNQVVJLDZEQUFxQjtNQUNyQix5RUFBa0U7Y0FBbEUsaUVBQWtFLEVBNEJyRSxFQUFBO0VMNURHO0lLcUJKO01BZUksYVRrQmdDO01TakJoQyxvQlRtQnFDLEVTSXhDLEVBQUE7RUw3Qk87SUtLSixhVGtCZ0M7SVNqQmhDLG9CVG1CcUMsRUl2QmhDO0VLWlQ7SUFtQmtCLGNBQWMsRUFBSTs7QUFHaEM7RUF0Qko7SUF3QlEsa0JBQWtCO0lBSWxCLG9CQUFvQjtJQUNwQixrQkFBa0I7SVhwRytCLHlCaUJIM0M7SWpCSzhDLHNCaUJMOUM7SWpCUW1ELGlCaUJSbkQsRU55R1AsRUFB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SWV6d0JFLGFUNVBtQjtJUzZQbkIsb0JUelc0QjtJUzBXNUIsYUFBYTtJQUNiLG9CVC9QbUI7SVNnUW5CLGFUblFlLEVTcVFoQjtJTGxWQztNVjRsQ0U7UWUzd0I4QyxZQUFZLEVBQzdELEVBQUE7RWY0d0JEO0llMXdCRSxhQUFhO0lBQ2IsYVR2UW1CO0lTd1FuQixZVHhRbUI7SVN5UW5CLG1CQUFtQjtJQUNuQixvQlR0WDRCLEVTdVg3QjtFZjJ3QkQ7SWV2d0JFLHlCQUF5QjtJQUN6QixxQkFBcUIsRUFDdEI7RWZ3d0JEO0lldHdCRSxhVGpSbUI7SVNrUm5CLG9CVDlYNEI7SVMrWDVCLGFBQWE7SUFDYixvQlRwUm1CO0lTcVJuQiw2QkFBNkI7SUFDN0IsbUJBQW1CO0lBQ25CLGFUMVJlLEVTNFJoQjtJTHpXQztNVmduQ0U7UWV4d0I4QyxZQUFZLEVBQzdELEVBQUE7RWZ5d0JEO0lldndCRSxjQUFjO0lBQ2Qsb0JUeFk0QjtJU3lZNUIsNkJUN1JtQixFUzhScEI7RWZ3d0JEO0lldHdCRSxhQUFhO0lBQ2IsYVRuU21CO0lTb1NuQixZVHBTbUI7SVNxU25CLG1CQUFtQjtJQUNuQixvQlRsWjRCLEVTbVo3QjtFZnV3QkQ7SWVyd0JFLG9CVHJTNEIsRVNzUzdCO0Vmc3dCRDtJZXB3QkUsb0JUeFM0QixFU3lTN0I7O0FPM2JIO0VBRUUsK0JoQnVEK0I7RWdCdEQvQixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RWQ4Rlgsb0JjNUZpQztFZCtHL0Isb0JBTDJDO0VBSzNDLHFCQUwyQyxFYy9GOUM7RUFsQkQ7SUFVYSxhQUFTLEVBQU07RUFWNUI7SUFZWSxhQUFTLEVBQU07RUFFekI7SWRQRSxZRnlDMEI7SUV6QzFCLGlCQ0lrQjtJREpsQixxQ0ZhMEI7SUViMUIsZ0JDTWlCO0lETmpCLG1CQ09vQjtJRFBwQixpQkNRa0I7SWFDbEIsZUFBZSxFQUNoQjtJWitDQztNWWhFSjtRZE9JLGdCQ1dpQixFYURsQixFQUFBO0laOEVLO01GeEZKLGdCQ1dpQixFQytFWjs7QWFqR1Q7RUFBUSxZQUFZLEVBQUk7O0FB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OztpQkFJaUI7QUFDakI7RUFDQyxtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLFlBQVk7RUFDWixVQUFVO0VBQ1YsaUJBQWlCO0VBRWpCLGlCQUFpQjtFQUVqQixZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsbUJBQW1CLEVBQ25COztBM0I1Y0Q7RTRCc0xrRCwyQzVCOUtMO0U0QmdMRCxnQzVCaExPO0U0QmtMSSw0QzVCbExKO0U0Qm1MTyxpRDVCbkxQO1U0Qm1MTyx5QzVCbkxQO0VBR2pELGtCR3FFa0MsRUgzQ25DO0VBckNEO0lBYUksbUJBQWtDO0k0QnlLWSx5QjVCeEt0QjtJNEI0SzJCLG9CNUI1SzNCO0k0QjZLOEIsaUI1QjdLOUIsRUFDekI7RU9nREM7SVAvREo7TUFpQkksbUJBQWtDLEVBb0JyQztNQW5CRztRQUVFLG1CQUFrQyxFQUNuQyxFQUFBO0VPeUVHO0lQN0VKLG1CQUFrQyxFTytFN0I7SVBoR1Q7TUFvQk0sbUJBQWtDLEVBQ25DO0VPMENEO0lQL0RKO01Bd0JJLG1CQUFtQyxFQWF0QztNQXJDRDtRQTJCTSxtQkFBbUMsRUFDcEMsRUFBQTtFQTVCTDtJQXdCSSxtQkFBbUMsRU93RTlCO0lQdkVMO01BRUUsbUJBQW1DLEVBQ3BDO0VPbUNEO0lQL0RKO01BK0JJLG1CQUFtQyxFQU10QztNQUxHO1FBRUUsbUJBQW1DLEVBQ3BDLEVBQUE7O0FPNEJEO0VQeEJKO0lDMUJ5RCwrQkNOM0M7SURXbUQsdUJDWG5EO0lxQldWLFdNd0lvQjtJTnhJcEIsWU9BNEQsRTlCOEI3RCxFQUFBOztBQVRIO0VDMUJ5RCwrQkNOM0M7RURXbUQsdUJDWG5EO0VxQldWLFdNd0lvQjtFTnhJcEIsWU9BNEQsRXZCOEV2RDs7QUFqQ0w7RVB4Qko7SUMxQnlELCtCQ04zQztJRFdtRCx1QkNYbkQ7SXFCV1Ysc0JNd0lvQjtJTnhJcEIsWU9BNEQsRTlCOEI3RCxFQUFBOztBT2VDO0VQeEJKO0lDMUJ5RCwrQkNOM0M7SURXbUQsdUJDWG5EO0lxQldWLHNCTXdJb0I7SU54SXBCLFlPQTRELEU5QnFDN0QsRUFBQTs7QU9RQztFUExKO0lDN0N5RCwrQkNOM0M7SURXbUQsdUJDWG5EO0lxQldWLFdNd0lvQjtJTnhJcEIsWU9BNEQ7STlCMkM1RCw0QnNCbkNnQixFdEJ1RG5CLEVBQUE7O0FPYU87RU5qRmlELCtCQ04zQztFRFdtRCx1QkNYbkQ7RXFCV1YsV013SW9CO0VOeElwQixZT0E0RDtFOUIyQzVELDRCc0JuQ2dCLEVmc0VYOztBQWpDTDtFUExKO0lDN0N5RCwrQkNOM0M7SURXbUQsdUJDWG5EO0lxQldWLHNCTXdJb0I7SU54SXBCLFlPQTRELEU5QitEL0QsRUFBQTs7QU9sQkc7RVBMSjtJQzdDeUQsK0JDTjNDO0lEV21ELHVCQ1huRDtJcUJXVixzQk13SW9CO0lOeElwQixhT0F1RSxFOUJ1RHhFLEVBQUE7O0FBZkg7RUM3Q3lELCtCQ04zQztFRFdtRCx1QkNYbkQ7RXFCV1Ysc0JNd0lvQjtFTnhJcEIsYU9BdUUsRXZCOEVsRTs7QVBwQlA7RUFDRSxVQUFVLEVBR1g7RU9qQkM7SVBhRjtNQUc4QyxpQkFBaUIsRUFDOUQsRUFBQTtFT2NLO0lQZndDLGlCQUFpQixFT2lCeEQ7O0FQYlQ7RUFDRSxrQkFBa0IsRUFFbkI7RU92Qkc7SVB4Qko7TUE4QzhDLGtCQUFrQixFQUMvRCxFQUFBO0VBSEQ7SUFFOEMsa0JBQWtCLEVPV3ZEOztBUFJUO0VBRUUsYUFBYSxFQTJFZDtFT3RHRztJUHlCSjtNQUk4QyxhQUFhLEVBeUUxRCxFQUFBO0VPdkVPO0lQRnNDLGFBQWEsRU9JbEQ7RVBETDtJQUNFLHFDQUNnQztJQURoQyxrQ0FFNkI7SUFFN0IsWUFBWTtJQUNaLGNBQWMsRUFHZjtJT3pDRDtNUGdDQTtRQVE4QyxnQkFBZ0IsRUFDN0QsRUFBQTtJT1ZHO01QUzBDLGdCQUFnQixFT1B6RDtFQWpDTDtJUHlCSjtNQW9CZ0QsZUFBZSxFQUM1RCxFQUFBO0VBckJIO0lBb0JnRCxlQUFlLEVPWnREO0VQUlQ7SUEwQkksc0JBQW9CLEVBQ3JCO0VBM0JIO0lBZ0NJLHNCQUFvQixFQUNyQjtFQWpDSDtJQXNDSSxhQUFhLEVBR2Q7SU9sRUM7TVB5Qko7UUF3Q2dELGNBQWMsRUFDM0QsRUFBQTtJQXpDSDtNQXdDZ0QsY0FBYyxFT2hDckQ7RUFqQ0w7SVB5Qko7TUE4Q2lELG1CQUFtQixFQU8vRCxFQUFBO0VBckRMO0lBOENpRCxtQkFBbUIsRU90QzNEO0VBakNMO0lQeUJKO01BZ0RRLGVBQWU7TUFDZixzQjZCaUJnQixFN0JibkIsRUFBQTtFTy9DRztJUDBDQSxlQUFlO0lBQ2Ysc0I2QmlCZ0IsRXRCMURmO0VBakNMO0lQeUJKO01BbURtRCxzQjZCZTNCLEU3QmJuQixFQUFBO0VBRUQ7SUFBSyxjQUFjLEVBQUk7RUFNckI7OztJQUVLLGNBQWMsRUFBSTtFQS9EN0I7SUFtRUksYUFBYSxFQUtkO0lPakdDO01QeUJKO1FBcUVnRCxnQkFBZ0IsRUFHN0QsRUFBQTtJT2xFSztNUCtEd0MsZ0JBQWdCLEVPN0R2RDtJUFJUO01BdUVjLG1CS3pFTyxFTHlFNkI7O0FPaEc5QztFUHdHSjtJQUtnRCxtQkFBbUIsRUFDaEUsRUFBQTs7QU8vRUs7RVA4RXdDLG1CQUFtQixFTzVFMUQ7O0FQZ0ZUO0VBQ0UsYUFBYTtFQUNiLDhCRzFIK0I7RUgySC9CLFVBQVUsRUFDWDs7QU9ySEc7RVB1SEo7SUN6S3lELG1CRDJLbkM7SUN4S3VDLGVEd0t2QztJQ3ZLd0MsY0R1S3hDO0lDdEsyQyxXRHNLM0M7SUMzS21DLHlCRThXdEM7SUYzVzBDLHFCRTJXMUM7SUYxVzJDLG9CRTBXM0M7SUZ6VzhDLGlCRXlXOUMsRUg5TGxCO0lBUEQ7TUFLb0IsY0FBYyxFQUFJLEVBQUE7O0FBTHRDO0VDekt5RCxtQkQyS25DO0VDeEt1QyxlRHdLdkM7RUN2S3dDLGNEdUt4QztFQ3RLMkMsV0RzSzNDO0VDM0ttQyx5QkU4V3RDO0VGM1cwQyxxQkUyVzFDO0VGMVcyQyxvQkUwVzNDO0VGelc4QyxpQkV5VzlDLEVJM1JWO0VBRkQ7SVA2RlksY0FBYyxFQUFJOztBQUl0QztFQUNFLG1CQUFtQixFQUNwQjs7QU9sSUc7RVBvSUo7SUN0THlELCtCQ04zQztJRFdtRCx1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O0FFcGxCUDtFQUdFLG1CQUFtQjtFQUNuQixpQkFBaUIsRUFxR2xCO0VBekdEO0lBV00sbUJBQW1CO0lWS3JCLGdCbEJvRWlCO0lrQnBFakIsa0JDcURvQztJRHJEcEMsbUJDcURtRTtJbkIyQnJFLGdCaUJsRnNDO0lqQnFHcEMsZ0JBTDJDO0lBSzNDLGlCQUwyQyxFNEJqRzFDO0lBSEQ7TVJERSxhQUFhO01BQ2IsZUFBZTtNQUNmLFlBQVksRUFDYjtJbEJpREQ7TTBCbkRBO1E1QnNGRixnQkYwUmlCO1FFdlFmLGlCQUwyQyxFNEJqRzFDLEVBQUE7STFCK0VHO01GSU4sZ0JGMFJpQjtNRXZRZixnQkFMMkM7TUFLM0MsaUJBTDJDLEVFaEJ0QztFQWpDTDtJMEI3REo7TVZnQkksZ0JsQm9FaUI7TWtCcEVqQixrQkNxRG9DO01EckRwQyxtQkNxRG1FO01uQjJCckUsZ0JpQmxGc0M7TWpCcUdwQyxpQkFMMkMsRTRCL0Y1QztNQWZIO1FSU00sYUFBYTtRQUNiLGVBQWU7UUFDZixZQUFZLEVBQ2IsRUFBQTtFbEJpREQ7STBCN0RKO001QmdHRSxnQkYwUmlCO01FdlFmLGlCQUwyQyxFNEIvRjVDLEVBQUE7RTFCOENDO00wQjdESjtRNUJnR0UsZ0JGMFJpQjtRRXZRZixpQkFMMkMsRUVoQnRDLEVBQUE7RTBCOUZUO0lBbUJJLGtCQUFrQixFQXVCbkI7STFCbUJDO00wQjdESjtRaENXeUQsK0JDTjNDO1FEV21ELHVCQ1huRDtRcUJXVixXTXdJb0I7UU54SXBCLFlPQTRELEVHMEI3RCxFQUFBO0kxQmtESztNTmpGaUQsK0JDTjNDO01EV21ELHVCQ1huRDtNcUJXVixXTXdJb0I7TU54SXBCLFlPQTRELEV2QjhFdkQ7SUFqQ0w7TTBCN0RKO1FBeUJNLGdCQUFnQjtRQUNoQixzQko4SGtCLEVJOUdyQixFQUFBO0kxQm1CQztNMEJoQ0E7UUFDMEQsYUFBYSxFQUt0RSxFQUFBO0lBbkNMO01BOEI4RCxhQUFhLEUxQmdFbEU7SUFqQ0w7TTBCaENBO1FBR0ksc0I1Qm9EYTtRNEJuRGIsaUJBQWlCLEVBRXBCLEVBQUE7SUFu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LEVJTDVDLEVBQUE7SUZiSztNRklOLHVCSVFrRjtNSldoRix1QkFMMkM7TUFLM0MsNkJBTDJDLEVFaEJ0Qzs7QTJCakdUO0VBS00sc0JBQXNCO0VBQ3RCLGFBQWE7RUFDYixpQkFBaUI7RUFDakIsYUFBYSxFQUNkOztBOUJTTDtFQUVFLGlDRHlEcUM7RUN4RHJDLGNBQWM7RUFDZCxXQUFXO0VhdEJiLGlFQUFBO0VidUJFLGlCQUFpQjtFQUNqQixZQUFZO0V3QitKb0MsOER4QjdKYztFd0IrSnBCLG9DeEIvSjBCO0V3QmlLZiwrRHhCaktlO0V3QmtLWixvRXhCbEtZO1V3QmtLWiw0RHhCbEtZO0VBb0JwRTs7S0FFRyxFQWtESjtFQWhGRDtJQVVrQixpQkFBaUIsRUFBSTtFQVZ2QztJQWFJLFdBQVc7SWEvQmYsbUVBQUE7SWJnQ0ksa0JBQWtCO0l3QnVKNEIseUJ4QnJKdEI7SXdCeUoyQixvQnhCekozQjtJd0IwSjhCLGlCeEIxSjlCLEVBR3pCO0lHMkJDO01IOUNKO1FBaUIrQyxpQkFBaUIsRUFFN0QsRUFBQTtJQW5CSDtNQWlCK0MsaUJBQWlCLEVHOER2RDtJQWpDTDtNSDlDSjtRQWtCZ0QsaUJBQWlCLEVBQzlELEVBQUE7SUFuQkg7TUFrQmdELGlCQUFpQixFRzZEeEQ7RUFqQ0w7SUg5Q0o7TUF1Qk0sbUJBQW1CO01BQ2pCLFVEdUM0QixFQ3JDakMsRUFBQTtFQTFCSDtJQWZFLDBCRDZCOEI7SUM1QjlCLFlEbUNXLEVDa0JSO0lBbkRIO01BQ0UsdUJENkMwQjtNQzVDMUIsbUJENEMwQjtNQzNDMUIsZUR1QjRCLEVDakI3QjtNQUdIO1FBTk0sMEJEb0IwQjtRQ25CMUIsWUR1Q3dCLEVDdEN6QjtFQUlMO0lBZkUsMEJEOEI4QjtJQzdCOUIsWURtQ1csRUNrQlI7SUFuREg7TUFDRSwwQkRtTHFCO01DbExyQixzQkRrTHFCO01DakxyQixlRHdCNEIsRUNsQjdCO01BVEQ7UUFNSSwwQkRxQjBCO1FDcEIxQixlRDZLbUIsRUM1S3BCO0VBSUw7SUFmRSwwQkQrQjhCO0lDOUI5QixZRG1DVyxFQ2tCUjtJQW5ESDtNQUNFLDBCRHdMc0I7TUN2THRCLHNCRHVMc0I7TUN0THRCLGVEeUI0QixFQ25CN0I7TUFHSDtRQU5NLDBCRHNCMEI7UUNyQjFCLGVEa0xvQixFQ2pMckI7RUFJTDtJQWZFLDBCRGdDOEI7SUMvQjlCLFlEbUNXLEVDa0JSO0lBbkRIO01BQ0UsMEJENkxzQjtNQzVMdEIsc0JENExzQjtNQzNMdEIsZUQwQjRCLEVDcEI3QjtNQVREO1FBTUksMEJEdUIwQjtRQ3RCMUIsZUR1TG9CLEVDdExyQjtFQUlMO0lBZkUsMEJEaUM4QjtJQ2hDOUIsWUQ0QzRCLEVDU3pCO0lBdkNMO01BWEksMEJEeUI0QjtNQ3hCNUIsc0JEd0I0QjtNQ3ZCNUIsZUQyQjRCLEVDckI3QjtNQUdIO1FBTk0sMEJEd0IwQjtRQ3ZCMUIsZURtQjBCLEVDbEIzQjtFQUlMO0lBZkUsMEJEa0M4QjtJQ2pDOUIsWUQ0QzRCLEVDU3pCO0lBbkRIO01BQ0UsMEJEdU1xQjtNQ3RNckIsc0JEc01xQjtNQ3JNckIsZUQ0QjRCLEVDdEI3QjtNQVREO1FBTUksMEJEeUIwQjtRQ3hCMUIsZURpTW1CLEVDaE1wQjtFQUlMO0lBZkUsMEJEK000QjtJQzlNNUIsWURtQ1csRUNrQlI7SUF2Q0w7TUFYSSwwQkQ0TXFCO01DM01yQixzQkQyTXFCO01DMU1yQixlRHlNMEIsRUNuTTNCO01BR0g7UUFOTSwwQkRzTXdCO1FDck14QixlRHNNbUIsRUNyTXBCO0VBSUw7SUFmRSwwQkRvTjRCO0lDbk41QixZRG1DVyxFQ2tCUjtJQW5ESDtNQUNFLDBCRGlOc0I7TUNoTnRCLHNCRGdOc0I7TUMvTXRCLGVEOE0wQixFQ3hNM0I7TUFURDtRQU1JLDBCRDJNd0I7UUMxTXhCLGVEMk1vQixFQzFNckI7RUFJTDtJQTRDSSxxQkFDZTtJQURmLGlCQUVXO0lBRVgsbUJBQW1CLEVBQ3BCO0VBakRIO0lBb0RJLG1CQUFtQjtJQzZCckIsb0JENUJtRDtJQ2dDakQsb0JBQXdCO0lBQXhCLHNCQUF3QixFRDdCekI7SUFEQztNQUFJLGdCQUFnQixFQUFJO0VBdkQ1QjtJQTJESSxrQkFBa0I7SUFDbEIsb0JBQW1DO0lBQ25DLG1CQUFtQixFQUNwQjtFQTlESDtJQWtFSSxhRDJGc0I7SUMxRnRCLG1CQUFtQjtJQUNqQixrQkFBa0M7SUFDbEMsU0FBUztJQUNYLFlEdUZzQjtJRTVFeEIsWURWb0M7SUNjbEMsWUFBd0I7SUFBeEIsWUFBd0IsRUROekI7SUdqQ0M7TUg5Q0o7UUNpRkUsWUYwUmlCO1FFdFJmLFlBQXdCLEVETnpCLEVBQUE7SUEvRUg7TUNpRkUsWUYwUmlCO01FdFJmLFlBQXdCO01BQXhCLFlBQXdCLEVFTm5CO0lIL0VUO01BNEVNLGdCRGlGb0I7TUNoRnBCLGtCQUFpQyxFQUNsQzs7QUE5RUw7RUFtRm1CLFlEOUROLEVDOERzQjs7QUFHbkM7Ozs7RUFFbUIsWUQxRFcsRUMwRFU7O0FDMER0QztFOEIvSkE7SWxDU3VELG1Da0NUbkI7SWxDWXVCLCtCa0NadkI7SWxDYXdCLDhCa0NieEI7SWxDYzJCLDJCa0NkM0IsRUFBQTtFQUNwQztJbENRdUQscUNrQ1JuQjtJbENXdUIsaUNrQ1h2QjtJbENZd0IsZ0NrQ1p4QjtJbENhMkIsNkJrQ2IzQixFQUFBO0VBQ3BDO0lsQ091RCxxQ2tDUG5CO0lsQ1V1QixpQ2tDVnZCO0lsQ1d3QixnQ2tDWHhCO0lsQ1kyQiw2QmtDWjNCLEVBQUE7RUFDcEM7SWxDTXVELHFDa0NObkI7SWxDU3VCLGlDa0NUdkI7SWxDVXdCLGdDa0NWeEI7SWxDVzJCLDZCa0NYM0IsRUFBQTtFQUNwQztJbENLdUQscUNrQ0xuQjtJbENRdUIsaUNrQ1J2QjtJbENTd0IsZ0NrQ1R4QjtJbENVMkIsNkJrQ1YzQixFQUFBLEVBQUE7O0E5QmlLcEM7RThCcktBO0lsQ1N1RCxtQ2tDVG5CO0lsQ1l1QiwrQmtDWnZCO0lsQ2F3Qiw4QmtDYnhCO0lsQ2MyQiwyQmtDZDNCLEVBQUE7RUFDcEM7SWxDUXVELHFDa0NSbkI7SWxDV3VCLGlDa0NYdkI7SWxDWXdCLGdDa0NaeEI7SWxDYTJCLDZCa0NiM0IsRUFBQTtFQUNwQztJbENPdUQscUNrQ1BuQjtJbENVdUIsaUNrQ1Z2QjtJbENXd0IsZ0NrQ1h4QjtJbENZMkIsNkJrQ1ozQixFQUFBO0VBQ3BDO0lsQ011RCxxQ2tDTm5CO0lsQ1N1QixpQ2tDVHZCO0lsQ1V3QixnQ2tDVnhCO0lsQ1cyQiw2QmtDWDNCLEVBQUE7RUFDcEM7SWxDS3VELHFDa0NMbkI7SWxDUXVCLGlDa0NSdkI7SWxDU3dCLGdDa0NUeEI7SWxDVTJCLDZCa0NWM0IsRUFBQSxFQUFBOztBOUJvS3BDO0U4QnhLQTtJbENTdUQsbUNrQ1RuQjtJbENZdUIsK0JrQ1p2QjtJbENhd0IsOEJrQ2J4QjtJbENjMkIsMkJrQ2QzQixFQUFBO0VBQ3BDO0lsQ1F1RCxxQ2tDUm5CO0lsQ1d1QixpQ2tDWHZCO0lsQ1l3QixnQ2tDWnhCO0lsQ2EyQiw2QmtDYjNCLEVBQUE7RUFDcEM7SWxDT3VELHFDa0NQbkI7SWxDVXVCLGlDa0NWdkI7SWxDV3dCLGdDa0NYeEI7SWxDWTJCLDZCa0NaM0IsRUFBQTtFQUNwQztJbENNdUQscUNrQ05uQjtJbENTdUIsaUNrQ1R2QjtJbENVd0IsZ0NrQ1Z4QjtJbENXMkIsNkJrQ1gzQixFQUFBO0VBQ3BDO0lsQ0t1RCxxQ2tDTG5CO0lsQ1F1QixpQ2tDUnZCO0lsQ1N3QixnQ2tDVHhCO0lsQ1UyQiw2QmtDVjNCLEVBQUEsRUFBQTs7QTlCMkpwQztFOEJ2SkE7SWxDQ3VELHFDa0NEbkI7SWxDSXVCLGlDa0NKdkI7SWxDS3dCLGdDa0NMeEI7SWxDTTJCLDZCa0NOM0IsRUFBQTtFQUNwQztJbENBdUQsc0NrQ0FuQjtJbENHdUIsa0NrQ0h2QjtJbENJd0IsaUNrQ0p4QjtJbENLMkIsOEJrQ0wzQixFQUFBO0VBQ3BDO0lsQ0R1RCxzQ2tDQ25CO0lsQ0V1QixrQ2tDRnZCO0lsQ0d3QixpQ2tDSHhCO0lsQ0kyQiw4QmtDSjNCLEVBQUE7RUFDcEM7SWxDRnVELHFDa0NFbkI7SWxDQ3VCLGlDa0NEdkI7SWxDRXdCLGdDa0NGeEI7SWxDRzJCLDZCa0NIM0IsRUFBQTtFQUNwQztJbENIdUQscUNrQ0duQjtJbENBdUIsaUNrQ0F2QjtJbENDd0IsZ0NrQ0R4QjtJbENFMkIsNkJrQ0YzQixFQUFBO0VBQ3BDO0lsQ0p1RCxxQ2tDSW5CO0lsQ0R1QixpQ2tDQ3ZCO0lsQ0F3QixnQ2tDQXhCO0lsQ0MyQiw2QmtDRDNCLEVBQUEsRUFBQTs7QTlCd0pwQztFOEI3SkE7SWxDQ3VELHFDa0NEbkI7SWxDSXVCLGlDa0NKdkI7SWxDS3dCLGdDa0NMeEI7SWxDTTJCLDZCa0NOM0IsRUFBQTtFQUNwQztJbENBdUQsc0NrQ0FuQjtJbENHdUIsa0NrQ0h2QjtJbENJd0IsaUNrQ0p4QjtJbENLMkIsOEJrQ0wzQixFQUFBO0VBQ3BDO0lsQ0R1RCxzQ2tDQ25CO0lsQ0V1QixrQ2tDRnZCO0lsQ0d3QixpQ2tDSHhCO0lsQ0kyQiw4QmtDSjNCLEVBQUE7RUFDcEM7SWxDRnVELHFDa0NFbkI7SWxDQ3VCLGlDa0NEdkI7SWxDRXdCLGdDa0NGeEI7SWxDRzJCLDZCa0NIM0IsRUFBQTtFQUNwQztJbENIdUQscUNrQ0duQjtJbENBdUIsaUNrQ0F2QjtJbENDd0IsZ0NrQ0R4QjtJbENFMkIsNkJrQ0YzQixFQUFBO0VBQ3BDO0lsQ0p1RCxxQ2tDSW5CO0lsQ0R1QixpQ2tDQ3ZCO0lsQ0F3QixnQ2tDQXhCO0lsQ0MyQiw2QmtDRDNCLEVBQUEsRUFBQTs7QTlCMkpwQztFOEJoS0E7SWxDQ3VELHFDa0NEbkI7SWxDSXVCLGlDa0NKdkI7SWxDS3dCLGdDa0NMeEI7SWxDTTJCLDZCa0NOM0IsRUFBQTtFQUNwQztJbENBdUQsc0NrQ0FuQjtJbENHdUIsa0NrQ0h2QjtJbENJd0IsaUNrQ0p4QjtJbENLMkIsOEJrQ0wzQixFQUFBO0VBQ3BDO0lsQ0R1RCxzQ2tDQ25CO0lsQ0V1QixrQ2tDRnZCO0lsQ0d3QixpQ2tDSHhCO0lsQ0kyQiw4QmtDSjNCLEVBQUE7RUFDcEM7SWxDRnVELHFDa0NFbkI7SWxDQ3VCLGlDa0NEdkI7SWxDRXdCLGdDa0NGeEI7SWxDRzJCLDZCa0NIM0IsRUFBQTtFQUNwQztJbENIdUQscUNrQ0duQjtJbENBdUIsaUNrQ0F2QjtJbENDd0IsZ0NrQ0R4QjtJbENFMkIsNkJrQ0YzQixFQUFBO0VBQ3BD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QGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbnMnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb25zLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29ucy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9pY29ucy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2ljb25zLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbnMuc3ZnI2ljb25zXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL29wZW5zYW5zLWxpZ2h0LXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL29wZW5zYW5zLWxpZ2h0LXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9vcGVuc2Fucy1yZWd1bGFyLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL29wZW5zYW5zLXJlZ3VsYXItd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL29wZW5zYW5zLXNlbWlib2xkLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL29wZW5zYW5zLXNlbWlib2xkLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLnRpY2stbGlzdCwgLmZlYXR1cmUtbGlzdCwgLm5hdl9fbGlzdCwgLmJsb2ctbmF2X190YWdzLWxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uc2VjdGlvbiwgLmVycm9ycywgLmltYWdlLWJsb2NrLCAuaW1hZ2UtYmxvY2stLWxlZnQsIC5pbWFnZS1ibG9jay0tcmlnaHQsIC5jaGVja291dF9fZ2xzLCAuYmxvZy1wb3N0LCAuc29jaWFsLCAuYmxvZy1uYXZfX3NoYXJlIHtcbiAgKnpvb206IDE7IH1cbiAgLnNlY3Rpb246YmVmb3JlLCAuZXJyb3JzOmJlZm9yZSwgLmltYWdlLWJsb2NrOmJlZm9yZSwgLmltYWdlLWJsb2NrLS1sZWZ0OmJlZm9yZSwgLmltYWdlLWJsb2NrLS1yaWdodDpiZWZvcmUsIC5jaGVja291dF9fZ2xzOmJlZm9yZSwgLmJsb2ctcG9zdDpiZWZvcmUsIC5zb2NpYWw6YmVmb3JlLCAuYmxvZy1uYXZfX3NoYXJlOmJlZm9yZSwgLnNlY3Rpb246YWZ0ZXIsIC5lcnJvcnM6YWZ0ZXIsIC5pbWFnZS1ibG9jazphZnRlciwgLmltYWdlLWJsb2NrLS1sZWZ0OmFmdGVyLCAuaW1hZ2UtYmxvY2stLXJpZ2h0OmFmdGVyLCAuY2hlY2tvdXRfX2dsczphZnRlciwgLmJsb2ctcG9zdDphZnRlciwgLnNvY2lhbDphZnRlciwgLmJsb2ctbmF2X19zaGFyZTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNlY3Rpb246YWZ0ZXIsIC5lcnJvcnM6YWZ0ZXIsIC5pbWFnZS1ibG9jazphZnRlciwgLmltYWdlLWJsb2NrLS1sZWZ0OmFmdGVyLCAuaW1hZ2UtYmxvY2stLXJpZ2h0OmFmdGVyLCAuY2hlY2tvdXRfX2dsczphZnRlciwgLmJsb2ctcG9zdDphZnRlciwgLnNvY2lhbDphZnRlciwgLmJsb2ctbmF2X19zaGFyZTphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuW3R5cGU9dGVsXSxcblt0eXBlPWVtYWlsXSxcblt0eXBlPW51bWJlcl0sXG5bdHlwZT10ZXh0XSxcblt0eXBlPXNlYXJjaF0sIHRleHRhcmVhLCBzZWxlY3QsIGJsb2NrcXVvdGUge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4uc3BsYXQsIC5zcGxhdC0tc2Vjb25kYXJ5LCAuc3BsYXQtLXRlcnRpYXJ5LCAuc3BsYXQtLWxhcmdlLWFsdCwgLnNwbGF0LS1sYXJnZSwgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSwgLnNwbGF0LS1iaXQtLWxhcmdlLCAuc3BsYXQtLWJlc3RzZWxsZXIsIC5zcGxhdC0tYml0LCAuc3BsYXRfX2JvcmRlciwgLm51bWJlcl9faW5jcmVhc2UsIC5udW1iZXJfX2RlY3JlYXNlLCAuYnVsbGV0cyBhLCAudGh1bWJuYWlsLWJ1bGxldHMgYSwgLmJ1bGxldHMgYTphZnRlciwgLnRodW1ibmFpbC1idWxsZXRzIGE6YWZ0ZXIge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgLW1zLWJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cblxuc2VsZWN0IHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAwO1xuICAtby1ib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5zZWN0aW9uLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4NGQ2NDsgfVxuXG4uc2VjdGlvbi0taGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNzsgfVxuXG4uc2VjdGlvbi0tY2FtcGFpZ24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNkZjdhOyB9XG5cbi5nbG9iYWwtbWVzc2FnZV9fY2xvc2UsIC5wZXJtaXNzaW9uLWJhcl9fY2xvc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzkzOTM3O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDI5cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWluZGVudDogOTlweDtcbiAgd2lkdGg6IDI5cHg7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5nbG9iYWwtbWVzc2FnZV9fY2xvc2U6aG92ZXIsIC5wZXJtaXNzaW9uLWJhcl9fY2xvc2U6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5nbG9iYWwtbWVzc2FnZV9fY2xvc2U6YWZ0ZXIsIC5wZXJtaXNzaW9uLWJhcl9fY2xvc2U6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxkN1wiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDI5cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5ibG9nLWNvbW1lbnRfX2hlYWRlciB7XG4gIGNvbG9yOiAjNjY2O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5ibG9nLWNvbW1lbnRfX2hlYWRlciB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAubHQtaWU5IC5ibG9nLWNvbW1lbnRfX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG5cbmg0LFxuLmg0LCB0aCwgLnN1YmplY3QsIC5zZWN0aW9uX19oZWFkZXItc3ViamVjdCwgLnNlY3Rpb25fX3RleHQtc3ViamVjdCwgLmltYWdlLWJsb2NrX19zdWJqZWN0LCAudGljay1saXN0X19pdGVtLCAuYnV0dG9uLS1zbWFsbCwgLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5idXR0b24tLXByaW1hcnktLXNtYWxsLCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbCwgLmJ1dHRvbiwgLmNoZWNrb3V0X19zdWJtaXQsIC5jaGVja291dF9fc3VibWl0LS11cywgLmRpc2NvdW50X19zdWJtaXQsIC5idXR0b24tLXByaW1hcnksIC5idXR0b24tLXNlY29uZGFyeSwgLmJ1dHRvbi0tdGVydGlhcnksIC5idXR0b24tLWJ1eSwgLmxlYWQsIFt0eXBlPXRlbF0sXG5bdHlwZT1lbWFpbF0sXG5bdHlwZT1udW1iZXJdLFxuW3R5cGU9dGV4dF0sXG5bdHlwZT1zZWFyY2hdLCB0ZXh0YXJlYSwgc2VsZWN0LCAuaW1hZ2UtYmxvY2tfX2NvbnRlbnQge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIGg0LFxuICAgIC5oNCwgdGgsIC5zdWJqZWN0LCAuc2VjdGlvbl9faGVhZGVyLXN1YmplY3QsIC5zZWN0aW9uX190ZXh0LXN1YmplY3QsIC5pbWFnZS1ibG9ja19fc3ViamVjdCwgLnRpY2stbGlzdF9faXRlbSwgLmJ1dHRvbi0tc21hbGwsIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uLCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yLCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIC5idXR0b24sIC5jaGVja291dF9fc3VibWl0LCAuY2hlY2tvdXRfX3N1Ym1pdC0tdXMsIC5kaXNjb3VudF9fc3VibWl0LCAuYnV0dG9uLS1wcmltYXJ5LCAuYnV0dG9uLS1zZWNvbmRhcnksIC5idXR0b24tLXRlcnRpYXJ5LCAuYnV0dG9uLS1idXksIC5sZWFkLCBbdHlwZT10ZWxdLFxuICAgIFt0eXBlPWVtYWlsXSxcbiAgICBbdHlwZT1udW1iZXJdLFxuICAgIFt0eXBlPXRleHRdLFxuICAgIFt0eXBlPXNlYXJjaF0sIHRleHRhcmVhLCBzZWxlY3QsIC5pbWFnZS1ibG9ja19fY29udGVudCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAubHQtaWU5IGg0LCAubHQtaWU5XG4gIC5oNCwgLmx0LWllOSB0aCwgLmx0LWllOSAuc3ViamVjdCwgLmx0LWllOSAuc2VjdGlvbl9faGVhZGVyLXN1YmplY3QsIC5sdC1pZTkgLnNlY3Rpb25fX3RleHQtc3ViamVjdCwgLmx0LWllOSAuaW1hZ2UtYmxvY2tfX3N1YmplY3QsIC5sdC1pZTkgLnRpY2stbGlzdF9faXRlbSwgLmx0LWllOSAuYnV0dG9uLS1zbWFsbCwgLmx0LWllOSAucGVybWlzc2lvbi1iYXJfX2J1dHRvbiwgLmx0LWllOSAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLmx0LWllOSAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAubHQtaWU5IC5jaGVja291dF9fYmFza2V0LWFuY2hvciwgLmx0LWllOSAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIC5sdC1pZTkgLmJ1dHRvbiwgLmx0LWllOSAuY2hlY2tvdXRfX3N1Ym1pdCwgLmx0LWllOSAuY2hlY2tvdXRfX3N1Ym1pdC0tdXMsIC5sdC1pZTkgLmRpc2NvdW50X19zdWJtaXQsIC5sdC1pZTkgLmJ1dHRvbi0tcHJpbWFyeSwgLmx0LWllOSAuYnV0dG9uLS1zZWNvbmRhcnksIC5sdC1pZTkgLmJ1dHRvbi0tdGVydGlhcnksIC5sdC1pZTkgLmJ1dHRvbi0tYnV5LCAubHQtaWU5IC5sZWFkLCAubHQtaWU5IFt0eXBlPXRlbF0sIC5sdC1pZTlcbiAgW3R5cGU9ZW1haWxdLCAubHQtaWU5XG4gIFt0eXBlPW51bWJlcl0sIC5sdC1pZTlcbiAgW3R5cGU9dGV4dF0sIC5sdC1pZTlcbiAgW3R5cGU9c2VhcmNoXSwgLmx0LWllOSB0ZXh0YXJlYSwgLmx0LWllOSBzZWxlY3QsIC5sdC1pZTkgLmltYWdlLWJsb2NrX19jb250ZW50IHtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cblxuaDMsXG4uaDMsIGJsb2NrcXVvdGUge1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIGgzLFxuICAgIC5oMywgYmxvY2txdW90ZSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuICAubHQtaWU5IGgzLCAubHQtaWU5XG4gIC5oMywgLmx0LWllOSBibG9ja3F1b3RlIHtcbiAgICBmb250LXNpemU6IDE4cHg7IH1cblxuLmNoZWNrb3V0X19waG9uZSwgLmRpc2NvdW50X19pbnB1dCwgLmJsb2ctaXRlbV9faGVhZGVyIHtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuY2hlY2tvdXRfX3Bob25lLCAuZGlzY291bnRfX2lucHV0LCAuYmxvZy1pdGVtX19oZWFkZXIge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgLmx0LWllOSAuY2hlY2tvdXRfX3Bob25lLCAubHQtaWU5IC5kaXNjb3VudF9faW5wdXQsIC5sdC1pZTkgLmJsb2ctaXRlbV9faGVhZGVyIHtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cblxuaDEsXG4uaDEsIC5pbWFnZS1ibG9ja19faGVhZGVyLCAuc2VjdGlvbl9fdGV4dC1oZWFkZXIsIGgyLFxuLmgyLCBoMyxcbi5oMywgYmxvY2txdW90ZSwgLnN1YmplY3QsIC5zZWN0aW9uX19oZWFkZXItc3ViamVjdCwgLnNlY3Rpb25fX3RleHQtc3ViamVjdCwgLmltYWdlLWJsb2NrX19zdWJqZWN0LCAudGljay1saXN0X19pdGVtLCAuYnV0dG9uLS1zbWFsbCwgLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5idXR0b24tLXByaW1hcnktLXNtYWxsLCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbCwgLmJ1dHRvbiwgLmNoZWNrb3V0X19zdWJtaXQsIC5jaGVja291dF9fc3VibWl0LS11cywgLmRpc2NvdW50X19zdWJtaXQsIC5idXR0b24tLXByaW1hcnksIC5idXR0b24tLXNlY29uZGFyeSwgLmJ1dHRvbi0tdGVydGlhcnksIC5idXR0b24tLWJ1eSwgLmxlYWQsIFt0eXBlPXRlbF0sXG5bdHlwZT1lbWFpbF0sXG5bdHlwZT1udW1iZXJdLFxuW3R5cGU9dGV4dF0sXG5bdHlwZT1zZWFyY2hdLCB0ZXh0YXJlYSwgc2VsZWN0IHtcbiAgY29sb3I6ICMyNzIzMjQ7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtOyB9XG5cbmgxLFxuLmgxLCAuaW1hZ2UtYmxvY2tfX2hlYWRlciwgLnNlY3Rpb25fX3RleHQtaGVhZGVyIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udC1zaXplOiAyNHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICBoMSxcbiAgICAuaDEsIC5pbWFnZS1ibG9ja19faGVhZGVyLCAuc2VjdGlvbl9fdGV4dC1oZWFkZXIge1xuICAgICAgZm9udC1zaXplOiA0OHB4OyB9IH1cbiAgLmx0LWllOSBoMSwgLmx0LWllOVxuICAuaDEsIC5sdC1pZTkgLmltYWdlLWJsb2NrX19oZWFkZXIsIC5sdC1pZTkgLnNlY3Rpb25fX3RleHQtaGVhZGVyIHtcbiAgICBmb250LXNpemU6IDQ4cHg7IH1cblxuaDIsXG4uaDIge1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXNpemU6IDE4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIGgyLFxuICAgIC5oMiB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICAubHQtaWU5IGgyLCAubHQtaWU5XG4gIC5oMiB7XG4gICAgZm9udC1zaXplOiAyOHB4OyB9XG5cbmgzLFxuLmgzLCBibG9ja3F1b3RlIHtcbiAgZm9udC1mYW1pbHk6IFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5oNCxcbi5oNCwgdGgsIHN0cm9uZyxcbmIge1xuICBjb2xvcjogIzI3MjMyNDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDAuOGVtOyB9XG5cbi5zdWJqZWN0LCAuc2VjdGlvbl9faGVhZGVyLXN1YmplY3QsIC5zZWN0aW9uX190ZXh0LXN1YmplY3QsIC5pbWFnZS1ibG9ja19fc3ViamVjdCwgLnRpY2stbGlzdF9faXRlbSwgLmJ1dHRvbi0tc21hbGwsIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uLCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yLCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIC5idXR0b24sIC5jaGVja291dF9fc3VibWl0LCAuY2hlY2tvdXRfX3N1Ym1pdC0tdXMsIC5kaXNjb3VudF9fc3VibWl0LCAuYnV0dG9uLS1wcmltYXJ5LCAuYnV0dG9uLS1zZWNvbmRhcnksIC5idXR0b24tLXRlcnRpYXJ5LCAuYnV0dG9uLS1idXksIC5sZWFkLCBbdHlwZT10ZWxdLFxuW3R5cGU9ZW1haWxdLFxuW3R5cGU9bnVtYmVyXSxcblt0eXBlPXRleHRdLFxuW3R5cGU9c2VhcmNoXSwgdGV4dGFyZWEsIHNlbGVjdCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjYzOyB9XG5cbi5zdWJqZWN0LCAuc2VjdGlvbl9faGVhZGVyLXN1YmplY3QsIC5zZWN0aW9uX190ZXh0LXN1YmplY3QsIC5pbWFnZS1ibG9ja19fc3ViamVjdCwgLnRpY2stbGlzdF9faXRlbSB7XG4gIGZvbnQtZmFtaWx5OiBcIlRpbWVzXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLmJ1dHRvbi0tc21hbGwsIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uLCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yLCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIGZpZ2NhcHRpb24sXG4uY2FwdGlvbixcbi5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLmJ1dHRvbi0tc21hbGwsIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uLCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yLCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIGZpZ2NhcHRpb24sXG4gICAgLmNhcHRpb24sXG4gICAgLmxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5sdC1pZTkgLmJ1dHRvbi0tc21hbGwsIC5sdC1pZTkgLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5sdC1pZTkgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwsIC5sdC1pZTkgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCwgLmx0LWllOSAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5sdC1pZTkgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsLCAubHQtaWU5IGZpZ2NhcHRpb24sIC5sdC1pZTlcbiAgLmNhcHRpb24sIC5sdC1pZTlcbiAgLmxhYmVsIHtcbiAgICBmb250LXNpemU6IDEycHg7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxuLmxlYWQge1xuICBtYXJnaW4tYm90dG9tOiAxZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5sZWFkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJlbTsgfSB9XG4gIC5sdC1pZTkgLmxlYWQge1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzMuNWVtKSB7XG4gICAgLmxlYWQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogM2VtOyB9IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgcCBhIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2FmOWI1NjsgfVxuXG5hIHtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuICBhOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwO1xuICAgIG91dGxpbmU6IGRvdHRlZCB0aGluICMwMDA7IH1cbiAgYTphY3RpdmUge1xuICAgIGNvbG9yOiAjMjcyMzI0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhW2hyZWZePXRlbF0ge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICMxQkIyRTA7XG4gIGNvbG9yOiAjZmQwO1xuICB0ZXh0LXNoYWRvdzogbm9uZTsgfVxuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogIzFCQjJFMDtcbiAgY29sb3I6ICNmZDA7XG4gIHRleHQtc2hhZG93OiBub25lOyB9XG5cbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5pbnZlcnQtdGV4dCB7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5pbnZlcnQtdGV4dCBhIHtcbiAgICBjb2xvcjogI2ZmZGYwMDsgfVxuICAuaW52ZXJ0LXRleHQgaGVhZGluZ3MoMSloZWFkaW5ncygzKSxcbiAgLmludmVydC10ZXh0IHN0cm9uZyxcbiAgLmludmVydC10ZXh0IGIge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5pbnZlcnQtdGV4dCAuYnV0dG9uLS1zbWFsbCwgLmludmVydC10ZXh0IC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uLCAuaW52ZXJ0LXRleHQgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwsIC5pbnZlcnQtdGV4dCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAuaW52ZXJ0LXRleHQgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yLCAuaW52ZXJ0LXRleHQgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsLCAuaW52ZXJ0LXRleHQgLmJ1dHRvbiwgLmludmVydC10ZXh0IC5jaGVja291dF9fc3VibWl0LCAuaW52ZXJ0LXRleHQgLmNoZWNrb3V0X19zdWJtaXQtLXVzLCAuaW52ZXJ0LXRleHQgLmRpc2NvdW50X19zdWJtaXQsIC5pbnZlcnQtdGV4dCAuYnV0dG9uLS1wcmltYXJ5LCAuaW52ZXJ0LXRleHQgLmJ1dHRvbi0tc2Vjb25kYXJ5LCAuaW52ZXJ0LXRleHQgLmJ1dHRvbi0tdGVydGlhcnksIC5pbnZlcnQtdGV4dCAuYnV0dG9uLS1idXkge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5zdWJqZWN0LCAuc2VjdGlvbl9faGVhZGVyLXN1YmplY3QsIC5zZWN0aW9uX190ZXh0LXN1YmplY3QsIC5pbWFnZS1ibG9ja19fc3ViamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zdWJqZWN0OmFmdGVyLCAuc2VjdGlvbl9faGVhZGVyLXN1YmplY3Q6YWZ0ZXIsIC5zZWN0aW9uX190ZXh0LXN1YmplY3Q6YWZ0ZXIsIC5pbWFnZS1ibG9ja19fc3ViamVjdDphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyNzIzMjQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm90dG9tOiAtM3B4O1xuICAgIHdpZHRoOiAxLjVlbTsgfVxuICAgIC5pbnZlcnQtdGV4dCAuc3ViamVjdDphZnRlciwgLmludmVydC10ZXh0IC5zZWN0aW9uX19oZWFkZXItc3ViamVjdDphZnRlciwgLmludmVydC10ZXh0IC5zZWN0aW9uX190ZXh0LXN1YmplY3Q6YWZ0ZXIsIC5pbnZlcnQtdGV4dCAuaW1hZ2UtYmxvY2tfX3N1YmplY3Q6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG5cbi8qXHJcblxyXG4vLyBFeHRlbmRpbmcgaWNvbiBzZWxlY3RvclxyXG4uYnV0dG9uIHsgQGV4dGVuZCAuaWNvbi0tYnV0dG9uOyB9XHJcblxyXG4vLyBFeHRlbmRpbmcgcGxhY2Vob2xkZXIgc2VsZWN0b3IgKG11c3QgYmUgYXBwbGllZCB0byBwc2V1ZG8gZWxlbWVudClcclxuLmJ1dHRvbiB7XHJcbiAgJjpiZWZvcmUgeyBAZXh0ZW5kICVpY29uLS1idXR0b247IH1cclxufVxyXG5cclxuLy8gVXNpbmcgbWl4aW4gKG11c3QgYmUgYXBwbGllZCB0byBwc2V1ZG8gZWxlbWVudClcclxuLy8gRXh0ZW5kcyBhIHBsYWNlaG9sZGVyIHNlbGVjdG9yICVpY29uLS1idXR0b25cclxuLmJ1dHRvbiB7XHJcbiAgJjpiZWZvcmUgeyBAaW5jbHVkZSB1c2UtaWNvbiggYnV0dG9uICk7IH1cclxufVxyXG5cclxuLy8gSWNvbiBvbmx5ICh0ZXh0IGlzIGhpZGRlbilcclxuLmFycm93IHtcclxuICBAZXh0ZW5kICVpY29uLW9ubHk7XHJcbiAgQGV4dGVuZCAuaWNvbi0tYXJyb3c7XHJcbn1cclxuXHJcbiovXG4vKlxyXG5cclxuLy8gRm9yY2luZyBzdHlsZSBvdXRwdXQgcmF0aGVyIHRoYW4gZXh0ZW5kaW5nIGEgcGxhY2Vob2xkZXIgc2VsZWN0b3JcclxuLmJ1dHRvbjpiZWZvcmUge1xyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGJwLWwteGwgKSB7XHJcbiAgICBAaW5jbHVkZSB1c2UtaWNvbiggYnV0dG9uLCB0cnVlICk7XHJcbiAgfVxyXG59XHJcblxyXG4qL1xuLypcclxuSW4gbW9zdCBjYXNlcyBpdCdzIG5vdCBuZWNlc3NhcnkgdG8gdXNlIGFsbCBhdmFpbGFibGUgaWNvbnMgaW4gYSBnaXZlbiBzeW50YXguXHJcblRoaXMgd2F5LCB3ZSBjYW4gaGFuZCBwaWNrIHRoZSBpY29ucyB3ZSB3YW50IHRvIHVzZS5cclxuUHV0ICMgaW4gZnJvbnQgb2YgeyAkbmFtZSB9IGJlZm9yZSB1c2VcclxuXHJcblNDU1NcclxuPT09PVxyXG5cclxuLmZvb3RlciB7XHJcbiAgJl9faWNvbiB7XHJcbiAgICBAZWFjaCAkbmFtZSBpbiBmYWNlYm9vaywgaW5zdGFncmFtIHtcclxuICAgICAgJi0teyAkbmFtZSB9IHtcclxuICAgICAgICBAZXh0ZW5kIC5pY29uLS17ICRuYW1lIH07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbk91dHB1dFxyXG49PT09PT1cclxuXHJcbi5mb290ZXJfX2ljb24tLWZhY2Vib29rIHsgLi4uIH1cclxuLmZvb3Rlcl9faWNvbi0taW5zdGFncmFtIHsgLi4uIH1cclxuXHJcbiovXG4vKipcclxuICogUmV0dXJucyBhbiBpY29uIG1hcCBiYXNlIG9uIGl0cyBuYW1lXHJcbiAqIElmIGEgcHJvcGVydHkgaXMgcHJvdmlkZWQsIHRoZSB2YWx1ZSBvZiB0aGF0IHByb3BlcnR5IGlzIHJldHVybmVkXHJcbiAqIEB0eXBlICB7ZnVuY3Rpb259XHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAgJG5hbWUgICAgICAgW3JlcXVpcmVkXSBpY29uIG5hbWVcclxuICogQHBhcmFtIHtTdHJpbmd9ICAkcHJvcGVydHkgICBbb3B0aW9uYWxdIHByb3BlcnR5IG5hbWVcclxuICovXG4vKipcclxuICogU2V0IGljb25cclxuICogQ2FuIGJlIHVzZWQgd2l0aG91dCAkaWNvbnMgbWFwXHJcbiAqIE11c3QgYmUgYXBwbGllZCB0byBhIHBzZXVkbyBlbGVtZW50ICg6YmVmb3JlLCA6YWZ0ZXIpXHJcbiAqIEB0eXBlICB7bWl4aW59XHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAgJGNoYXIgIFtyZXF1aXJlZF0gaGV4YWRlY2ltYWwgbGV0dGVyIGZvciB0aGUgaWNvblxyXG4gKiBAcGFyYW0ge0Jvb2x9ICAgICRmb3JjZSBbb3B0aW9uYWxdIGlmIHNldCB0byB0cnVlLCB0aGUgaWNvbiBzdHlsZXNcclxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmUgcmVuZGVyZWQgaW5saW5lIHJhdGhlciB0aGFuXHJcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3VnaCBAZXh0ZW5kIChmb3IgZW1iZWRkaW5nXHJcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gbWVkaWEgcXVlcmllcylcclxuICovXG4vKipcclxuICogVXNlIGljb25cclxuICogUmVxdWlyZXMgJGljb25zIG1hcCB0byBiZSBkZWZpbmVkXHJcbiAqIE11c3QgYmUgYXBwbGllZCB0byBhIHBzZXVkbyBlbGVtZW50ICg6YmVmb3JlLCA6YWZ0ZXIpXHJcbiAqIEB0eXBlICB7bWl4aW59XHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAgJG5hbWUgICBbcmVxdWlyZWRdIG5hbWUgb2YgaWNvbiB0byB1c2VcclxuICogQHBhcmFtIHtCb29sfSAgICAkZm9yY2UgIFtvcHRpb25hbF0gaWYgc2V0IHRvIHRydWUsIHRoZSBpY29uIHN0eWxlc1xyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmUgcmVuZGVyZWQgaW5saW5lIHJhdGhlciB0aGFuXHJcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm91Z2ggQGV4dGVuZCAoZm9yIGVtYmVkZGluZ1xyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBtZWRpYSBxdWVyaWVzKVxyXG4gKi9cbi5pY29uLS1wbHVzOmJlZm9yZSwgLm51bWJlcl9faW5jcmVhc2U6YWZ0ZXIsIC5pY29uLS1taW51czpiZWZvcmUsIC5udW1iZXJfX2RlY3JlYXNlOmFmdGVyLCAuaWNvbi0tYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSwgLmljb24tLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZSwgLmljb24tLXRpY2s6YmVmb3JlLCAudGljay1saXN0X19pdGVtOmJlZm9yZSwgLmljb24tLWVycm9yOmJlZm9yZSwgLmljb24tLWJhc2tldDpiZWZvcmUsIC5pY29uLS1zZWFyY2g6YmVmb3JlLCAuaWNvbi0tcGhvbmU6YmVmb3JlLCAuY2hlY2tvdXRfX3Bob25lOmJlZm9yZSwgLmljb24tLWFycm93LXJpZ2h0OmJlZm9yZSwgLmljb24tLWFycm93LWRvd246YmVmb3JlLCAuaWNvbi0tbWVudS1idXJnZXI6YmVmb3JlLCAuaWNvbi0tZGVsZXRlOmJlZm9yZSwgLmljb24tLWxlYXZlczpiZWZvcmUsIC5zcGxhdF9faWNvbi0tYmVzdHNlbGxlcjo6YmVmb3JlLCAuc3BsYXRfX2ljb24tLWJlc3RzZWxsZXItLWxhcmdlOmJlZm9yZSwgLmljb24tLXN0YXJzOmJlZm9yZSwgLnNwbGF0X19pY29uLS1iaXQ6YmVmb3JlLCAuc3BsYXRfX2ljb24tLWJpdC0tbGFyZ2U6YmVmb3JlLCAuaWNvbi0tZmFjZWJvb2s6YmVmb3JlLCAuaWNvbi0taW5zdGFncmFtOmJlZm9yZSwgLmljb24tLWZlYXR1cmUtNDBjOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS00MGM6YmVmb3JlLCAuaWNvbi0tZmVhdHVyZS0xMDRmOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS0xMDRmOmJlZm9yZSwgLmljb24tLWZlYXR1cmUtZGlzaHdhc2hlcjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZGlzaHdhc2hlcjpiZWZvcmUsIC5pY29uLS1mZWF0dXJlLWZyZWV6ZXI6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWZyZWV6ZXI6YmVmb3JlLCAuaWNvbi0tZmVhdHVyZS1oYWxvZ2VuOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1oYWxvZ2VuOmJlZm9yZSwgLmljb24tLWZlYXR1cmUtaW5kdWN0aW9uOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1pbmR1Y3Rpb246YmVmb3JlLCAuaWNvbi0tZmVhdHVyZS1nYXM6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWdhczpiZWZvcmUsIC5pY29uLS1mZWF0dXJlLWNlcmFtaWM6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWNlcmFtaWM6YmVmb3JlLCAuaWNvbi0tZmVhdHVyZS1taWNyb3dhdmU6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLW1pY3Jvd2F2ZTpiZWZvcmUsIC5pY29uLS1mZWF0dXJlLW92ZW5wcm9vZjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtb3ZlbnByb29mOmJlZm9yZSwgLmljb24tLWZlYXR1cmUtcmFkaWFudHJpbjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtcmFkaWFudHJpbjpiZWZvcmUsIC5pY29uLS1mZWF0dXJlLXNvbGlkcGxhdGU6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLXNvbGlkcGxhdGU6YmVmb3JlLCAuaWNvbjpiZWZvcmUge1xuICBmb250LWZhbWlseTogXCJpY29uc1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBoZWlnaHQ6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgc3BlYWs6IG5vbmU7XG4gIHRleHQtaW5kZW50OiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IH1cblxuLm51bWJlcl9faW5jcmVhc2UsIC5udW1iZXJfX2RlY3JlYXNlIHtcbiAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5udW1iZXJfX2luY3JlYXNlOmJlZm9yZSwgLm51bWJlcl9fZGVjcmVhc2U6YmVmb3JlLCAubnVtYmVyX19pbmNyZWFzZTphZnRlciwgLm51bWJlcl9fZGVjcmVhc2U6YWZ0ZXIge1xuICAgIGZsb2F0OiBpbmhlcml0O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uaWNvbi0tcGx1czpiZWZvcmUsIC5udW1iZXJfX2luY3JlYXNlOmFmdGVyIHtcbiAgY29udGVudDogXCLumJRcIjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDEuNHJlbTsgfVxuXG4uaWNvbi0tbWludXM6YmVmb3JlLCAubnVtYmVyX19kZWNyZWFzZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwi7piRXCI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAxLjRyZW07IH1cblxuLmljb24tLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Yg1wiO1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtc2l6ZTogNC44cmVtOyB9XG5cbi5pY29uLS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6YglwiO1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtc2l6ZTogNC44cmVtOyB9XG5cbi5pY29uLS10aWNrOmJlZm9yZSwgLnRpY2stbGlzdF9faXRlbTpiZWZvcmUge1xuICBjb2xvcjogIzZkOTM0MztcbiAgY29udGVudDogXCLumJhcIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTsgfVxuXG4uaWNvbi0tZXJyb3I6YmVmb3JlIHtcbiAgY29sb3I6ICNkNjJjMmQ7XG4gIGNvbnRlbnQ6IFwi7piHXCI7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgZm9udC1zaXplOiAyLjFyZW07IH1cblxuLmljb24tLWJhc2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kgFwiO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuXG4uaWNvbi0tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbG9yOiAjQUU5QzU3O1xuICBjb250ZW50OiBcIu6YlVwiO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMS40cmVtOyB9XG5cbi5pY29uLS1waG9uZTpiZWZvcmUsIC5jaGVja291dF9fcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLumJNcIjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXNpemU6IDJyZW07IH1cblxuLmljb24tLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7piFXCI7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgZm9udC1zaXplOiAyLjVyZW07IH1cblxuLmljb24tLWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLumIRcIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTsgfVxuXG4uaWNvbi0tbWVudS1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLumI5cIjtcbiAgZm9udC1zaXplOiAzM3B4O1xuICBmb250LXNpemU6IDMuM3JlbTsgfVxuXG4uaWNvbi0tZGVsZXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7piaXCI7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgZm9udC1zaXplOiAyLjVyZW07IH1cblxuLmljb24tLWxlYXZlczpiZWZvcmUsIC5zcGxhdF9faWNvbi0tYmVzdHNlbGxlcjo6YmVmb3JlLCAuc3BsYXRfX2ljb24tLWJlc3RzZWxsZXItLWxhcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7picXCI7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgZm9udC1zaXplOiA1cmVtOyB9XG5cbi5pY29uLS1zdGFyczpiZWZvcmUsIC5zcGxhdF9faWNvbi0tYml0OmJlZm9yZSwgLnNwbGF0X19pY29uLS1iaXQtLWxhcmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7pidXCI7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgZm9udC1zaXplOiA1cmVtOyB9XG5cbi5pY29uLS1mYWNlYm9vazpiZWZvcmUge1xuICBjb2xvcjogIzNjNWE5ODtcbiAgY29udGVudDogXCLumIhcIjtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXNpemU6IDNyZW07IH1cblxuLmljb24tLWluc3RhZ3JhbTpiZWZvcmUge1xuICBjb2xvcjogIzMzNjQ4ZDtcbiAgY29udGVudDogXCLumIxcIjtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXNpemU6IDNyZW07IH1cblxuLmljb24tLWZlYXR1cmUtNDBjOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS00MGM6YmVmb3JlIHtcbiAgY29udGVudDogXCLumIBcIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTsgfVxuXG4uaWNvbi0tZmVhdHVyZS0xMDRmOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS0xMDRmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7piBXCI7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zaXplOiAxLjhyZW07IH1cblxuLmljb24tLWZlYXR1cmUtZGlzaHdhc2hlcjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZGlzaHdhc2hlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6YhlwiO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS44cmVtOyB9XG5cbi5pY29uLS1mZWF0dXJlLWZyZWV6ZXI6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWZyZWV6ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLumIlcIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTsgfVxuXG4uaWNvbi0tZmVhdHVyZS1oYWxvZ2VuOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1oYWxvZ2VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7piKXCI7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zaXplOiAxLjhyZW07IH1cblxuLmljb24tLWZlYXR1cmUtaW5kdWN0aW9uOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1pbmR1Y3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLumItcIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTsgfVxuXG4uaWNvbi0tZmVhdHVyZS1nYXM6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWdhczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Ym1wiO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS44cmVtOyB9XG5cbi5pY29uLS1mZWF0dXJlLWNlcmFtaWM6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWNlcmFtaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLumI1cIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTsgfVxuXG4uaWNvbi0tZmVhdHVyZS1taWNyb3dhdmU6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLW1pY3Jvd2F2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Yj1wiO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS44cmVtOyB9XG5cbi5pY29uLS1mZWF0dXJlLW92ZW5wcm9vZjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtb3ZlbnByb29mOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7piSXCI7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zaXplOiAxLjhyZW07IH1cblxuLmljb24tLWZlYXR1cmUtcmFkaWFudHJpbjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtcmFkaWFudHJpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Yl1wiO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS44cmVtOyB9XG5cbi5pY29uLS1mZWF0dXJlLXNvbGlkcGxhdGU6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLXNvbGlkcGxhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLumJlcIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTsgfVxuXG4uaWNvbjpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKGRhdGEtaWNvbik7IH1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogNjIuNSU7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjb2xvcjogIzY2NjtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEuMmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICBib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIC5sdC1pZTkgYm9keSB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICBib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMS40ZW07IH0gfVxuICAubHQtaWU5IGJvZHkge1xuICAgIGZvbnQtc2l6ZTogMS40ZW07IH1cblxuLnNwbGF0X190ZXh0LCAuc3BsYXRfX3RleHQtLXByaW1hcnksIC5zcGxhdF9fdGV4dC0tYmVzdHNlbGxlciwgLnNwbGF0X190ZXh0LS1zZWNvbmRhcnksIC5zcGxhdC0tbGFyZ2UgLnNwbGF0X190ZXh0LS10ZXJ0aWFyeSwgLnNwbGF0LS1sYXJnZS1hbHQgLnNwbGF0X190ZXh0LS10ZXJ0aWFyeSwgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSAuc3BsYXRfX3RleHQtLXRlcnRpYXJ5LCAuc3BsYXQtLWJpdC0tbGFyZ2UgLnNwbGF0X190ZXh0LS10ZXJ0aWFyeSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLnNwbGF0X19pY29uLS1iZXN0c2VsbGVyLCAuc3BsYXRfX2ljb24tLWJlc3RzZWxsZXItLWxhcmdlLCAuc3BsYXRfX2ljb24tLWJpdCwgLnNwbGF0X19pY29uLS1iaXQtLWxhcmdlIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnNwbGF0X19pY29uLS1iZXN0c2VsbGVyOmJlZm9yZSwgLnNwbGF0X19pY29uLS1iZXN0c2VsbGVyLS1sYXJnZTpiZWZvcmUsIC5zcGxhdF9faWNvbi0tYml0OmJlZm9yZSwgLnNwbGF0X19pY29uLS1iaXQtLWxhcmdlOmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLXRvcDogLTAuNWVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5zcGxhdCwgLnNwbGF0LS1zZWNvbmRhcnksIC5zcGxhdC0tdGVydGlhcnksIC5zcGxhdC0tbGFyZ2UtYWx0LCAuc3BsYXQtLWxhcmdlLCAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlLCAuc3BsYXQtLWJpdC0tbGFyZ2UsIC5zcGxhdC0tYmVzdHNlbGxlciwgLnNwbGF0LS1iaXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBoZWlnaHQ6IDQuNjQyODU3MTQyOWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDQuNjQyODU3MTQyOWVtOyB9XG4gIC5zcGxhdF9faW5uZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnNwbGF0X19ib3JkZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGhlaWdodDogNC42NDI4NTcxNDI5ZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA0LjY0Mjg1NzE0MjllbTtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgLnNwbGF0X190ZXh0LCAuc3BsYXRfX3RleHQtLXByaW1hcnksIC5zcGxhdF9fdGV4dC0tYmVzdHNlbGxlciwgLnNwbGF0X190ZXh0LS1zZWNvbmRhcnksIC5zcGxhdC0tbGFyZ2UgLnNwbGF0X190ZXh0LS10ZXJ0aWFyeSwgLnNwbGF0LS1sYXJnZS1hbHQgLnNwbGF0X190ZXh0LS10ZXJ0aWFyeSwgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSAuc3BsYXRfX3RleHQtLXRlcnRpYXJ5LCAuc3BsYXQtLWJpdC0tbGFyZ2UgLnNwbGF0X190ZXh0LS10ZXJ0aWFyeSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbjogMnB4IDA7XG4gICAgbWFyZ2luOiAgMC4ycmVtIDA7IH1cbiAgICAuc3BsYXRfX3RleHQtLXByaW1hcnksIC5zcGxhdF9fdGV4dC0tYmVzdHNlbGxlciB7XG4gICAgICBmb250LXNpemU6IDEuMjg1NzE0Mjg1N2VtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIC5zcGxhdF9fdGV4dC0tc2Vjb25kYXJ5IHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NTcxNDI4NTcxZW07IH1cbiAgLnNwbGF0X19pbWFnZSB7XG4gICAgd2lkdGg6IDY1JTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICAgIC5zcGxhdF9faW1hZ2Uge1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgLmx0LWllOSAuc3BsYXRfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5zcGxhdC0tc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ5MzQzO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5zcGxhdC0tdGVydGlhcnksIC5zcGxhdC0tbGFyZ2UtYWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNkZjdhO1xuICAgIGNvbG9yOiAjMjcyMzI0OyB9XG4gIC5zcGxhdC0tbGFyZ2UsIC5zcGxhdC0tbGFyZ2UtYWx0LCAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlLCAuc3BsYXQtLWJpdC0tbGFyZ2Uge1xuICAgIGhlaWdodDogMTBlbTtcbiAgICB3aWR0aDogMTBlbTtcbiAgICBmb250LXNpemU6IDAuNjY2NjY2NjY2N2VtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgICAgLnNwbGF0LS1sYXJnZSwgLnNwbGF0LS1sYXJnZS1hbHQsIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UsIC5zcGxhdC0tYml0LS1sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NTcxNDI4NTcxZW07IH0gfVxuICAgIC5sdC1pZTkgLnNwbGF0LS1sYXJnZSwgLmx0LWllOSAuc3BsYXQtLWxhcmdlLWFsdCwgLmx0LWllOSAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlLCAubHQtaWU5IC5zcGxhdC0tYml0LS1sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDAuODU3MTQyODU3MWVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLnNwbGF0LS1sYXJnZSwgLnNwbGF0LS1sYXJnZS1hbHQsIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UsIC5zcGxhdC0tYml0LS1sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43MTQyODU3MTQzZW07IH0gfVxuICAgIC5sdC1pZTkgLnNwbGF0LS1sYXJnZSwgLmx0LWllOSAuc3BsYXQtLWxhcmdlLWFsdCwgLmx0LWllOSAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlLCAubHQtaWU5IC5zcGxhdC0tYml0LS1sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDAuNzE0Mjg1NzE0M2VtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDczLjVlbSkge1xuICAgICAgLnNwbGF0LS1sYXJnZSwgLnNwbGF0LS1sYXJnZS1hbHQsIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UsIC5zcGxhdC0tYml0LS1sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtOyB9IH1cbiAgICAuc3BsYXQtLWxhcmdlIC5zcGxhdF9fdGV4dCwgLnNwbGF0LS1sYXJnZS1hbHQgLnNwbGF0X190ZXh0LCAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlIC5zcGxhdF9fdGV4dCwgLnNwbGF0LS1iaXQtLWxhcmdlIC5zcGxhdF9fdGV4dCwgLnNwbGF0LS1sYXJnZSAuc3BsYXRfX3RleHQtLXByaW1hcnksIC5zcGxhdC0tbGFyZ2UtYWx0IC5zcGxhdF9fdGV4dC0tcHJpbWFyeSwgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSAuc3BsYXRfX3RleHQtLXByaW1hcnksIC5zcGxhdC0tYml0LS1sYXJnZSAuc3BsYXRfX3RleHQtLXByaW1hcnksIC5zcGxhdC0tbGFyZ2UgLnNwbGF0X190ZXh0LS1iZXN0c2VsbGVyLCAuc3BsYXQtLWxhcmdlLWFsdCAuc3BsYXRfX3RleHQtLWJlc3RzZWxsZXIsIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UgLnNwbGF0X190ZXh0LS1iZXN0c2VsbGVyLCAuc3BsYXQtLWJpdC0tbGFyZ2UgLnNwbGF0X190ZXh0LS1iZXN0c2VsbGVyLCAuc3BsYXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tc2Vjb25kYXJ5LCAuc3BsYXQtLWxhcmdlLWFsdCAuc3BsYXRfX3RleHQtLXNlY29uZGFyeSwgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSAuc3BsYXRfX3RleHQtLXNlY29uZGFyeSwgLnNwbGF0LS1iaXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tc2Vjb25kYXJ5LCAuc3BsYXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tdGVydGlhcnksIC5zcGxhdC0tbGFyZ2UtYWx0IC5zcGxhdF9fdGV4dC0tdGVydGlhcnksIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UgLnNwbGF0X190ZXh0LS10ZXJ0aWFyeSwgLnNwbGF0LS1iaXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tdGVydGlhcnkge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbWFyZ2luOiA2cHggMDtcbiAgICAgIG1hcmdpbjogIDAuNnJlbSAwOyB9XG4gICAgICAuc3BsYXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tcHJpbWFyeSwgLnNwbGF0LS1sYXJnZS1hbHQgLnNwbGF0X190ZXh0LS1wcmltYXJ5LCAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlIC5zcGxhdF9fdGV4dC0tcHJpbWFyeSwgLnNwbGF0LS1iaXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tcHJpbWFyeSwgLnNwbGF0LS1sYXJnZSAuc3BsYXRfX3RleHQtLWJlc3RzZWxsZXIsIC5zcGxhdC0tbGFyZ2UtYWx0IC5zcGxhdF9fdGV4dC0tYmVzdHNlbGxlciwgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSAuc3BsYXRfX3RleHQtLWJlc3RzZWxsZXIsIC5zcGxhdC0tYml0LS1sYXJnZSAuc3BsYXRfX3RleHQtLWJlc3RzZWxsZXIge1xuICAgICAgICBmb250LXNpemU6IDEuNzE0Mjg1NzE0M2VtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAuc3BsYXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tc2Vjb25kYXJ5LCAuc3BsYXQtLWxhcmdlLWFsdCAuc3BsYXRfX3RleHQtLXNlY29uZGFyeSwgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSAuc3BsYXRfX3RleHQtLXNlY29uZGFyeSwgLnNwbGF0LS1iaXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tc2Vjb25kYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjE0Mjg1NzE0MjllbTsgfVxuICAgICAgLnNwbGF0LS1sYXJnZSAuc3BsYXRfX3RleHQtLXRlcnRpYXJ5LCAuc3BsYXQtLWxhcmdlLWFsdCAuc3BsYXRfX3RleHQtLXRlcnRpYXJ5LCAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlIC5zcGxhdF9fdGV4dC0tdGVydGlhcnksIC5zcGxhdC0tYml0LS1sYXJnZSAuc3BsYXRfX3RleHQtLXRlcnRpYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc4NTcxNDI4NTdlbTsgfVxuICAuc3BsYXQtLWxhcmdlLWFsdCAuc3BsYXRfX3RleHQtLXByaW1hcnksIC5zcGxhdC0tbGFyZ2UtYWx0IC5zcGxhdF9fdGV4dC0tYmVzdHNlbGxlciB7XG4gICAgZm9udC1zaXplOiAyLjg1NzE0Mjg1NzFlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnNwbGF0LS1sYXJnZS1hbHQgLnNwbGF0X190ZXh0LS1zZWNvbmRhcnkge1xuICAgIGZvbnQtc2l6ZTogMS43ODU3MTQyODU3ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4wOGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLnNwbGF0LS1sYXJnZS1hbHQgLnNwbGF0X190ZXh0LS10ZXJ0aWFyeSB7XG4gICAgZm9udC1zaXplOiAwLjkyODU3MTQyODZlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjE1Mzg0NjE1MzhlbTsgfVxuICAuc3BsYXQtLWJlc3RzZWxsZXIsIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICMyNzIzMjQ7XG4gICAgaGVpZ2h0OiA1LjU3MTQyODU3MTRlbTtcbiAgICBwYWRkaW5nOiAwLjcxNDI4NTcxNDNlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUuNTcxNDI4NTcxNGVtO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAuc3BsYXRfX2ljb24tLWJlc3RzZWxsZXIge1xuICAgIGZvbnQtc2l6ZTogNC45Mjg1NzE0Mjg2ZW07IH1cbiAgICAuc3BsYXRfX2ljb24tLWJlc3RzZWxsZXI6OmJlZm9yZSB7XG4gICAgICBjb2xvcjogIzZkOTM0MzsgfVxuICAuc3BsYXRfX3RleHQtLWJlc3RzZWxsZXIge1xuICAgIGZvbnQtc2l6ZTogMC44NTcxNDI4NTcxZW07IH1cbiAgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMS40Mjg1NzE0Mjg2ZW07XG4gICAgd2lkdGg6IDExLjQyODU3MTQyODZlbTsgfVxuICAgIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UgLnNwbGF0X19ib3JkZXIge1xuICAgICAgYm9yZGVyOiAycHggZG90dGVkICMyNzIzMjQ7XG4gICAgICBoZWlnaHQ6IDExLjQyODU3MTQyODZlbTtcbiAgICAgIHdpZHRoOiAxMS40Mjg1NzE0Mjg2ZW07XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBwYWRkaW5nOiAgMCAycmVtOyB9XG4gIC5zcGxhdF9faWNvbi0tYmVzdHNlbGxlci0tbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogOC43ODU3MTQyODU3ZW07IH1cbiAgICAuc3BsYXRfX2ljb24tLWJlc3RzZWxsZXItLWxhcmdlOmJlZm9yZSB7XG4gICAgICBjb2xvcjogIzZkOTM0MzsgfVxuICAuc3BsYXQtLWJpdCwgLnNwbGF0LS1iaXQtLWxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ5MzQzO1xuICAgIGhlaWdodDogNC42NDI4NTcxNDI5ZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA0LjY0Mjg1NzE0MjllbTsgfVxuICAuc3BsYXQtLWp1bCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwOyB9XG4gIC5zcGxhdF9faWNvbi0tYml0IHtcbiAgICBmb250LXNpemU6IDQuMDcxNDI4NTcxNGVtOyB9XG4gICAgLnNwbGF0X19pY29uLS1iaXQ6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5zcGxhdF9fdGV4dC0tYml0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDAuNzg1NzE0Mjg1N2VtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBhZGRpbmc6IDAuMjE0Mjg1NzE0M2VtIDAuNDI4NTcxNDI4NmVtIDA7IH1cbiAgLnNwbGF0LS1iaXQtLWxhcmdlIHtcbiAgICBoZWlnaHQ6IDExLjQyODU3MTQyODZlbTtcbiAgICB3aWR0aDogMTEuNDI4NTcxNDI4NmVtOyB9XG4gICAgLnNwbGF0LS1iaXQtLWxhcmdlIC5zcGxhdF9fdGV4dC0tYml0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS43MTQyODU3MTQzZW07XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gIC5zcGxhdF9faWNvbi0tYml0LS1sYXJnZSB7XG4gICAgZm9udC1zaXplOiA5LjI4NTcxNDI4NTdlbTsgfVxuICAgIC5zcGxhdF9faWNvbi0tYml0LS1sYXJnZTpiZWZvcmUge1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDsgfVxuXG5uYXYgdWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50aWNrLWxpc3RfX2l0ZW06YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS00MGM6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLTEwNGY6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWRpc2h3YXNoZXI6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWZyZWV6ZXI6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWhhbG9nZW46YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWluZHVjdGlvbjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZ2FzOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1jZXJhbWljOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1taWNyb3dhdmU6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLW92ZW5wcm9vZjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtcmFkaWFudHJpbjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtc29saWRwbGF0ZTpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiAtMC4xNDI4NTcxNDI5ZW07XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG5cbi50aWNrLWxpc3RfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICAudGljay1saXN0X19pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMi41ZW07IH1cbiAgICAgIC50aWNrLWxpc3RfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIC5sdC1pZTkgLnRpY2stbGlzdF9faXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMi41ZW07IH1cbiAgICAubHQtaWU5IC50aWNrLWxpc3RfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmZlYXR1cmUtbGlzdF9faXRlbS5kZWFjdGl2ZSwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS00MGMsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtMTA0ZiwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1kaXNod2FzaGVyLCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWZyZWV6ZXIsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtaGFsb2dlbiwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1pbmR1Y3Rpb24sIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZ2FzLCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWNlcmFtaWMsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtbWljcm93YXZlLCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLW92ZW5wcm9vZiwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1yYWRpYW50cmluLCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLXNvbGlkcGxhdGUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0uZGVhY3RpdmU6YmVmb3JlLCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLTQwYzpiZWZvcmUsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtMTA0ZjpiZWZvcmUsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZGlzaHdhc2hlcjpiZWZvcmUsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZnJlZXplcjpiZWZvcmUsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtaGFsb2dlbjpiZWZvcmUsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtaW5kdWN0aW9uOmJlZm9yZSwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1nYXM6YmVmb3JlLCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWNlcmFtaWM6YmVmb3JlLCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLW1pY3Jvd2F2ZTpiZWZvcmUsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtb3ZlbnByb29mOmJlZm9yZSwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1yYWRpYW50cmluOmJlZm9yZSwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1zb2xpZHBsYXRlOmJlZm9yZSB7XG4gIGNvbG9yOiAjOTk5OyB9XG5cbi5mZWF0dXJlLWxpc3RfX2l0ZW0uZGVhY3RpdmUgLmZlYXR1cmUtbGlzdF9faXRlbS10ZXh0LCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLTQwYyAuZmVhdHVyZS1saXN0X19pdGVtLXRleHQsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtMTA0ZiAuZmVhdHVyZS1saXN0X19pdGVtLXRleHQsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZGlzaHdhc2hlciAuZmVhdHVyZS1saXN0X19pdGVtLXRleHQsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZnJlZXplciAuZmVhdHVyZS1saXN0X19pdGVtLXRleHQsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtaGFsb2dlbiAuZmVhdHVyZS1saXN0X19pdGVtLXRleHQsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtaW5kdWN0aW9uIC5mZWF0dXJlLWxpc3RfX2l0ZW0tdGV4dCwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1nYXMgLmZlYXR1cmUtbGlzdF9faXRlbS10ZXh0LCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWNlcmFtaWMgLmZlYXR1cmUtbGlzdF9faXRlbS10ZXh0LCAuZGVhY3RpdmUuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLW1pY3Jvd2F2ZSAuZmVhdHVyZS1saXN0X19pdGVtLXRleHQsIC5kZWFjdGl2ZS5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtb3ZlbnByb29mIC5mZWF0dXJlLWxpc3RfX2l0ZW0tdGV4dCwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1yYWRpYW50cmluIC5mZWF0dXJlLWxpc3RfX2l0ZW0tdGV4dCwgLmRlYWN0aXZlLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1zb2xpZHBsYXRlIC5mZWF0dXJlLWxpc3RfX2l0ZW0tdGV4dCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoOyB9XG5cbi5mZWF0dXJlLWxpc3RfX2l0ZW06YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLTQwYzpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtMTA0ZjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZGlzaHdhc2hlcjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtZnJlZXplcjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtaGFsb2dlbjpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtaW5kdWN0aW9uOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1nYXM6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLWNlcmFtaWM6YmVmb3JlLCAuZmVhdHVyZS1saXN0X19pdGVtLS1mZWF0dXJlLW1pY3Jvd2F2ZTpiZWZvcmUsIC5mZWF0dXJlLWxpc3RfX2l0ZW0tLWZlYXR1cmUtb3ZlbnByb29mOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1yYWRpYW50cmluOmJlZm9yZSwgLmZlYXR1cmUtbGlzdF9faXRlbS0tZmVhdHVyZS1zb2xpZHBsYXRlOmJlZm9yZSB7XG4gIGNvbG9yOiAjMjcyMzI0O1xuICBmb250LXNpemU6IDEuNzg1NzE0Mjg1N2VtOyB9XG5cbi5idXR0b24tLXNtYWxsLCAucGVybWlzc2lvbi1iYXJfX2J1dHRvbiwgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwsIC5idXR0b24tLXNlY29uZGFyeS0tc21hbGwsIC5jaGVja291dF9fYmFza2V0LWFuY2hvciwgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsLCAuYnV0dG9uLCAuY2hlY2tvdXRfX3N1Ym1pdCwgLmNoZWNrb3V0X19zdWJtaXQtLXVzLCAuZGlzY291bnRfX3N1Ym1pdCwgLmJ1dHRvbi0tcHJpbWFyeSwgLmJ1dHRvbi0tc2Vjb25kYXJ5LCAuYnV0dG9uLS10ZXJ0aWFyeSwgLmJ1dHRvbi0tYnV5IHtcbiAgYm9yZGVyOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwLjNlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAwLjhlbSAzZW0gMC42ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZkOTM0MztcbiAgYm9yZGVyLWNvbG9yOiAjNjA4MTNiOyB9XG4gIC5idXR0b24tLXNtYWxsOmhvdmVyLCAucGVybWlzc2lvbi1iYXJfX2J1dHRvbjpob3ZlciwgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGw6aG92ZXIsIC5idXR0b24tLXNlY29uZGFyeS0tc21hbGw6aG92ZXIsIC5jaGVja291dF9fYmFza2V0LWFuY2hvcjpob3ZlciwgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsOmhvdmVyLCAuYnV0dG9uOmhvdmVyLCAuY2hlY2tvdXRfX3N1Ym1pdDpob3ZlciwgLmNoZWNrb3V0X19zdWJtaXQtLXVzOmhvdmVyLCAuZGlzY291bnRfX3N1Ym1pdDpob3ZlciwgLmJ1dHRvbi0tcHJpbWFyeTpob3ZlciwgLmJ1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLS10ZXJ0aWFyeTpob3ZlciwgLmJ1dHRvbi0tYnV5OmhvdmVyLCAuYnV0dG9uLS1zbWFsbDphY3RpdmUsIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uOmFjdGl2ZSwgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGw6YWN0aXZlLCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsOmFjdGl2ZSwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yOmFjdGl2ZSwgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsOmFjdGl2ZSwgLmJ1dHRvbjphY3RpdmUsIC5jaGVja291dF9fc3VibWl0OmFjdGl2ZSwgLmNoZWNrb3V0X19zdWJtaXQtLXVzOmFjdGl2ZSwgLmRpc2NvdW50X19zdWJtaXQ6YWN0aXZlLCAuYnV0dG9uLS1wcmltYXJ5OmFjdGl2ZSwgLmJ1dHRvbi0tc2Vjb25kYXJ5OmFjdGl2ZSwgLmJ1dHRvbi0tdGVydGlhcnk6YWN0aXZlLCAuYnV0dG9uLS1idXk6YWN0aXZlLCAuaG92ZXIuYnV0dG9uLS1zbWFsbCwgLmhvdmVyLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5ob3Zlci5idXR0b24tLXByaW1hcnktLXNtYWxsLCAuaG92ZXIuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAuaG92ZXIuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5ob3Zlci5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbCwgLmhvdmVyLmJ1dHRvbiwgLmhvdmVyLmNoZWNrb3V0X19zdWJtaXQsIC5ob3Zlci5jaGVja291dF9fc3VibWl0LS11cywgLmhvdmVyLmRpc2NvdW50X19zdWJtaXQsIC5ob3Zlci5idXR0b24tLXByaW1hcnksIC5ob3Zlci5idXR0b24tLXNlY29uZGFyeSwgLmhvdmVyLmJ1dHRvbi0tdGVydGlhcnksIC5ob3Zlci5idXR0b24tLWJ1eSwgLnByZXNzZWQuYnV0dG9uLS1zbWFsbCwgLnByZXNzZWQucGVybWlzc2lvbi1iYXJfX2J1dHRvbiwgLnByZXNzZWQuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLnByZXNzZWQuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAucHJlc3NlZC5jaGVja291dF9fYmFza2V0LWFuY2hvciwgLnByZXNzZWQuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIC5wcmVzc2VkLmJ1dHRvbiwgLnByZXNzZWQuY2hlY2tvdXRfX3N1Ym1pdCwgLnByZXNzZWQuY2hlY2tvdXRfX3N1Ym1pdC0tdXMsIC5wcmVzc2VkLmRpc2NvdW50X19zdWJtaXQsIC5wcmVzc2VkLmJ1dHRvbi0tcHJpbWFyeSwgLnByZXNzZWQuYnV0dG9uLS1zZWNvbmRhcnksIC5wcmVzc2VkLmJ1dHRvbi0tdGVydGlhcnksIC5wcmVzc2VkLmJ1dHRvbi0tYnV5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2FhNTRiOyB9XG4gIC5idXR0b24tLXNtYWxsOmRpc2FibGVkLCAucGVybWlzc2lvbi1iYXJfX2J1dHRvbjpkaXNhYmxlZCwgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGw6ZGlzYWJsZWQsIC5idXR0b24tLXNlY29uZGFyeS0tc21hbGw6ZGlzYWJsZWQsIC5jaGVja291dF9fYmFza2V0LWFuY2hvcjpkaXNhYmxlZCwgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsOmRpc2FibGVkLCAuYnV0dG9uOmRpc2FibGVkLCAuY2hlY2tvdXRfX3N1Ym1pdDpkaXNhYmxlZCwgLmNoZWNrb3V0X19zdWJtaXQtLXVzOmRpc2FibGVkLCAuZGlzY291bnRfX3N1Ym1pdDpkaXNhYmxlZCwgLmJ1dHRvbi0tcHJpbWFyeTpkaXNhYmxlZCwgLmJ1dHRvbi0tc2Vjb25kYXJ5OmRpc2FibGVkLCAuYnV0dG9uLS10ZXJ0aWFyeTpkaXNhYmxlZCwgLmJ1dHRvbi0tYnV5OmRpc2FibGVkLCAuZGlzYWJsZWQuYnV0dG9uLS1zbWFsbCwgLmRpc2FibGVkLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5kaXNhYmxlZC5idXR0b24tLXByaW1hcnktLXNtYWxsLCAuZGlzYWJsZWQuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAuZGlzYWJsZWQuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5kaXNhYmxlZC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbCwgLmRpc2FibGVkLmJ1dHRvbiwgLmRpc2FibGVkLmNoZWNrb3V0X19zdWJtaXQsIC5kaXNhYmxlZC5jaGVja291dF9fc3VibWl0LS11cywgLmRpc2FibGVkLmRpc2NvdW50X19zdWJtaXQsIC5kaXNhYmxlZC5idXR0b24tLXByaW1hcnksIC5kaXNhYmxlZC5idXR0b24tLXNlY29uZGFyeSwgLmRpc2FibGVkLmJ1dHRvbi0tdGVydGlhcnksIC5kaXNhYmxlZC5idXR0b24tLWJ1eSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZkOTM0MzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMjVlbSkge1xuICAgIC5idXR0b24tLXNtYWxsLCAucGVybWlzc2lvbi1iYXJfX2J1dHRvbiwgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwsIC5idXR0b24tLXNlY29uZGFyeS0tc21hbGwsIC5jaGVja291dF9fYmFza2V0LWFuY2hvciwgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsLCAuYnV0dG9uLCAuY2hlY2tvdXRfX3N1Ym1pdCwgLmNoZWNrb3V0X19zdWJtaXQtLXVzLCAuZGlzY291bnRfX3N1Ym1pdCwgLmJ1dHRvbi0tcHJpbWFyeSwgLmJ1dHRvbi0tc2Vjb25kYXJ5LCAuYnV0dG9uLS10ZXJ0aWFyeSwgLmJ1dHRvbi0tYnV5IHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH0gfVxuICAubHQtaWU5IC5idXR0b24tLXNtYWxsLCAubHQtaWU5IC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uLCAubHQtaWU5IC5idXR0b24tLXByaW1hcnktLXNtYWxsLCAubHQtaWU5IC5idXR0b24tLXNlY29uZGFyeS0tc21hbGwsIC5sdC1pZTkgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yLCAubHQtaWU5IC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbCwgLmx0LWllOSAuYnV0dG9uLCAubHQtaWU5IC5jaGVja291dF9fc3VibWl0LCAubHQtaWU5IC5jaGVja291dF9fc3VibWl0LS11cywgLmx0LWllOSAuZGlzY291bnRfX3N1Ym1pdCwgLmx0LWllOSAuYnV0dG9uLS1wcmltYXJ5LCAubHQtaWU5IC5idXR0b24tLXNlY29uZGFyeSwgLmx0LWllOSAuYnV0dG9uLS10ZXJ0aWFyeSwgLmx0LWllOSAuYnV0dG9uLS1idXkge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmJ1dHRvbi0tc21hbGw6aG92ZXIsIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uOmhvdmVyLCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbDpob3ZlciwgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbDpob3ZlciwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yOmhvdmVyLCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGw6aG92ZXIsIC5idXR0b246aG92ZXIsIC5jaGVja291dF9fc3VibWl0OmhvdmVyLCAuY2hlY2tvdXRfX3N1Ym1pdC0tdXM6aG92ZXIsIC5kaXNjb3VudF9fc3VibWl0OmhvdmVyLCAuYnV0dG9uLS1wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLS1zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tLXRlcnRpYXJ5OmhvdmVyLCAuYnV0dG9uLS1idXk6aG92ZXIsIC5ob3Zlci5idXR0b24tLXNtYWxsLCAuaG92ZXIucGVybWlzc2lvbi1iYXJfX2J1dHRvbiwgLmhvdmVyLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwsIC5ob3Zlci5idXR0b24tLXNlY29uZGFyeS0tc21hbGwsIC5ob3Zlci5jaGVja291dF9fYmFza2V0LWFuY2hvciwgLmhvdmVyLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsLCAuaG92ZXIuYnV0dG9uLCAuaG92ZXIuY2hlY2tvdXRfX3N1Ym1pdCwgLmhvdmVyLmNoZWNrb3V0X19zdWJtaXQtLXVzLCAuaG92ZXIuZGlzY291bnRfX3N1Ym1pdCwgLmhvdmVyLmJ1dHRvbi0tcHJpbWFyeSwgLmhvdmVyLmJ1dHRvbi0tc2Vjb25kYXJ5LCAuaG92ZXIuYnV0dG9uLS10ZXJ0aWFyeSwgLmhvdmVyLmJ1dHRvbi0tYnV5LCAuYnV0dG9uLS1zbWFsbDphY3RpdmUsIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uOmFjdGl2ZSwgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGw6YWN0aXZlLCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsOmFjdGl2ZSwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yOmFjdGl2ZSwgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsOmFjdGl2ZSwgLmJ1dHRvbjphY3RpdmUsIC5jaGVja291dF9fc3VibWl0OmFjdGl2ZSwgLmNoZWNrb3V0X19zdWJtaXQtLXVzOmFjdGl2ZSwgLmRpc2NvdW50X19zdWJtaXQ6YWN0aXZlLCAuYnV0dG9uLS1wcmltYXJ5OmFjdGl2ZSwgLmJ1dHRvbi0tc2Vjb25kYXJ5OmFjdGl2ZSwgLmJ1dHRvbi0tdGVydGlhcnk6YWN0aXZlLCAuYnV0dG9uLS1idXk6YWN0aXZlLCAuYnV0dG9uLS1zbWFsbDpmb2N1cywgLnBlcm1pc3Npb24tYmFyX19idXR0b246Zm9jdXMsIC5idXR0b24tLXByaW1hcnktLXNtYWxsOmZvY3VzLCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsOmZvY3VzLCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3I6Zm9jdXMsIC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbDpmb2N1cywgLmJ1dHRvbjpmb2N1cywgLmNoZWNrb3V0X19zdWJtaXQ6Zm9jdXMsIC5jaGVja291dF9fc3VibWl0LS11czpmb2N1cywgLmRpc2NvdW50X19zdWJtaXQ6Zm9jdXMsIC5idXR0b24tLXByaW1hcnk6Zm9jdXMsIC5idXR0b24tLXNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi0tdGVydGlhcnk6Zm9jdXMsIC5idXR0b24tLWJ1eTpmb2N1cywgLnByZXNzZWQuYnV0dG9uLS1zbWFsbCwgLnByZXNzZWQucGVybWlzc2lvbi1iYXJfX2J1dHRvbiwgLnByZXNzZWQuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLnByZXNzZWQuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAucHJlc3NlZC5jaGVja291dF9fYmFza2V0LWFuY2hvciwgLnByZXNzZWQuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIC5wcmVzc2VkLmJ1dHRvbiwgLnByZXNzZWQuY2hlY2tvdXRfX3N1Ym1pdCwgLnByZXNzZWQuY2hlY2tvdXRfX3N1Ym1pdC0tdXMsIC5wcmVzc2VkLmRpc2NvdW50X19zdWJtaXQsIC5wcmVzc2VkLmJ1dHRvbi0tcHJpbWFyeSwgLnByZXNzZWQuYnV0dG9uLS1zZWNvbmRhcnksIC5wcmVzc2VkLmJ1dHRvbi0tdGVydGlhcnksIC5wcmVzc2VkLmJ1dHRvbi0tYnV5IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmJ1dHRvbi0tc21hbGw6YWN0aXZlLCAucGVybWlzc2lvbi1iYXJfX2J1dHRvbjphY3RpdmUsIC5idXR0b24tLXByaW1hcnktLXNtYWxsOmFjdGl2ZSwgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbDphY3RpdmUsIC5jaGVja291dF9fYmFza2V0LWFuY2hvcjphY3RpdmUsIC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbDphY3RpdmUsIC5idXR0b246YWN0aXZlLCAuY2hlY2tvdXRfX3N1Ym1pdDphY3RpdmUsIC5jaGVja291dF9fc3VibWl0LS11czphY3RpdmUsIC5kaXNjb3VudF9fc3VibWl0OmFjdGl2ZSwgLmJ1dHRvbi0tcHJpbWFyeTphY3RpdmUsIC5idXR0b24tLXNlY29uZGFyeTphY3RpdmUsIC5idXR0b24tLXRlcnRpYXJ5OmFjdGl2ZSwgLmJ1dHRvbi0tYnV5OmFjdGl2ZSwgLmJ1dHRvbi0tc21hbGw6Zm9jdXMsIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uOmZvY3VzLCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbDpmb2N1cywgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbDpmb2N1cywgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yOmZvY3VzLCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGw6Zm9jdXMsIC5idXR0b246Zm9jdXMsIC5jaGVja291dF9fc3VibWl0OmZvY3VzLCAuY2hlY2tvdXRfX3N1Ym1pdC0tdXM6Zm9jdXMsIC5kaXNjb3VudF9fc3VibWl0OmZvY3VzLCAuYnV0dG9uLS1wcmltYXJ5OmZvY3VzLCAuYnV0dG9uLS1zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b24tLXRlcnRpYXJ5OmZvY3VzLCAuYnV0dG9uLS1idXk6Zm9jdXMsIC5wcmVzc2VkLmJ1dHRvbi0tc21hbGwsIC5wcmVzc2VkLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5wcmVzc2VkLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwsIC5wcmVzc2VkLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCwgLnByZXNzZWQuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5wcmVzc2VkLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsLCAucHJlc3NlZC5idXR0b24sIC5wcmVzc2VkLmNoZWNrb3V0X19zdWJtaXQsIC5wcmVzc2VkLmNoZWNrb3V0X19zdWJtaXQtLXVzLCAucHJlc3NlZC5kaXNjb3VudF9fc3VibWl0LCAucHJlc3NlZC5idXR0b24tLXByaW1hcnksIC5wcmVzc2VkLmJ1dHRvbi0tc2Vjb25kYXJ5LCAucHJlc3NlZC5idXR0b24tLXRlcnRpYXJ5LCAucHJlc3NlZC5idXR0b24tLWJ1eSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwLjNlbTtcbiAgICBwYWRkaW5nLXRvcDogMC42ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuOGVtOyB9XG4gIC5idXR0b24tLXNtYWxsOmRpc2FibGVkLCAucGVybWlzc2lvbi1iYXJfX2J1dHRvbjpkaXNhYmxlZCwgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGw6ZGlzYWJsZWQsIC5idXR0b24tLXNlY29uZGFyeS0tc21hbGw6ZGlzYWJsZWQsIC5jaGVja291dF9fYmFza2V0LWFuY2hvcjpkaXNhYmxlZCwgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsOmRpc2FibGVkLCAuYnV0dG9uOmRpc2FibGVkLCAuY2hlY2tvdXRfX3N1Ym1pdDpkaXNhYmxlZCwgLmNoZWNrb3V0X19zdWJtaXQtLXVzOmRpc2FibGVkLCAuZGlzY291bnRfX3N1Ym1pdDpkaXNhYmxlZCwgLmJ1dHRvbi0tcHJpbWFyeTpkaXNhYmxlZCwgLmJ1dHRvbi0tc2Vjb25kYXJ5OmRpc2FibGVkLCAuYnV0dG9uLS10ZXJ0aWFyeTpkaXNhYmxlZCwgLmJ1dHRvbi0tYnV5OmRpc2FibGVkLCAuZGlzYWJsZWQuYnV0dG9uLS1zbWFsbCwgLmRpc2FibGVkLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5kaXNhYmxlZC5idXR0b24tLXByaW1hcnktLXNtYWxsLCAuZGlzYWJsZWQuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAuZGlzYWJsZWQuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5kaXNhYmxlZC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbCwgLmRpc2FibGVkLmJ1dHRvbiwgLmRpc2FibGVkLmNoZWNrb3V0X19zdWJtaXQsIC5kaXNhYmxlZC5jaGVja291dF9fc3VibWl0LS11cywgLmRpc2FibGVkLmRpc2NvdW50X19zdWJtaXQsIC5kaXNhYmxlZC5idXR0b24tLXByaW1hcnksIC5kaXNhYmxlZC5idXR0b24tLXNlY29uZGFyeSwgLmRpc2FibGVkLmJ1dHRvbi0tdGVydGlhcnksIC5kaXNhYmxlZC5idXR0b24tLWJ1eSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMC4zZW07XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgcGFkZGluZy10b3A6IDAuOGVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjZlbTsgfVxuXG4uYnV0dG9uLS1wcmltYXJ5LCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZDkzNDM7XG4gIGJvcmRlci1jb2xvcjogIzYwODEzYjsgfVxuICAuYnV0dG9uLS1wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbDpob3ZlciwgLmJ1dHRvbi0tcHJpbWFyeTphY3RpdmUsIC5idXR0b24tLXByaW1hcnktLXNtYWxsOmFjdGl2ZSwgLmJ1dHRvbi0tcHJpbWFyeS5ob3ZlciwgLmhvdmVyLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwsIC5idXR0b24tLXByaW1hcnkucHJlc3NlZCwgLnByZXNzZWQuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdhYTU0YjsgfVxuICAuYnV0dG9uLS1wcmltYXJ5OmRpc2FibGVkLCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbDpkaXNhYmxlZCwgLmJ1dHRvbi0tcHJpbWFyeS5kaXNhYmxlZCwgLmRpc2FibGVkLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2ZDkzNDM7IH1cblxuLmJ1dHRvbi0tc2Vjb25kYXJ5LCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsLCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg0ZDY0O1xuICBib3JkZXItY29sb3I6ICMyZjQwNTQ7IH1cbiAgLmJ1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsOmhvdmVyLCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3I6aG92ZXIsIC5idXR0b24tLXNlY29uZGFyeTphY3RpdmUsIC5idXR0b24tLXNlY29uZGFyeS0tc21hbGw6YWN0aXZlLCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3I6YWN0aXZlLCAuYnV0dG9uLS1zZWNvbmRhcnkuaG92ZXIsIC5ob3Zlci5idXR0b24tLXNlY29uZGFyeS0tc21hbGwsIC5ob3Zlci5jaGVja291dF9fYmFza2V0LWFuY2hvciwgLmJ1dHRvbi0tc2Vjb25kYXJ5LnByZXNzZWQsIC5wcmVzc2VkLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCwgLnByZXNzZWQuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MTVhNzQ7IH1cbiAgLmJ1dHRvbi0tc2Vjb25kYXJ5OmRpc2FibGVkLCAuYnV0dG9uLS1zZWNvbmRhcnktLXNtYWxsOmRpc2FibGVkLCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3I6ZGlzYWJsZWQsIC5idXR0b24tLXNlY29uZGFyeS5kaXNhYmxlZCwgLmRpc2FibGVkLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCwgLmRpc2FibGVkLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg0ZDY0OyB9XG5cbi5idXR0b24tLXRlcnRpYXJ5LCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzUzNTM1O1xuICBib3JkZXItY29sb3I6ICMyMzIzMjM7IH1cbiAgLmJ1dHRvbi0tdGVydGlhcnk6aG92ZXIsIC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbDpob3ZlciwgLmJ1dHRvbi0tdGVydGlhcnk6YWN0aXZlLCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGw6YWN0aXZlLCAuYnV0dG9uLS10ZXJ0aWFyeS5ob3ZlciwgLmhvdmVyLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsLCAuYnV0dG9uLS10ZXJ0aWFyeS5wcmVzc2VkLCAucHJlc3NlZC5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQyNDI0MjsgfVxuICAuYnV0dG9uLS10ZXJ0aWFyeTpkaXNhYmxlZCwgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsOmRpc2FibGVkLCAuYnV0dG9uLS10ZXJ0aWFyeS5kaXNhYmxlZCwgLmRpc2FibGVkLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzUzNTM1OyB9XG5cbi5idXR0b24tLWJ1eSwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNWVtIDNlbSAwLjNlbTtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmJ1dHRvbi0tYnV5OmJlZm9yZSwgLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMzc1ZW07XG4gICAgbWFyZ2luLXRvcDogLTAuMzc1ZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC4yNWVtOyB9XG5cblt0eXBlPXRlbF0sXG5bdHlwZT1lbWFpbF0sXG5bdHlwZT1udW1iZXJdLFxuW3R5cGU9dGV4dF0sXG5bdHlwZT1zZWFyY2hdLCB0ZXh0YXJlYSwgc2VsZWN0IHtcbiAgbWFyZ2luOiAxMHB4IDAgMjBweDtcbiAgbWFyZ2luOiAgMXJlbSAwIDJyZW07IH1cblxuW3R5cGU9dGVsXSxcblt0eXBlPWVtYWlsXSxcblt0eXBlPW51bWJlcl0sXG5bdHlwZT10ZXh0XSxcblt0eXBlPXNlYXJjaF0sIHRleHRhcmVhLCBzZWxlY3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA1MHB4O1xuICBsaW5lLWhlaWdodDogMS4zO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIHBhZGRpbmc6IDEwcHggMThweDtcbiAgcGFkZGluZzogIDFyZW0gMS44cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICBbdHlwZT10ZWxdLFxuICAgIFt0eXBlPWVtYWlsXSxcbiAgICBbdHlwZT1udW1iZXJdLFxuICAgIFt0eXBlPXRleHRdLFxuICAgIFt0eXBlPXNlYXJjaF0sIHRleHRhcmVhLCBzZWxlY3Qge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBwYWRkaW5nOiAxMHB4IDE4cHg7XG4gICAgICBwYWRkaW5nOiAgMXJlbSAxLjhyZW07IH0gfVxuICAubHQtaWU5IFt0eXBlPXRlbF0sIC5sdC1pZTlcbiAgW3R5cGU9ZW1haWxdLCAubHQtaWU5XG4gIFt0eXBlPW51bWJlcl0sIC5sdC1pZTlcbiAgW3R5cGU9dGV4dF0sIC5sdC1pZTlcbiAgW3R5cGU9c2VhcmNoXSwgLmx0LWllOSB0ZXh0YXJlYSwgLmx0LWllOSBzZWxlY3Qge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgcGFkZGluZzogMTBweCAxOHB4O1xuICAgIHBhZGRpbmc6ICAxcmVtIDEuOHJlbTsgfVxuXG4ucGVybWlzc2lvbi1iYXJfX2xhYmVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAubHQtaWUxMCAucGVybWlzc2lvbi1iYXJfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG5bdHlwZT1yYWRpb10gKyBsYWJlbCwgW3R5cGU9Y2hlY2tib3hdICsgbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIG1pbi1oZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbjogNXB4IDA7XG4gIG1hcmdpbjogIDAuNXJlbSAwO1xuICBwYWRkaW5nOiAwIDAgMCAzMHB4O1xuICBwYWRkaW5nOiAgMCAwIDAgM3JlbTsgfVxuXG4ubnVtYmVyLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDEwcHggMCAyMHB4O1xuICBtYXJnaW46ICAxcmVtIDAgMnJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gICAgLm51bWJlci1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7IH0gfVxuICAubHQtaWU5IC5udW1iZXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuXG5bdHlwZT10ZWxdLFxuW3R5cGU9ZW1haWxdLFxuW3R5cGU9bnVtYmVyXSxcblt0eXBlPXRleHRdLFxuW3R5cGU9c2VhcmNoXSwgdGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIFt0eXBlPXRlbF06Zm9jdXMsXG4gIFt0eXBlPWVtYWlsXTpmb2N1cyxcbiAgW3R5cGU9bnVtYmVyXTpmb2N1cyxcbiAgW3R5cGU9dGV4dF06Zm9jdXMsXG4gIFt0eXBlPXNlYXJjaF06Zm9jdXMsIHRleHRhcmVhOmZvY3VzLCAuZm9jdXNbdHlwZT10ZWxdLFxuICAuZm9jdXNbdHlwZT1lbWFpbF0sXG4gIC5mb2N1c1t0eXBlPW51bWJlcl0sXG4gIC5mb2N1c1t0eXBlPXRleHRdLFxuICAuZm9jdXNbdHlwZT1zZWFyY2hdLCB0ZXh0YXJlYS5mb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNzsgfVxuXG5sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cblxuW3R5cGU9dGVsXTo6LW1zLWNsZWFyLFxuW3R5cGU9ZW1haWxdOjotbXMtY2xlYXIsXG5bdHlwZT1udW1iZXJdOjotbXMtY2xlYXIsXG5bdHlwZT10ZXh0XTo6LW1zLWNsZWFyLFxuW3R5cGU9c2VhcmNoXTo6LW1zLWNsZWFyIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDsgfVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuc2VsZWN0IHtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuLi9pbWFnZXMvLi4vaW1hZ2VzL2Zvcm1zL3NlbGVjdC1hcnJvdy5wbmdcIikgcmlnaHQgMTBweCBjZW50ZXIgbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW1vei1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kICgtbXMtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMiAvIDEpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZm9ybXNAMngvc2VsZWN0LWFycm93LnBuZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogaW1hZ2Utd2lkdGgoXCJmb3Jtc0AyeC9zZWxlY3QtYXJyb3cucG5nXCIpLzIgYXV0bzsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICBzZWxlY3Qge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZzogMCAwIDAgMThweDsgfSB9XG4gIC5sdC1pZTkgc2VsZWN0IHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgcGFkZGluZzogMCAwIDAgMThweDsgfVxuICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgc2VsZWN0IHNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbiAgICB0ZXh0LW92ZXJmbG93OiAnJztcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IH0gfVxuICBzZWxlY3QuaXMtcmVxdWlyZWQge1xuICAgIGJvcmRlci1jb2xvcjogcmVkOyB9XG4gIHNlbGVjdDpmb2N1cywgc2VsZWN0LmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OyB9XG5cbi5yYWRpby1jb250YWluZXIgW3R5cGU9cmFkaW9dIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtNTBweDtcbiAgdG9wOiAwOyB9XG5cbi5yYWRpby1jb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuW3R5cGU9cmFkaW9dICsgbGFiZWwge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvZm9ybXMvcmFkaW8tYnRuLW5vcm1hbC5wbmdcIikgbGVmdCBjZW50ZXIgbm8tcmVwZWF0OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kICgtbW96LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKC1tcy1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyIC8gMSksIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgW3R5cGU9cmFkaW9dICsgbGFiZWwge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Zvcm1zL3JhZGlvLWJ0bi1ub3JtYWwucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBpbWFnZS13aWR0aChcIi4uL2ltYWdlcy9mb3Jtcy9yYWRpby1idG4tbm9ybWFsLnBuZ1wiKS8yIGF1dG87IH0gfVxuXG5bdHlwZT1yYWRpb10gKyBsYWJlbDpob3Zlcixcblt0eXBlPXJhZGlvXTpmb2N1cyArIGxhYmVsLFxuW3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCB7XG4gIGNvbG9yOiBibGFjazsgfVxuXG5bdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Zvcm1zL3JhZGlvLWJ0bi1jaGVja2VkLnBuZ1wiKTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW1vei1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kICgtbXMtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMiAvIDEpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Zvcm1zL3JhZGlvLWJ0bi1jaGVja2VkLnBuZ1wiKTsgfSB9XG5cblt0eXBlPXJhZGlvXTpkaXNhYmxlZCArIGxhYmVsIHtcbiAgY29sb3I6ICNkOWQ5ZDk7IH1cblxuLmNoZWNrYm94LWNvbnRhaW5lciBbdHlwZT1jaGVja2JveF0sIC5jaGVja291dF9fYWNjZXB0LWNoZWNrYm94LWNvbnRhaW5lciBbdHlwZT1jaGVja2JveF0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC01MHB4O1xuICB0b3A6IDA7IH1cblxuLmNoZWNrYm94LWNvbnRhaW5lciwgLmNoZWNrb3V0X19hY2NlcHQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2Zvcm1zL2NoZWNrYm94LWJ0bi1ub3JtYWwucG5nXCIpIGxlZnQgY2VudGVyIG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW1vei1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kICgtbXMtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMiAvIDEpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIFt0eXBlPWNoZWNrYm94XSArIGxhYmVsIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9mb3Jtcy9jaGVja2JveC1idG4tbm9ybWFsLnBuZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogaW1hZ2Utd2lkdGgoXCIuLi9pbWFnZXMvZm9ybXMvY2hlY2tib3gtYnRuLW5vcm1hbC5wbmdcIikvMiBhdXRvOyB9IH1cbiAgW3R5cGU9Y2hlY2tib3hdICsgbGFiZWw6aG92ZXIge1xuICAgIGNvbG9yOiBibGFjazsgfVxuXG5bdHlwZT1jaGVja2JveF06Zm9jdXMgKyBsYWJlbCxcblt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWwge1xuICBjb2xvcjogYmxhY2s7IH1cblxuW3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9mb3Jtcy9jaGVja2JveC1idG4tY2hlY2tlZC5wbmdcIik7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKC1tb3otbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW1zLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIgLyAxKSwgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICBbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9mb3Jtcy9jaGVja2JveC1idG4tY2hlY2tlZC5wbmdcIik7IH0gfVxuXG5bdHlwZT1jaGVja2JveF06ZGlzYWJsZWQgKyBsYWJlbCB7XG4gIGNvbG9yOiAjZDlkOWQ5OyB9XG5cblt0eXBlPW51bWJlcl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgfVxuICBbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCBbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgbWFyZ2luOiAwOyB9XG5cbi5udW1iZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICAubnVtYmVyLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9IH1cbiAgLmx0LWllOSAubnVtYmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7IH1cblxuLm51bWJlci1jb250YWluZXIgLm51bWJlcl9faW5wdXQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm51bWJlcl9faW5jcmVhc2UsIC5udW1iZXJfX2RlY3JlYXNlIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6IDUwcHg7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDUwcHg7IH1cbiAgLm51bWJlcl9faW5jcmVhc2U6YWZ0ZXIsIC5udW1iZXJfX2RlY3JlYXNlOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgdGV4dC1pbmRlbnQ6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gICAgICAubnVtYmVyX19pbmNyZWFzZTphZnRlciwgLm51bWJlcl9fZGVjcmVhc2U6YWZ0ZXIge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgIC5sdC1pZTkgLm51bWJlcl9faW5jcmVhc2U6YWZ0ZXIsIC5sdC1pZTkgLm51bWJlcl9fZGVjcmVhc2U6YWZ0ZXIge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgLm51bWJlci1jb250YWluZXIgLm51bWJlcl9faW5jcmVhc2U6YWZ0ZXIsIC5udW1iZXItY29udGFpbmVyIC5udW1iZXJfX2RlY3JlYXNlOmFmdGVyIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgIC5udW1iZXJfX2luY3JlYXNlLCAubnVtYmVyX19kZWNyZWFzZSB7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIHdpZHRoOiA1MHB4OyB9IH1cbiAgLmx0LWllOSAubnVtYmVyX19pbmNyZWFzZSwgLmx0LWllOSAubnVtYmVyX19kZWNyZWFzZSB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgIHdpZHRoOiA1MHB4OyB9XG5cbi5udW1iZXJfX2luY3JlYXNlIHtcbiAgcmlnaHQ6IDA7IH1cblxuLm51bWJlcl9fZGVjcmVhc2Uge1xuICBsZWZ0OiAwOyB9XG5cblt0eXBlPXJhbmdlXSB7XG4gIC8qcmVtb3ZlcyBkZWZhdWx0IHdlYmtpdCBzdHlsZXMqL1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC8qZml4IGZvciBGRiB1bmFibGUgdG8gYXBwbHkgZm9jdXMgc3R5bGUgYnVnICovXG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICBwYWRkaW5nOiAwO1xuICAvKnJlcXVpcmVkIGZvciBwcm9wZXIgdHJhY2sgc2l6aW5nIGluIEZGKi9cbiAgd2lkdGg6IDE4MHB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIC8qaGlkZSB0aGUgb3V0bGluZSBiZWhpbmQgdGhlIGJvcmRlciovIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgICBbdHlwZT1yYW5nZV0ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB3aWR0aDogMTgwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzBlbSkge1xuICAgICAgW3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgW3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICMzODRkNjQ7XG4gICAgbWFyZ2luLXRvcDogLTExcHg7IH1cbiAgW3R5cGU9cmFuZ2VdOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIFt0eXBlPXJhbmdlXTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICNlNWU1ZTU7IH1cbiAgW3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB3aWR0aDogMTgwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzBlbSkge1xuICAgICAgW3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICMzODRkNjQ7IH1cbiAgW3R5cGU9cmFuZ2VdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgd2hpdGU7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7IH1cbiAgW3R5cGU9cmFuZ2VdOjotbXMtdHJhY2sge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIC8qcmVtb3ZlIGRlZmF1bHQgdGljayBtYXJrcyovXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHdpZHRoOiAxODBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzMGVtKSB7XG4gICAgICBbdHlwZT1yYW5nZV06Oi1tcy10cmFjayB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgW3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlciB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7IH1cbiAgW3R5cGU9cmFuZ2VdOjotbXMtdGh1bWIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICMzODRkNjQ7IH1cbiAgW3R5cGU9cmFuZ2VdOmZvY3VzOjotbXMtdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICNlNWU1ZTU7IH1cbiAgW3R5cGU9cmFuZ2VdOmZvY3VzOjotbXMtZmlsbC1sb3dlciB7XG4gICAgYmFja2dyb3VuZDogI2U1ZTVlNTsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjZGJkYmRiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICBwYWRkaW5nOiAgMCAwIDAgMnJlbTsgfVxuICBibG9ja3F1b3RlIHA6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4oCcJzsgfVxuICBibG9ja3F1b3RlIHA6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICfigJ0nOyB9XG4gIGJsb2NrcXVvdGUgY2l0ZSB7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgICBibG9ja3F1b3RlIGNpdGUge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIC5sdC1pZTkgYmxvY2txdW90ZSBjaXRlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbnRyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOGQ3ZDc7IH1cblxudHI6bnRoLWNoaWxkKDJuKSxcbnRoZWFkIHRyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbnRoLCB0ZCB7XG4gIHBhZGRpbmc6IDE1cHggMjBweDsgfVxuXG4uYnVsbGV0cywgLnRodW1ibmFpbC1idWxsZXRzIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYnVsbGV0cyBhLCAudGh1bWJuYWlsLWJ1bGxldHMgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNjZGNkY2Q7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEycHg7IH1cbiAgLmJ1bGxldHMgYTphZnRlciwgLnRodW1ibmFpbC1idWxsZXRzIGE6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzODRkNjQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDNweDtcbiAgICBsZWZ0OiAzcHg7XG4gICAgcmlnaHQ6IDNweDtcbiAgICB0b3A6IDNweDsgfVxuICAuYnVsbGV0cyBhLnNlbGVjdGVkLCAudGh1bWJuYWlsLWJ1bGxldHMgYS5zZWxlY3RlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzg0ZDY0OyB9XG4gICAgLmJ1bGxldHMgYS5zZWxlY3RlZDphZnRlciwgLnRodW1ibmFpbC1idWxsZXRzIGEuc2VsZWN0ZWQ6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAudGh1bWJuYWlsLWJ1bGxldHMgYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gICAgLW1zLWJvcmRlci1yYWRpdXM6IDA7XG4gICAgLW8tYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgLnRodW1ibmFpbC1idWxsZXRzIGEuc2VsZWN0ZWQ6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5sdC1pZTkgLnRodW1ibmFpbC1idWxsZXRzIGEsIC50aHVtYm5haWwtYnVsbGV0cyAubHQtaWU5IGEge1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB3aWR0aDogYXV0bztcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAwO1xuICAtby1ib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5sdC1pZTkgLnRodW1ibmFpbC1idWxsZXRzIGEuc2VsZWN0ZWQ6YWZ0ZXIsIC50aHVtYm5haWwtYnVsbGV0cyAubHQtaWU5IGEuc2VsZWN0ZWQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRodW1ibmFpbC1idWxsZXRzIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC50aHVtYm5haWwtYnVsbGV0cyBpbWcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLmx0LWllOSAudGh1bWJuYWlsLWJ1bGxldHMgaW1nLCAudGh1bWJuYWlsLWJ1bGxldHMgLmx0LWllOSBpbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ubHQtaWU5IGJvZHkge1xuICBtaW4td2lkdGg6IDQ4LjA2MjVlbTsgfVxuXG4uY29udGFpbmVyLCAuY29udGFpbmVyLS1jZW50ZXIsIC5nbG9iYWwtbWVzc2FnZV9fY29udGVudCB7XG4gIG1heC13aWR0aDogODRlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZzogMCAxMHB4O1xuICBwYWRkaW5nOiAgMCAxcmVtOyB9XG4gIC5jb250YWluZXI6YWZ0ZXIsIC5jb250YWluZXItLWNlbnRlcjphZnRlciwgLmdsb2JhbC1tZXNzYWdlX19jb250ZW50OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gICAgLmNvbnRhaW5lciwgLmNvbnRhaW5lci0tY2VudGVyLCAuZ2xvYmFsLW1lc3NhZ2VfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgcGFkZGluZzogIDAgMnJlbTsgfSB9XG4gIC5sdC1pZTkgLmNvbnRhaW5lciwgLmx0LWllOSAuY29udGFpbmVyLS1jZW50ZXIsIC5sdC1pZTkgLmdsb2JhbC1tZXNzYWdlX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgcGFkZGluZzogIDAgMnJlbTsgfVxuXG4uaW1hZ2UtYmxvY2tfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAyLjU1MTAyMDQwODIlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyNWVtKSB7XG4gIC5yb3cge1xuICAgIG1hcmdpbjogMCAtMjBweDsgfSB9XG5cbi5sdC1pZTkgLnJvdyB7XG4gIG1hcmdpbjogMCAtMjBweDsgfVxuXG4uaW1nLWZsdWlkIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnB0LTEge1xuICBwYWRkaW5nLXRvcDogMTBweCAhaW1wb3J0YW50OyB9XG5cbi5wdC0yIHtcbiAgcGFkZGluZy10b3A6IDIwcHggIWltcG9ydGFudDsgfVxuXG4ucHQtMyB7XG4gIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH1cblxuLnB0LTQge1xuICBwYWRkaW5nLXRvcDogNDBweCAhaW1wb3J0YW50OyB9XG5cbi5wdC01IHtcbiAgcGFkZGluZy10b3A6IDUwcHggIWltcG9ydGFudDsgfVxuXG4ucHQtNSB7XG4gIHBhZGRpbmctdG9wOiA1MHB4ICFpbXBvcnRhbnQ7IH1cblxuLnB0LTYge1xuICBwYWRkaW5nLXRvcDogNjBweCAhaW1wb3J0YW50OyB9XG5cbi5wdC03IHtcbiAgcGFkZGluZy10b3A6IDcwcHggIWltcG9ydGFudDsgfVxuXG4ucHQtOCB7XG4gIHBhZGRpbmctdG9wOiA4MHB4ICFpbXBvcnRhbnQ7IH1cblxuLnB0LTkge1xuICBwYWRkaW5nLXRvcDogOTBweCAhaW1wb3J0YW50OyB9XG5cbi5wYi0xIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHggIWltcG9ydGFudDsgfVxuXG4ucGItMiB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBiLTMge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG5cbi5wYi00IHtcbiAgcGFkZGluZy1ib3R0b206IDQwcHggIWltcG9ydGFudDsgfVxuXG4ucGItNSB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBiLTUge1xuICBwYWRkaW5nLWJvdHRvbTogNTBweCAhaW1wb3J0YW50OyB9XG5cbi5wYi02IHtcbiAgcGFkZGluZy1ib3R0b206IDYwcHggIWltcG9ydGFudDsgfVxuXG4ucGItNyB7XG4gIHBhZGRpbmctYm90dG9tOiA3MHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBiLTgge1xuICBwYWRkaW5nLWJvdHRvbTogODBweCAhaW1wb3J0YW50OyB9XG5cbi5wYi05IHtcbiAgcGFkZGluZy1ib3R0b206IDkwcHggIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gIC5wdC1sZy05IHtcbiAgICBwYWRkaW5nLXRvcDogOTBweCAhaW1wb3J0YW50OyB9IH1cblxuLmx0LWllOSAucHQtbGctOSB7XG4gIHBhZGRpbmctdG9wOiA5MHB4ICFpbXBvcnRhbnQ7IH1cblxuLyogdjEuMC42ICovXG4vKiBDb3JlIFJTIENTUyBmaWxlLiA5NSUgb2YgdGltZSB5b3Ugc2hvdWxkbid0IGNoYW5nZSBhbnl0aGluZyBoZXJlLiAqL1xuLnJveWFsU2xpZGVyIHtcbiAgd2lkdGg6IDYwMHB4O1xuICBoZWlnaHQ6IDQwMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpcmVjdGlvbjogbHRyOyB9XG5cbi5yb3lhbFNsaWRlciA+ICoge1xuICBmbG9hdDogbGVmdDsgfVxuXG4ucnNXZWJraXQzZCAucnNTbGlkZSxcbi5yc1dlYmtpdDNkIC5yc0NvbnRhaW5lcixcbi5yc1dlYmtpdDNkIC5yc1RodW1icyxcbi5yc1dlYmtpdDNkIC5yc1ByZWxvYWRlcixcbi5yc1dlYmtpdDNkIGltZyxcbi5yc1dlYmtpdDNkIC5yc092ZXJmbG93LFxuLnJzV2Via2l0M2QgLnJzQnRuQ2VudGVyZXIsXG4ucnNXZWJraXQzZCAucnNBYnNvbHV0ZUVsLFxuLnJzV2Via2l0M2QgLnJzQUJsb2NrLFxuLnJzV2Via2l0M2QgLnJzTGluayB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5yc0ZhZGUucnNXZWJraXQzZCAucnNTbGlkZSxcbi5yc0ZhZGUucnNXZWJraXQzZCBpbWcsXG4ucnNGYWRlLnJzV2Via2l0M2QgLnJzQ29udGFpbmVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLnJzT3ZlcmZsb3cge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZsb2F0OiBsZWZ0O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5yc1Zpc2libGVOZWFyYnlXcmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnJzVmlzaWJsZU5lYXJieVdyYXAgLnJzT3ZlcmZsb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4ucnNDb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnJzQXJyb3csXG4ucnNUaHVtYnNBcnJvdyB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ucnNUaHVtYiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnJzQXJyb3csXG4ucnNOYXYsXG4ucnNUaHVtYnNBcnJvdyB7XG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgbGluZWFyOyB9XG5cbi5yc0hpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjNzLG9wYWNpdHkgMC4zcyBsaW5lYXI7XG4gIC1tb3otdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyBsaW5lYXIgMC4zcyxvcGFjaXR5IDAuM3MgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjNzLG9wYWNpdHkgMC4zcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgbGluZWFyIDAuM3Msb3BhY2l0eSAwLjNzIGxpbmVhcjsgfVxuXG4ucnNHQ2FwdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi8qIEZ1bGxzY3JlZW4gb3B0aW9ucywgdmVyeSBpbXBvcnRhbnQgXl4gKi9cbi5yb3lhbFNsaWRlci5yc0Z1bGxzY3JlZW4ge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDIxNDc0ODM2NDcgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnJveWFsU2xpZGVyIC5yc1NsaWRlLnJzRmFrZVByZWxvYWRlciB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAwcztcbiAgLW1vei10cmFuc2l0aW9uOiAwcztcbiAgLW8tdHJhbnNpdGlvbjogMHM7XG4gIHRyYW5zaXRpb246IDBzO1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5yc1NsaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnJveWFsU2xpZGVyLnJzQXV0b0hlaWdodCxcbi5yc0F1dG9IZWlnaHQgLnJzU2xpZGUge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLnJzQ29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucnNQcmVsb2FkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDA7IH1cblxuLnJzTmF2IHtcbiAgLW1vei11c2VyLXNlbGVjdDogLW1vei1ub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ucnNOYXZJdGVtIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG5cbi5yc1RodW1icyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmbG9hdDogbGVmdDtcbiAgei1pbmRleDogMjsgfVxuXG4ucnNUYWJzIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ucnNUYWJzLFxuLnJzVGh1bWJzIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ucnNWaWRlb0NvbnRhaW5lciB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnJzVmlkZW9GcmFtZUhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjMTQxNDE0O1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC4zczsgfVxuXG4ucnNWaWRlb0ZyYW1lSG9sZGVyLnJzVmlkZW9BY3RpdmUge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5yc1ZpZGVvQ29udGFpbmVyIGlmcmFtZSxcbi5yc1ZpZGVvQ29udGFpbmVyIHZpZGVvLFxuLnJzVmlkZW9Db250YWluZXIgZW1iZWQsXG4ucnNWaWRlb0NvbnRhaW5lciAucnNWaWRlb09iaiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNTA7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4vKiBpb3MgY29udHJvbHMgb3ZlciB2aWRlbyBidWcsIHNoaWZ0aW5nIHZpZGVvICovXG4ucnNWaWRlb0NvbnRhaW5lci5yc0lPU1ZpZGVvIGlmcmFtZSxcbi5yc1ZpZGVvQ29udGFpbmVyLnJzSU9TVmlkZW8gdmlkZW8sXG4ucnNWaWRlb0NvbnRhaW5lci5yc0lPU1ZpZGVvIGVtYmVkIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmctcmlnaHQ6IDQ0cHg7IH1cblxuLnJzQUJsb2NrIHtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE1OyB9XG5cbmltZy5yc0ltZyB7XG4gIG1heC13aWR0aDogbm9uZTsgfVxuXG4uZ3JhYi1jdXJzb3Ige1xuICBjdXJzb3I6IHVybChncmFiLnBuZykgOCA4LCBtb3ZlOyB9XG5cbi5ncmFiYmluZy1jdXJzb3Ige1xuICBjdXJzb3I6IHVybChncmFiYmluZy5wbmcpIDggOCwgbW92ZTsgfVxuXG4ucnNOb0RyYWcge1xuICBjdXJzb3I6IGF1dG87IH1cblxuLnJzTGluayB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMjA7XG4gIGJhY2tncm91bmQ6IHVybChibGFuay5naWYpOyB9XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKlxyXG4qICBSb3lhbFNsaWRlciBVbml2ZXJzYWwgU2tpblxyXG4qXHJcbiogICAgMS4gQXJyb3dzXHJcbiogICAgMi4gQnVsbGV0c1xyXG4qICAgIDMuIFRodW1ibmFpbHNcclxuKiAgICA0LiBUYWJzXHJcbiogICAgNS4gRnVsbHNjcmVlbiBidXR0b25cclxuKiAgICA2LiBQbGF5L2Nsb3NlIHZpZGVvIGJ1dHRvblxyXG4qICAgIDcuIFByZWxvYWRlclxyXG4qICAgIDguIENhcHRpb25cclxuKlxyXG4qICBTcHJpdGU6ICcuLi9pbWFnZXMvcm95YWwtc2xpZGVyLXVuaS10aGVtZS5wbmcnXHJcbiogIEZlZWwgZnJlZSB0byBlZGl0IGFueXRoaW5nXHJcbiogIElmIHlvdSBkb24ndCBzb21lIHBhcnQgLSBqdXN0IGRlbGV0ZSBpdFxyXG4qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEJhY2tncm91bmQgKi9cbi5yc1VuaSxcbi5yc1VuaSAucnNPdmVyZmxvdyxcbi5yc1VuaSAucnNTbGlkZSxcbi5yc1VuaSAucnNWaWRlb0ZyYW1lSG9sZGVyLFxuLnJzVW5pIC5yc1RodW1icyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjRkZGOyB9XG5cbi8qKioqKioqKioqKioqKipcclxuKlxyXG4qICAxLiBBcnJvd3NcclxuKlxyXG4qKioqKioqKioqKioqKioqL1xuLnJzVW5pIC5yc0Fycm93IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxOyB9XG5cbi5yc1VuaS5yc1ZlciAucnNBcnJvdyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDYwcHg7IH1cblxuLnJzVW5pLnJzVmVyIC5yc0Fycm93TGVmdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuXG4ucnNVbmkucnNWZXIgLnJzQXJyb3dSaWdodCB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDsgfVxuXG4ucnNVbmkucnNIb3IgLnJzQXJyb3dMZWZ0IHtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi5yc1VuaS5yc0hvciAucnNBcnJvd1JpZ2h0IHtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuXG4ucnNVbmkgLnJzQXJyb3dJY24ge1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3JveWFsLXNsaWRlci11bmktdGhlbWUucG5nXCIpO1xuICBvcGFjaXR5OiAwLjU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ucnNVbmkgLnJzQXJyb3c6aG92ZXIgLnJzQXJyb3dJY24ge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5yc1VuaS5yc0hvciAucnNBcnJvd0xlZnQgLnJzQXJyb3dJY24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMzJweDsgfVxuXG4ucnNVbmkucnNIb3IgLnJzQXJyb3dSaWdodCAucnNBcnJvd0ljbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC02NHB4OyB9XG5cbi5yc1VuaS5yc1ZlciAucnNBcnJvd0xlZnQgLnJzQXJyb3dJY24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMzJweDsgfVxuXG4ucnNVbmkucnNWZXIgLnJzQXJyb3dSaWdodCAucnNBcnJvd0ljbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC02NHB4OyB9XG5cbi5yc1VuaSAucnNBcnJvd0Rpc2FibGVkIC5yc0Fycm93SWNuIHtcbiAgb3BhY2l0eTogLjEgIWltcG9ydGFudDtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTIwKTtcbiAgKmRpc3BsYXk6IG5vbmU7IH1cblxuLyoqKioqKioqKioqKioqKlxyXG4qXHJcbiogIDIuIEJ1bGxldHNcclxuKlxyXG4qKioqKioqKioqKioqKioqL1xuLnJzVW5pIC5yc0J1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnJzVW5pIC5yc0J1bGxldCB7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG4gICp6b29tOiAxO1xuICBwYWRkaW5nOiA1cHg7IH1cblxuLnJzVW5pIC5yc0J1bGxldCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICNCQkI7IH1cblxuLnJzVW5pIC5yc0J1bGxldC5yc05hdlNlbGVjdGVkIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzgzODM4OyB9XG5cbi8qKioqKioqKioqKioqKipcclxuKlxyXG4qICAzLiBUaHVtYm5haWxzXHJcbipcclxuKioqKioqKioqKioqKioqKi9cbi5yc1VuaSAucnNUaHVtYnNIb3Ige1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA3MnB4OyB9XG5cbi5yc1VuaSAucnNUaHVtYnNWZXIge1xuICB3aWR0aDogOTZweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLnJzVW5pLnJzV2l0aFRodW1ic0hvciAucnNUaHVtYnNDb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnJzVW5pIC5yc1RodW1iIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiA5NnB4O1xuICBoZWlnaHQ6IDcycHg7IH1cblxuLnJzVW5pIC5yc1RodW1iIGltZyB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5yc1VuaSAucnNUaHVtYi5yc05hdlNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZDogIzMzMzsgfVxuXG4ucnNVbmkgLnJzVGh1bWIucnNOYXZTZWxlY3RlZCBpbWcge1xuICBvcGFjaXR5OiAwLjc7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0zMCk7IH1cblxuLnJzVW5pIC5yc1RodW1iLnJzTmF2U2VsZWN0ZWQgLnRodW1iSWNvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNGRkY7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnJzVW5pIC5yc1RtYiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIFRodW1ibmFpbHMgd2l0aCB0ZXh0ICovXG4ucnNVbmkgLnJzVG1iIGg1IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogI0ZGRjsgfVxuXG4ucnNVbmkgLnJzVG1iIHNwYW4ge1xuICBjb2xvcjogI0RERDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4OyB9XG5cbi8qIFRodW1ibmFpbHMgYXJyb3cgaWNvbnMgKi9cbi5yc1VuaSAucnNUaHVtYnNBcnJvdyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTsgfVxuXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0Fycm93IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjBweDsgfVxuXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0Fycm93TGVmdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0Fycm93UmlnaHQge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7IH1cblxuLnJzVW5pLnJzV2l0aFRodW1ic0hvciAucnNUaHVtYnNBcnJvd0xlZnQge1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLnJzVW5pLnJzV2l0aFRodW1ic0hvciAucnNUaHVtYnNBcnJvd1JpZ2h0IHtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuXG4ucnNVbmkgLnJzVGh1bWJzQXJyb3dJY24ge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tdG9wOiAtOHB4O1xuICBtYXJnaW4tbGVmdDogLThweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL3N0eWxlc2hlZXRzL3JveWFsc2xpZGVyL3JzLWRlZmF1bHQtaW52ZXJ0ZWQucG5nXCIpIHRyYW5zcGFyZW50OyB9XG5cbi5yc1VuaS5yc1dpdGhUaHVtYnNIb3IgLnJzVGh1bWJzQXJyb3dMZWZ0IC5yc1RodW1ic0Fycm93SWNuIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0zMnB4OyB9XG5cbi5yc1VuaS5yc1dpdGhUaHVtYnNIb3IgLnJzVGh1bWJzQXJyb3dSaWdodCAucnNUaHVtYnNBcnJvd0ljbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtNDhweDsgfVxuXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0Fycm93TGVmdCAucnNUaHVtYnNBcnJvd0ljbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMzJweDsgfVxuXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0Fycm93UmlnaHQgLnJzVGh1bWJzQXJyb3dJY24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTQ4cHg7IH1cblxuLnJzVW5pIC5yc1RodW1ic0Fycm93RGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLyogVGh1bWJuYWlscyByZXNpemluZyBvbiBzbWFsbGVyIHNjcmVlbnMgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBweCkgYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gIC5yc1VuaSAucnNUaHVtYiB7XG4gICAgd2lkdGg6IDU5cHg7XG4gICAgaGVpZ2h0OiA0NHB4OyB9XG4gIC5yc1VuaSAucnNUaHVtYnNIb3Ige1xuICAgIGhlaWdodDogNDRweDsgfVxuICAucnNVbmkgLnJzVGh1bWJzVmVyIHtcbiAgICB3aWR0aDogNTlweDsgfSB9XG5cbi8qKioqKioqKioqKioqKipcclxuKlxyXG4qICA0LiBUYWJzXHJcbipcclxuKioqKioqKioqKioqKioqKi9cbi5yc1VuaSAucnNUYWJzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucnNVbmkgLnJzVGFiIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgY29sb3I6ICMzMzM7XG4gIHBhZGRpbmc6IDVweCAxM3B4IDZweDtcbiAgbWluLXdpZHRoOiA3MnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDlEOUREO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgKnpvb206IDE7XG4gICpib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDlkOWQ5OyB9XG5cbi5yc1VuaSAucnNUYWI6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNnB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxNnB4OyB9XG5cbi5yc1VuaSAucnNUYWI6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNnB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTZweDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0Q5RDlERDsgfVxuXG4ucnNVbmkgLnJzVGFiOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7IH1cblxuLnJzVW5pIC5yc1RhYi5yc05hdlNlbGVjdGVkIHtcbiAgY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQ6ICMzODM4Mzg7XG4gIGJvcmRlci1jb2xvcjogIzM4MzgzODsgfVxuXG4vKioqKioqKioqKioqKioqXHJcbipcclxuKiAgNS4gRnVsbHNjcmVlbiBidXR0b25cclxuKlxyXG4qKioqKioqKioqKioqKioqL1xuLnJzVW5pIC5yc0Z1bGxzY3JlZW5CdG4ge1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnJzVW5pIC5yc0Z1bGxzY3JlZW5JY24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA2cHg7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL3N0eWxlc2hlZXRzL3JveWFsc2xpZGVyL3JzLWRlZmF1bHQtaW52ZXJ0ZWQucG5nXCIpIDAgMCB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMC43O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLnJzVW5pIC5yc0Z1bGxzY3JlZW5CdG46aG92ZXIgLnJzRnVsbHNjcmVlbkljbiB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnJzVW5pLnJzRnVsbHNjcmVlbiAucnNGdWxsc2NyZWVuSWNuIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggMDsgfVxuXG4vKioqKioqKioqKioqKioqXHJcbipcclxuKiAgNi4gUGxheS9jbG9zZSB2aWRlbyBidXR0b25cclxuKlxyXG4qKioqKioqKioqKioqKioqL1xuLnJzVW5pIC5yc1BsYXlCdG4ge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbiAgbWFyZ2luLWxlZnQ6IC0zMnB4O1xuICBtYXJnaW4tdG9wOiAtMzJweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5yc1VuaSAucnNQbGF5QnRuSWNvbiB7XG4gIHdpZHRoOiA2NHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA2NHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiAuM3M7XG4gIHRyYW5zaXRpb246IC4zcztcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vc3R5bGVzaGVldHMvcm95YWxzbGlkZXIvcnMtZGVmYXVsdC1pbnZlcnRlZC5wbmdcIikgbm8tcmVwZWF0IDAgLTMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODM4Mzg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG4gICpiYWNrZ3JvdW5kLWNvbG9yOiAjMzgzODM4OyB9XG5cbi5yc1VuaSAucnNQbGF5QnRuOmhvdmVyIC5yc1BsYXlCdG5JY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG5cbi5yc1VuaSAucnNCdG5DZW50ZXJlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDsgfVxuXG4ucnNVbmkgLnJzQ2xvc2VWaWRlb0J0biB7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHotaW5kZXg6IDUwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9XG5cbi5yc1VuaSAucnNDbG9zZVZpZGVvQnRuLnJzaU9TQnRuIHtcbiAgdG9wOiAtMzhweDtcbiAgcmlnaHQ6IC02cHg7IH1cblxuLnJzVW5pIC5yc0Nsb3NlVmlkZW9JY24ge1xuICBtYXJnaW46IDZweDtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vc3R5bGVzaGVldHMvcm95YWxzbGlkZXIvcnMtZGVmYXVsdC1pbnZlcnRlZC5wbmdcIikgLTY0cHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM4MzgzODtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgKmJhY2tncm91bmQtY29sb3I6ICMzODM4Mzg7IH1cblxuLnJzVW5pIC5yc0Nsb3NlVmlkZW9JY246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7IH1cblxuLyoqKioqKioqKioqKioqKlxyXG4qXHJcbiogIDcuIFByZWxvYWRlclxyXG4qXHJcbioqKioqKioqKioqKioqKiovXG4ucnNVbmkgLnJzUHJlbG9hZGVyIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vc3R5bGVzaGVldHMvcm95YWxzbGlkZXIvcHJlbG9hZGVyLXdoaXRlLmdpZlwiKTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDsgfVxuXG4vKioqKioqKioqKioqKioqXHJcbipcclxuKiAgOC4gR2xvYmFsIGNhcHRpb25cclxuKlxyXG4qKioqKioqKioqKioqKioqL1xuLnJzVW5pIC5yc0dDYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmbG9hdDogbm9uZTtcbiAgYm90dG9tOiA2cHg7XG4gIGxlZnQ6IDZweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZDogIzIyMjtcbiAgY29sb3I6ICNGRkY7XG4gIHBhZGRpbmc6IDJweCA4cHg7XG4gIHdpZHRoOiBhdXRvO1xuICBmb250LXNpemU6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ucGFnZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogcGFkZGluZy10b3AgMjAwbXMgZWFzZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAzMDBtcztcbiAgLW1vei10cmFuc2l0aW9uOiBwYWRkaW5nLXRvcCAyMDBtcyBlYXNlIDMwMG1zO1xuICAtby10cmFuc2l0aW9uOiBwYWRkaW5nLXRvcCAyMDBtcyBlYXNlIDMwMG1zO1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nLXRvcCAyMDBtcyBlYXNlIDMwMG1zO1xuICBwYWRkaW5nLXRvcDogNjBweDsgfVxuICBib2R5Lmhhcy1nbG9iYWwtbWVzc2FnZSAucGFnZSB7XG4gICAgcGFkZGluZy10b3A6IDE0NXB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgICAtbW96LXRyYW5zaXRpb246IG5vbmU7XG4gICAgLW8tdHJhbnNpdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICAucGFnZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTE1cHg7IH1cbiAgICAgIGJvZHkuaGFzLWdsb2JhbC1tZXNzYWdlIC5wYWdlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE5OHB4OyB9IH1cbiAgLmx0LWllOSAucGFnZSB7XG4gICAgcGFkZGluZy10b3A6IDExNXB4OyB9XG4gICAgYm9keS5oYXMtZ2xvYmFsLW1lc3NhZ2UgLmx0LWllOSAucGFnZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTk4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5wYWdlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNTVweDsgfVxuICAgICAgYm9keS5oYXMtZ2xvYmFsLW1lc3NhZ2UgLnBhZ2Uge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjA3cHg7IH0gfVxuICAubHQtaWU5IC5wYWdlIHtcbiAgICBwYWRkaW5nLXRvcDogMTU1cHg7IH1cbiAgICBib2R5Lmhhcy1nbG9iYWwtbWVzc2FnZSAubHQtaWU5IC5wYWdlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyMDdweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzMuNWVtKSB7XG4gICAgLnBhZ2Uge1xuICAgICAgcGFkZGluZy10b3A6IDExNXB4OyB9XG4gICAgICBib2R5Lmhhcy1nbG9iYWwtbWVzc2FnZSAucGFnZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNjdweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLm1haW4tLWhhcy1hc2lkZSwgLm1haW4tLWNoZWNrb3V0IHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbi5sdC1pZTkgLm1haW4tLWhhcy1hc2lkZSwgLmx0LWllOSAubWFpbi0tY2hlY2tvdXQge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDUwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDczLjVlbSkge1xuICAubWFpbi0taGFzLWFzaWRlLCAubWFpbi0tY2hlY2tvdXQge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzMuNWVtKSB7XG4gIC5tYWluLS1jaGVja291dCB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmFzaWRlLCAuYXNpZGUtLWNoZWNrb3V0IHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNTUxMDIwNDA4MiU7IH0gfVxuXG4ubHQtaWU5IC5hc2lkZSwgLmx0LWllOSAuYXNpZGUtLWNoZWNrb3V0IHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDIuNTUxMDIwNDA4MiU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDczLjVlbSkge1xuICAuYXNpZGUsIC5hc2lkZS0tY2hlY2tvdXQge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5hc2lkZS0tY2hlY2tvdXQge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmx0LWllOSAuYXNpZGUtLWNoZWNrb3V0IHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5hc2lkZSAuYmFza2V0LCAuYXNpZGUtLWNoZWNrb3V0IC5iYXNrZXQge1xuICBtYXJnaW46IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5hc2lkZSAuYmFza2V0LCAuYXNpZGUtLWNoZWNrb3V0IC5iYXNrZXQge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gIC5sdC1pZTkgLmFzaWRlIC5iYXNrZXQsIC5sdC1pZTkgLmFzaWRlLS1jaGVja291dCAuYmFza2V0IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbi5tYWluLS1oYXMtYXNpZGUsIC5tYWluLS1jaGVja291dCwgLmFzaWRlLS1jaGVja291dCB7XG4gIG1hcmdpbi1ib3R0b206IDUlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAubWFpbi0taGFzLWFzaWRlLCAubWFpbi0tY2hlY2tvdXQsIC5hc2lkZS0tY2hlY2tvdXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNCU7IH0gfVxuICAubHQtaWU5IC5tYWluLS1oYXMtYXNpZGUsIC5sdC1pZTkgLm1haW4tLWNoZWNrb3V0LCAubHQtaWU5IC5hc2lkZS0tY2hlY2tvdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDQlOyB9XG5cbi5zZWN0aW9uLCAuZXJyb3JzLCAuaW1hZ2UtYmxvY2ssIC5pbWFnZS1ibG9jay0tbGVmdCwgLmltYWdlLWJsb2NrLS1yaWdodCwgLmNoZWNrb3V0X19nbHMsIC5ibG9nLXBvc3Qge1xuICBtYXJnaW46IDUlIDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5zZWN0aW9uLCAuZXJyb3JzLCAuaW1hZ2UtYmxvY2ssIC5pbWFnZS1ibG9jay0tbGVmdCwgLmltYWdlLWJsb2NrLS1yaWdodCwgLmNoZWNrb3V0X19nbHMsIC5ibG9nLXBvc3Qge1xuICAgICAgbWFyZ2luOiA0JSAwOyB9IH1cbiAgLmx0LWllOSAuc2VjdGlvbiwgLmx0LWllOSAuZXJyb3JzLCAubHQtaWU5IC5pbWFnZS1ibG9jaywgLmx0LWllOSAuaW1hZ2UtYmxvY2stLWxlZnQsIC5sdC1pZTkgLmltYWdlLWJsb2NrLS1yaWdodCwgLmx0LWllOSAuY2hlY2tvdXRfX2dscywgLmx0LWllOSAuYmxvZy1wb3N0IHtcbiAgICBtYXJnaW46IDQlIDA7IH1cbiAgLnNlY3Rpb24tLWRhcmssIC5zZWN0aW9uLS1oaWdobGlnaHQsIC5zZWN0aW9uLS1jYW1wYWlnbiwgLmVycm9ycyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwYWRkaW5nOiA1JSAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLnNlY3Rpb24tLWRhcmssIC5zZWN0aW9uLS1oaWdobGlnaHQsIC5zZWN0aW9uLS1jYW1wYWlnbiwgLmVycm9ycyB7XG4gICAgICAgIHBhZGRpbmc6IDIuNSUgMDsgfSB9XG4gICAgLmx0LWllOSAuc2VjdGlvbi0tZGFyaywgLmx0LWllOSAuc2VjdGlvbi0taGlnaGxpZ2h0LCAubHQtaWU5IC5zZWN0aW9uLS1jYW1wYWlnbiwgLmx0LWllOSAuZXJyb3JzIHtcbiAgICAgIHBhZGRpbmc6IDIuNSUgMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnNlY3Rpb24tLWxpbWl0IHtcbiAgICAgIG1hcmdpbjogMzBweCAwOyB9IH1cbiAgLmx0LWllOSAuc2VjdGlvbi0tbGltaXQge1xuICAgIG1hcmdpbjogMzBweCAwOyB9XG4gIC5zZWN0aW9uLS1kYXJrIHtcbiAgICBib3JkZXItY29sb3I6ICMyZjQwNTQ7IH1cbiAgLnNlY3Rpb24tLWhpZ2hsaWdodCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZWFlYWVhOyB9XG4gIC5zZWN0aW9uLS1jYW1wYWlnbiB7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLnNlY3Rpb24tLWNhbXBhaWduIHtcbiAgICAgICAgcGFkZGluZzogNCUgMDsgfSB9XG4gICAgLmx0LWllOSAuc2VjdGlvbi0tY2FtcGFpZ24ge1xuICAgICAgcGFkZGluZzogNCUgMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMjVlbSkge1xuICAgIC5zZWN0aW9uX19oZWFkZXItLWNlbnRlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAubHQtaWU5IC5zZWN0aW9uX19oZWFkZXItLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuc2VjdGlvbl9faGVhZGVyLS1jZW50ZXIge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7IH0gfVxuICAubHQtaWU5IC5zZWN0aW9uX19oZWFkZXItLWNlbnRlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3My41ZW0pIHtcbiAgICAuc2VjdGlvbl9faGVhZGVyLS1jZW50ZXIge1xuICAgICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclOyB9IH1cbiAgLnNlY3Rpb25fX2hlYWRlciBoMSwgLnNlY3Rpb25fX2hlYWRlci0tY2VudGVyIGgxIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5zZWN0aW9uX19oZWFkZXItc3ViamVjdCArIGgxLFxuICAuc2VjdGlvbl9faGVhZGVyLXN1YmplY3QgKyBoMixcbiAgLnNlY3Rpb25fX2hlYWRlci1zdWJqZWN0ICsgaDMge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnNlY3Rpb25fX3RleHQge1xuICAgIG1hcmdpbjogYXV0bzsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAgIC5zZWN0aW9uX190ZXh0IHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MGVtOyB9IH1cbiAgICAubHQtaWU5IC5zZWN0aW9uX190ZXh0IHtcbiAgICAgIG1heC13aWR0aDogNjBlbTsgfVxuICAgIC5zZWN0aW9uX190ZXh0IC5idXR0b24tLXNtYWxsLCAuc2VjdGlvbl9fdGV4dCAucGVybWlzc2lvbi1iYXJfX2J1dHRvbiwgLnNlY3Rpb25fX3RleHQgLmJ1dHRvbi0tcHJpbWFyeS0tc21hbGwsIC5zZWN0aW9uX190ZXh0IC5idXR0b24tLXNlY29uZGFyeS0tc21hbGwsIC5zZWN0aW9uX190ZXh0IC5jaGVja291dF9fYmFza2V0LWFuY2hvciwgLnNlY3Rpb25fX3RleHQgLmJ1dHRvbi0tdGVydGlhcnktLXNtYWxsLCAuc2VjdGlvbl9fdGV4dCAuYnV0dG9uLCAuc2VjdGlvbl9fdGV4dCAuY2hlY2tvdXRfX3N1Ym1pdCwgLnNlY3Rpb25fX3RleHQgLmNoZWNrb3V0X19zdWJtaXQtLXVzLCAuc2VjdGlvbl9fdGV4dCAuZGlzY291bnRfX3N1Ym1pdCwgLnNlY3Rpb25fX3RleHQgLmJ1dHRvbi0tcHJpbWFyeSwgLnNlY3Rpb25fX3RleHQgLmJ1dHRvbi0tc2Vjb25kYXJ5LCAuc2VjdGlvbl9fdGV4dCAuYnV0dG9uLS10ZXJ0aWFyeSwgLnNlY3Rpb25fX3RleHQgLmJ1dHRvbi0tYnV5IHtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5jb250YWluZXItLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmx0LWllOSAuY29udGFpbmVyLS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmRpdmlkZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGJkYmRiO1xuICBtYXJnaW46IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAudGV4dC0tc3BsaXQge1xuICAgIC13ZWJraXQtY29sdW1uczogMjtcbiAgICAtbW96LWNvbHVtbnM6IDI7XG4gICAgLW1zLWNvbHVtbnM6IDI7XG4gICAgLW8tY29sdW1uczogMjtcbiAgICBjb2x1bW5zOiAyO1xuICAgIC13ZWJraXQtY29sdW1uLWdhcDogMzBweDtcbiAgICAtbW96LWNvbHVtbi1nYXA6IDMwcHg7XG4gICAgLW1zLWNvbHVtbi1nYXA6IDMwcHg7XG4gICAgLW8tY29sdW1uLWdhcDogMzBweDtcbiAgICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gICAgLnRleHQtLXNwbGl0IHA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5sdC1pZTkgLnRleHQtLXNwbGl0IHtcbiAgLXdlYmtpdC1jb2x1bW5zOiAyO1xuICAtbW96LWNvbHVtbnM6IDI7XG4gIC1tcy1jb2x1bW5zOiAyO1xuICAtby1jb2x1bW5zOiAyO1xuICBjb2x1bW5zOiAyO1xuICAtd2Via2l0LWNvbHVtbi1nYXA6IDMwcHg7XG4gIC1tb3otY29sdW1uLWdhcDogMzBweDtcbiAgLW1zLWNvbHVtbi1nYXA6IDMwcHg7XG4gIC1vLWNvbHVtbi1nYXA6IDMwcHg7XG4gIGNvbHVtbi1nYXA6IDMwcHg7IH1cbiAgLmx0LWllOSAudGV4dC0tc3BsaXQgcDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4udGV4dC0tY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLnRleHRjb2wsIC50ZXh0Y29sLS1maXJzdCB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI3NTUxMDIwNDElOyB9IH1cblxuLmx0LWllOSAudGV4dGNvbCwgLmx0LWllOSAudGV4dGNvbC0tZmlyc3Qge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDUwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMS4yNzU1MTAyMDQxJTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC50ZXh0Y29sLS1maXJzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjc1NTEwMjA0MSU7IH0gfVxuXG4ubHQtaWU5IC50ZXh0Y29sLS1maXJzdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMS4yNzU1MTAyMDQxJTsgfVxuXG4uZXJyb3JzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y3QUZBRjtcbiAgYm9yZGVyLWNvbG9yOiAjZDYyYzJkO1xuICBjb2xvcjogIzI3MjMyNDsgfVxuICAuZXJyb3JzX19oZWFkZXIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmVycm9yc19fbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucmFwdG9yLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LWhlaWdodDogMjAwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDEuOHMgZWFzZS1pbi1vdXQ7IH1cbiAgLnJhcHRvci1jb250YWluZXIuaXMtbG9hZGluZyB7XG4gICAgbWF4LWhlaWdodDogMzJweDtcbiAgICBtaW4taGVpZ2h0OiAzMnB4OyB9XG4gICAgLnJhcHRvci1jb250YWluZXIuaXMtbG9hZGluZzphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9sb2FkZXIuZ2lmXCIpIG5vLXJlcGVhdDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDMycHg7XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICBtYXJnaW46IC0xNnB4IDAgMCAtMTZweDsgfVxuXG4ubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gPiAubmF2X19saXN0IHtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gPiAuYWN0aXZlLm5hdl9fbGlzdCB7XG4gICAgbWF4LWhlaWdodDogbm9uZTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzBlbSkge1xuICAubm8tanMjc2NhbnBhbjp0YXJnZXQgYm9keSxcbiAgLm5vLWpzIGJvZHk6dGFyZ2V0LCBib2R5LnNob3ctbWVudSwgYm9keS5zaG93LWJhc2tldCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwOyB9IH1cblxuLnBhZ2Utb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLm5vLWpzI3NjYW5wYW46dGFyZ2V0IC5wYWdlLW92ZXJsYXksXG4gIC5uby1qcyAjc2hvcDp0YXJnZXQgLnBhZ2Utb3ZlcmxheSxcbiAgLnNob3ctbWVudSAucGFnZS1vdmVybGF5LFxuICAuc2hvdy1iYXNrZXQgLnBhZ2Utb3ZlcmxheSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgIC5wYWdlLW92ZXJsYXkgLm5vLWpzI3NjYW5wYW46dGFyZ2V0LFxuICAgIC5zaG93LW1lbnUgLnBhZ2Utb3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmx0LWllOSAucGFnZS1vdmVybGF5IC5uby1qcyNzY2FucGFuOnRhcmdldCxcbiAgLnNob3ctbWVudSAubHQtaWU5IC5wYWdlLW92ZXJsYXkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAubmF2IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4ubHQtaWU5IC5uYXYge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAubmF2X19saXN0IC5uYXZfX2xpc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNzMzMzQ7XG4gICAgbWluLXdpZHRoOiAyNTZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5uYXZfX2xpc3QgLm5hdl9fbGlzdCAubmF2X19pdGVtLCAubmF2X19saXN0IC5uYXZfX2xpc3QgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNDA0MDQwOyB9XG4gICAgICAubmF2X19saXN0IC5uYXZfX2xpc3QgLm5hdl9faXRlbTpmaXJzdC1jaGlsZCwgLm5hdl9fbGlzdCAubmF2X19saXN0IC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7IH0gfVxuXG4ubHQtaWU5IC5uYXZfX2xpc3QgLm5hdl9fbGlzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNzMzMzQ7XG4gIG1pbi13aWR0aDogMjU2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubHQtaWU5IC5uYXZfX2xpc3QgLm5hdl9fbGlzdCAubmF2X19pdGVtLCAubHQtaWU5IC5uYXZfX2xpc3QgLm5hdl9fbGlzdCAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNDA0MDQwOyB9XG4gICAgLmx0LWllOSAubmF2X19saXN0IC5uYXZfX2xpc3QgLm5hdl9faXRlbTpmaXJzdC1jaGlsZCwgLmx0LWllOSAubmF2X19saXN0IC5uYXZfX2xpc3QgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgLm5hdl9faXRlbS5hY3RpdmUgPiAubmF2X19saXN0LCAuYWN0aXZlLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuID4gLm5hdl9fbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gIC5uYXZfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5uby1qcyAubmF2X19pdGVtOmhvdmVyID4gLm5hdl9fbGlzdCwgLm5vLWpzIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbjpob3ZlciA+IC5uYXZfX2xpc3QsXG4gICAgLm5hdl9faXRlbS5ob3ZlciA+IC5uYXZfX2xpc3QsIC5ob3Zlci5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiA+IC5uYXZfX2xpc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ubHQtaWU5IC5uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm5vLWpzIC5uYXZfX2l0ZW06aG92ZXIgPiAubHQtaWU5IC5uYXZfX2xpc3QsIC5uby1qcyAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW46aG92ZXIgPiAubHQtaWU5IC5uYXZfX2xpc3QsXG4gIC5uYXZfX2l0ZW0uaG92ZXIgPiAubHQtaWU5IC5uYXZfX2xpc3QsIC5ob3Zlci5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiA+IC5sdC1pZTkgLm5hdl9fbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAubmF2X19pdGVtLCAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4ge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm5hdl9faXRlbSAubmF2X19pdGVtLCAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gLm5hdl9faXRlbSwgLm5hdl9faXRlbSAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4sIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4ge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAubmF2X19pdGVtOmxhc3QtY2hpbGQsIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbjpsYXN0LWNoaWxkIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwOyB9IH1cblxuLmx0LWllOSAubmF2X19pdGVtLCAubHQtaWU5IC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiB7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5sdC1pZTkgLm5hdl9faXRlbSAubHQtaWU5IC5uYXZfX2l0ZW0sIC5sdC1pZTkgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuIC5sdC1pZTkgLm5hdl9faXRlbSwgLmx0LWllOSAubmF2X19pdGVtIC5sdC1pZTkgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuLCAubHQtaWU5IC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiAubHQtaWU5IC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmx0LWllOSAubmF2X19pdGVtOmxhc3QtY2hpbGQsIC5sdC1pZTkgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuOmxhc3QtY2hpbGQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiA+IC5uYXZfX2xpc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmx0LWllOSAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gPiAubmF2X19saXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubmF2X19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAubmF2X19saW5rLCAubmF2X19saW5rOmhvdmVyLCAubmF2X19saW5rOmZvY3VzLCAubmF2X19saW5rOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICAubmF2X19saW5rIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLm5vLWpzIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbjpob3ZlciA+IC5uYXZfX2xpbmssXG4gICAgICAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4uaG92ZXIgPiAubmF2X19saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM3MzMzNDtcbiAgICAgICAgY29sb3I6ICNhZjliNTY7IH1cbiAgICAgICAgLm5vLWpzIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbjpob3ZlciA+IC5uYXZfX2xpbms6YWZ0ZXIsXG4gICAgICAgIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbi5ob3ZlciA+IC5uYXZfX2xpbms6YWZ0ZXIge1xuICAgICAgICAgIGNvbG9yOiBpbmhlcml0OyB9IH1cbiAgLmx0LWllOSAubmF2X19saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAubm8tanMgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmx0LWllOSAubmF2X19saW5rLFxuICAgIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbi5ob3ZlciA+IC5sdC1pZTkgLm5hdl9fbGluayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzczMzM0O1xuICAgICAgY29sb3I6ICNhZjliNTY7IH1cbiAgICAgIC5uby1qcyAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW46aG92ZXIgPiAubHQtaWU5IC5uYXZfX2xpbms6YWZ0ZXIsXG4gICAgICAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4uaG92ZXIgPiAubHQtaWU5IC5uYXZfX2xpbms6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gPiAubmF2X19saW5rIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gPiAubmF2X19saW5rOmhvdmVyOmFmdGVyIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gICAgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuID4gLm5hdl9fbGluazphZnRlciB7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICBjb250ZW50OiBcIu6YhFwiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbnNcIjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGhlaWdodDogMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgIHNwZWFrOiBub25lO1xuICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuICAgIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiA+IC5uYXZfX2xpbmsuYWN0aXZlOmFmdGVyIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzBlbSkge1xuICAgIC5uYXZfX2xpbmsge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MDQwNDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAuOGVtIDglO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07IH1cbiAgICAgIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiAubmF2X19saXN0IC5uYXZfX2xpbmsge1xuICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgcGFkZGluZzogMC44ZW0gMTIlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgIC5uYXZfX2xpbms6aG92ZXIsIC5uYXZfX2xpbms6Zm9jdXMsIC5uYXZfX2xpbms6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNzMzMzQ7XG4gICAgICBjb2xvcjogI2FmOWI1NjsgfVxuICAgICAgLm5hdl9fbGluazpob3ZlcjphZnRlciwgLm5hdl9fbGluazpmb2N1czphZnRlciwgLm5hdl9fbGluazphY3RpdmU6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5uYXZfX2l0ZW0uYWN0aXZlID4gLm5hdl9fbGluaywgLmFjdGl2ZS5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiA+IC5uYXZfX2xpbmsge1xuICAgICAgY29sb3I6ICNhZjliNTY7IH1cbiAgICAgIC5uYXZfX2l0ZW0uYWN0aXZlID4gLm5hdl9fbGluay5oaWdobGlnaHQtLXNlY29uZGFyeSwgLmFjdGl2ZS5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiA+IC5uYXZfX2xpbmsuaGlnaGxpZ2h0LS1zZWNvbmRhcnkge1xuICAgICAgICBjb2xvcjogIzI3MjMyNDsgfSB9XG4gIC5sdC1pZTkgLm5hdl9fbGluazpob3ZlciwgLmx0LWllOSAubmF2X19saW5rOmZvY3VzLCAubHQtaWU5IC5uYXZfX2xpbms6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzczMzM0O1xuICAgIGNvbG9yOiAjYWY5YjU2OyB9XG4gICAgLmx0LWllOSAubmF2X19saW5rOmhvdmVyOmFmdGVyLCAubHQtaWU5IC5uYXZfX2xpbms6Zm9jdXM6YWZ0ZXIsIC5sdC1pZTkgLm5hdl9fbGluazphY3RpdmU6YWZ0ZXIge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLm5hdl9faXRlbS5hY3RpdmUgPiAubHQtaWU5IC5uYXZfX2xpbmssIC5hY3RpdmUubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gPiAubHQtaWU5IC5uYXZfX2xpbmsge1xuICAgIGNvbG9yOiAjYWY5YjU2OyB9XG4gICAgLm5hdl9faXRlbS5hY3RpdmUgPiAubHQtaWU5IC5uYXZfX2xpbmsuaGlnaGxpZ2h0LS1zZWNvbmRhcnksIC5hY3RpdmUubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gPiAubHQtaWU5IC5uYXZfX2xpbmsuaGlnaGxpZ2h0LS1zZWNvbmRhcnkge1xuICAgICAgY29sb3I6ICMyNzIzMjQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5uYXZfX2xpbmsge1xuICAgICAgcGFkZGluZzogMTlweCAyM3B4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07IH1cbiAgICAgIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbiAubmF2X19saXN0IC5uYXZfX2xpbmsge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtOyB9XG4gICAgICAubmF2X19saW5rOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0ycHg7IH0gfVxuICAubHQtaWU5IC5uYXZfX2xpbmsge1xuICAgIHBhZGRpbmc6IDE5cHggMjNweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07IH1cbiAgICAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gLm5hdl9fbGlzdCAubHQtaWU5IC5uYXZfX2xpbmsge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07IH1cbiAgICAubHQtaWU5IC5uYXZfX2xpbms6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMnB4OyB9XG5cbi5uYXZfX2hpZ2hsaWdodC0tc2VuYXJ5IHtcbiAgY29sb3I6ICMyNzIzMjQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2RmN2E7IH1cblxuLmhlYWRlci1uYXYge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgIC5oZWFkZXItbmF2IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLmx0LWllOSAuaGVhZGVyLW5hdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5oZWFkZXItbmF2X19saXN0IHtcbiAgcGFkZGluZzogMCAwIDAgMjBweDtcbiAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3My41ZW0pIHtcbiAgICAuaGVhZGVyLW5hdl9fbGlzdCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLmhlYWRlci1uYXZfX2xpc3QuaGFzLWxldmVsLTEge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogNjBweCAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5oZWFkZXItbmF2X19saXN0Lmhhcy1sZXZlbC0yIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmhlYWRlci1uYXZfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGVhZGVyLW5hdl9faXRlbSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzMuNDM3NWVtKSB7XG4gICAgLmhlYWRlci1uYXZfX2l0ZW0ubGFzdC1jaGlsZCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3My41ZW0pIHtcbiAgICAuaGVhZGVyLW5hdl9faXRlbS5sYXN0LWNoaWxkIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICAuaGVhZGVyLW5hdl9faXRlbS5sYXN0LWNoaWxkIC5oZWFkZXItbmF2X19saW5rIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICAuaGVhZGVyLW5hdl9faXRlbS5sYXN0LWNoaWxkIC5oZWFkZXItbmF2X19saW5rOmFmdGVyIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7IH0gfVxuICAuaGFzLWNvbHVtbi1jb3VudC00IC5oZWFkZXItbmF2X19pdGVtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgICAgLmhhcy1jb2x1bW4tY291bnQtNCAuaGVhZGVyLW5hdl9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cbiAgICAubHQtaWU5IC5oYXMtY29sdW1uLWNvdW50LTQgLmhlYWRlci1uYXZfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgICAuaGFzLWNvbHVtbi1jb3VudC00IC5oZWFkZXItbmF2X19pdGVtIHtcbiAgICAgICAgd2lkdGg6IDI1JTsgfVxuICAgICAgICAuaGFzLWNvbHVtbi1jb3VudC00IC5oZWFkZXItbmF2X19pdGVtOm50aC1jaGlsZCg1bisxKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLmhhcy1jb2x1bW4tY291bnQtNCAuaGVhZGVyLW5hdl9faXRlbTpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIC5oYXMtY29sdW1uLWNvdW50LTQgLmhlYWRlci1uYXZfX2l0ZW06bnRoLWNoaWxkKDRuKzEpIHtcbiAgICAgICAgICBjbGVhcjogbGVmdDsgfSB9XG4gICAgLmx0LWllOSAuaGFzLWNvbHVtbi1jb3VudC00IC5oZWFkZXItbmF2X19pdGVtIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAgIC5sdC1pZTkgLmhhcy1jb2x1bW4tY291bnQtNCAuaGVhZGVyLW5hdl9faXRlbTpudGgtY2hpbGQoNW4rMSkge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLmx0LWllOSAuaGFzLWNvbHVtbi1jb3VudC00IC5oZWFkZXItbmF2X19pdGVtOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAubHQtaWU5IC5oYXMtY29sdW1uLWNvdW50LTQgLmhlYWRlci1uYXZfX2l0ZW06bnRoLWNoaWxkKDRuKzEpIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmhhcy1sZXZlbC0xID4gLmhlYWRlci1uYXZfX2l0ZW0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLmhhcy1sZXZlbC0xID4gLmhlYWRlci1uYXZfX2l0ZW06bnRoLWNoaWxkKC1uKzIpOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlM2UzZTM7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogMTEwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxcHg7IH0gfVxuICAgIC5sdC1pZTkgLmhhcy1sZXZlbC0xID4gLmhlYWRlci1uYXZfX2l0ZW06bnRoLWNoaWxkKC1uKzIpOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNlM2UzO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGhlaWdodDogMTEwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAyMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMXB4OyB9XG4gIC5oYXMtbGV2ZWwtMiAuaGVhZGVyLW5hdl9faXRlbSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuaGFzLWxldmVsLTIgLmhlYWRlci1uYXZfX2l0ZW06Zmlyc3QtY2hpbGQgLmhlYWRlci1uYXZfX2xpbmsge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIC5oZWFkZXItbmF2X19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5oZWFkZXItbmF2X19pdGVtOmZpcnN0LWNoaWxkIC5oZWFkZXItbmF2X19saW5rIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgLmhlYWRlci1uYXZfX2l0ZW06Zmlyc3QtY2hpbGQgLmhlYWRlci1uYXZfX2xpbmsuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZWNvbmRhcnksIC5oZWFkZXItbmF2X19pdGVtOmZpcnN0LWNoaWxkIC5oZWFkZXItbmF2X19saW5rLmhlYWRlci1uYXZfX2hpZ2hsaWdodC0tc2VuYXJ5IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG5cbi5oZWFkZXItbmF2X190b3AtbGV2ZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRvcDogMjJweDsgfVxuICAuaGVhZGVyLW5hdl9fdG9wLWxldmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmhlYWRlci1uYXZfX3RvcC1sZXZlbCAuaGVhZGVyLW5hdl9fdG9wLWxldmVsLS1saW5rIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbi5oZWFkZXItbmF2X19saW5rIHtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG4gIC5pcy1hY3RpdmUgPiAuaGVhZGVyLW5hdl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCAjQUU5QzU3O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcGFkZGluZzogMCA2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC0xMXB4O1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaXMtYWN0aXZlID4gLmhlYWRlci1uYXZfX2xpbmssIC5oZWFkZXItbmF2X19saW5rLmlzLWFjdGl2ZSwgLmhlYWRlci1uYXZfX2xpbmsuaXMtaW5wYXRoIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLmlzLWN1cnJlbnQgPiAuaGVhZGVyLW5hdl9fbGluayxcbiAgLmlzLWlucGF0aCA+IC5oZWFkZXItbmF2X19saW5rIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuaGVhZGVyLW5hdl9fbGluazpob3ZlciwgLmhlYWRlci1uYXZfX2xpbms6Zm9jdXMsIC5oZWFkZXItbmF2X19saW5rOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5oYXMtbGV2ZWwtMSAuaGVhZGVyLW5hdl9fbGluayB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5oYXMtbGV2ZWwtMSAuaGVhZGVyLW5hdl9fbGluazpob3ZlciwgLmhhcy1sZXZlbC0xIC5oZWFkZXItbmF2X19saW5rOmZvY3VzLCAuaGFzLWxldmVsLTEgLmhlYWRlci1uYXZfX2xpbms6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmhhcy1sZXZlbC0xIC5oZWFkZXItbmF2X19saW5rOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5oYXMtbGV2ZWwtMiAuaGVhZGVyLW5hdl9fbGluayB7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbjogMTBweCAwIDA7IH1cbiAgICAuaGFzLWxldmVsLTIgLmhlYWRlci1uYXZfX2xpbms6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuaGFzLWxldmVsLTIgLmhlYWRlci1uYXZfX2xpbms6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDA7IH1cblxuLmhlYWRlci1uYXZfX2hpZ2hsaWdodC0tc2Vjb25kYXJ5LFxuLmhlYWRlci1uYXZfX2hpZ2hsaWdodC0tc2VuYXJ5IHtcbiAgY29sb3I6ICMyNzIzMjQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmhlYWRlci1uYXZfX2hpZ2hsaWdodC0tc2Vjb25kYXJ5OjphZnRlcixcbiAgLmhlYWRlci1uYXZfX2hpZ2hsaWdodC0tc2VuYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4uaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWY5YjU2OyB9XG5cbi5oZWFkZXItbmF2X19oaWdobGlnaHQtLXNlbmFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2RmN2E7IH1cblxuLmhlYWRlci1uYXZfX2xpbmsuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZWNvbmRhcnk6aG92ZXIsXG4uaGVhZGVyLW5hdl9fbGluay5oZWFkZXItbmF2X19oaWdobGlnaHQtLXNlbmFyeTpob3ZlciB7XG4gIGNvbG9yOiAjMjcyMzI0OyB9XG5cbi5oZWFkZXItbmF2X19pdGVtLmlzLWFjdGl2ZSAuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZWNvbmRhcnksXG4uaGVhZGVyLW5hdl9faXRlbS5pcy1hY3RpdmUgLmhlYWRlci1uYXZfX2hpZ2hsaWdodC0tc2VuYXJ5IHtcbiAgY29sb3I6ICMyNzIzMjQ7IH1cbiAgLmhlYWRlci1uYXZfX2l0ZW0uaXMtYWN0aXZlIC5oZWFkZXItbmF2X19oaWdobGlnaHQtLXNlY29uZGFyeTo6YWZ0ZXIsXG4gIC5oZWFkZXItbmF2X19pdGVtLmlzLWFjdGl2ZSAuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZW5hcnk6OmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5oZWFkZXItbmF2X19pdGVtLmlzLWFjdGl2ZSAuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjdhNTY3OyB9XG5cbi5oZWFkZXItbmF2X19pdGVtLmlzLWFjdGl2ZSAuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZW5hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRlNTkzOyB9XG5cbi5uYXYtZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDdweCA0OXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgaGVpZ2h0OiAwO1xuICBtaW4taGVpZ2h0OiAzNTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMG1zIGxpbmVhciAyNTBtcywgb3BhY2l0eSAyNTBtcyBlYXNlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA5O1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5pcy1hY3RpdmUgKyAubmF2LWRyb3Bkb3duLFxuICAuaXMtYWN0aXZlID4gLm5hdi1kcm9wZG93biB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwIGxpbmVhciwgb3BhY2l0eSAyNTBtcyBlYXNlO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLmlzLWFjdGl2ZSArIC5uYXYtZHJvcGRvd24ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5oZWFkZXItbmF2X19jdGEge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zIGVhc2U7XG4gIHotaW5kZXg6IDEwO1xuICBtYXJnaW4tdG9wOiAtMzBweDsgfVxuICAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdCwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLXNlY29uZGFyeSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLXRlcnRpYXJ5LCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tbGFyZ2UtYWx0LCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tbGFyZ2UsIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWJpdC0tbGFyZ2UsIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iZXN0c2VsbGVyLCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYml0IHtcbiAgICBiYWNrZ3JvdW5kOiAjQUU5QzU3O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgcGFkZGluZzogMThweCAxNXB4OyB9XG4gICAgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQgLmZyb20sIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1zZWNvbmRhcnkgLmZyb20sIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS10ZXJ0aWFyeSAuZnJvbSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWxhcmdlLWFsdCAuZnJvbSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWxhcmdlIC5mcm9tLCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UgLmZyb20sIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iaXQtLWxhcmdlIC5mcm9tLCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYmVzdHNlbGxlciAuZnJvbSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWJpdCAuZnJvbSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBmb250LWZhbWlseTogJ1RpbWVzIE5ldyBSb21hbicsIFRpbWVzLCBzZXJpZjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7IH1cbiAgICAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdCAucHJpY2UsIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1zZWNvbmRhcnkgLnByaWNlLCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tdGVydGlhcnkgLnByaWNlLCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tbGFyZ2UtYWx0IC5wcmljZSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWxhcmdlIC5wcmljZSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlIC5wcmljZSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWJpdC0tbGFyZ2UgLnByaWNlLCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYmVzdHNlbGxlciAucHJpY2UsIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iaXQgLnByaWNlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gICAgICAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdCwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLXNlY29uZGFyeSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLXRlcnRpYXJ5LCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tbGFyZ2UtYWx0LCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tbGFyZ2UsIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWJpdC0tbGFyZ2UsIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iZXN0c2VsbGVyLCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYml0IHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7IH0gfVxuICAgIC5sdC1pZTkgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQsIC5sdC1pZTkgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLXNlY29uZGFyeSwgLmx0LWllOSAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tdGVydGlhcnksIC5sdC1pZTkgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWxhcmdlLWFsdCwgLmx0LWllOSAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tbGFyZ2UsIC5sdC1pZTkgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlLCAubHQtaWU5IC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iaXQtLWxhcmdlLCAubHQtaWU5IC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iZXN0c2VsbGVyLCAubHQtaWU5IC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iaXQge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgICAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdCwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLXNlY29uZGFyeSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLXRlcnRpYXJ5LCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tbGFyZ2UtYWx0LCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tbGFyZ2UsIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSwgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWJpdC0tbGFyZ2UsIC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iZXN0c2VsbGVyLCAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYml0IHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0b3A6IC01MHB4OyB9IH1cbiAgICAubHQtaWU5IC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LCAubHQtaWU5IC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1zZWNvbmRhcnksIC5sdC1pZTkgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLXRlcnRpYXJ5LCAubHQtaWU5IC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1sYXJnZS1hbHQsIC5sdC1pZTkgLmhlYWRlci1uYXZfX2N0YSAuc3BsYXQtLWxhcmdlLCAubHQtaWU5IC5oZWFkZXItbmF2X19jdGEgLnNwbGF0LS1iZXN0c2VsbGVyLS1sYXJnZSwgLmx0LWllOSAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYml0LS1sYXJnZSwgLmx0LWllOSAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYmVzdHNlbGxlciwgLmx0LWllOSAuaGVhZGVyLW5hdl9fY3RhIC5zcGxhdC0tYml0IHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHRvcDogLTUwcHg7IH1cblxuLmhlYWRlci1uYXZfX2N0YS1pbWFnZSB7XG4gIG1heC13aWR0aDogODAlOyB9XG5cbi5oZWFkZXItbmF2X190b3AtYnV0dG9uIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNzNweDtcbiAgbWluLXdpZHRoOiAyMjVweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDAgMTBweCAxMXB4IDMwcHg7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogMTA7IH1cbiAgLmhlYWRlci1uYXZfX3RvcC1idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYTFhMWE7IH1cbiAgLmhlYWRlci1uYXZfX3RvcC1idXR0b24gLmljb24tbmV4dC1jaXJjbGU6OmJlZm9yZSB7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIHdpZHRoOiAyNnB4O1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBtYXJnaW4tbGVmdDogMTVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gICAgLmhlYWRlci1uYXZfX3RvcC1idXR0b24ge1xuICAgICAgdG9wOiAxMTVweDsgfSB9XG4gIC5sdC1pZTkgLmhlYWRlci1uYXZfX3RvcC1idXR0b24ge1xuICAgIHRvcDogMTE1cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5oZWFkZXItbmF2X190b3AtYnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI3MjMyNDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQ7XG4gICAgICBoZWlnaHQ6IDY0cHg7IH1cbiAgICAgIC5oZWFkZXItbmF2X190b3AtYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYjEwMDsgfVxuICAgICAgLmhlYWRlci1uYXZfX3RvcC1idXR0b24gLmljb24tbmV4dC1jaXJjbGUge1xuICAgICAgICB0b3A6IDAuNzVlbTsgfVxuICAgICAgICAuaGVhZGVyLW5hdl9fdG9wLWJ1dHRvbiAuaWNvbi1uZXh0LWNpcmNsZTo6YmVmb3JlIHtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAzNXB4OyB9IH1cbiAgLmx0LWllOSAuaGVhZGVyLW5hdl9fdG9wLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyMzI0O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0O1xuICAgIGhlaWdodDogNjRweDsgfVxuICAgIC5sdC1pZTkgLmhlYWRlci1uYXZfX3RvcC1idXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYjEwMDsgfVxuICAgIC5sdC1pZTkgLmhlYWRlci1uYXZfX3RvcC1idXR0b24gLmljb24tbmV4dC1jaXJjbGUge1xuICAgICAgdG9wOiAwLjc1ZW07IH1cbiAgICAgIC5sdC1pZTkgLmhlYWRlci1uYXZfX3RvcC1idXR0b24gLmljb24tbmV4dC1jaXJjbGU6OmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMzVweDsgfVxuXG4uaW1hZ2UtYmxvY2ssIC5pbWFnZS1ibG9jay0tbGVmdCwgLmltYWdlLWJsb2NrLS1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubHQtaWU5IC5pbWFnZS1ibG9ja19fY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiA4NGVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgcGFkZGluZzogIDAgMXJlbTsgfVxuICAgIC5sdC1pZTkgLmltYWdlLWJsb2NrX19jb250YWluZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgICAgLmx0LWllOSAuaW1hZ2UtYmxvY2tfX2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgcGFkZGluZzogIDAgMnJlbTsgfSB9XG4gICAgLmx0LWllOSAubHQtaWU5IC5pbWFnZS1ibG9ja19fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIHBhZGRpbmc6ICAwIDJyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDczLjVlbSkge1xuICAgIC5pbWFnZS1ibG9ja19fY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogODRlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgcGFkZGluZzogIDAgMXJlbTsgfVxuICAgICAgLmltYWdlLWJsb2NrX19jb250YWluZXI6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDczLjVlbSkgYW5kIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgIC5pbWFnZS1ibG9ja19fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIHBhZGRpbmc6ICAwIDJyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzMuNWVtKSB7XG4gICAgICAubHQtaWU5IC5pbWFnZS1ibG9ja19fY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAgMCAycmVtOyB9IH1cbiAgLmltYWdlLWJsb2NrX19jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2Mi41ZW0pIHtcbiAgICAgIC5pbWFnZS1ibG9ja19fY29udGVudCB7XG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gICAgLmx0LWllOSAuaW1hZ2UtYmxvY2tfX2NvbnRlbnQge1xuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3My41ZW0pIHtcbiAgICAgIC5pbWFnZS1ibG9ja19fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjIuNWVtKSB7XG4gICAgICAuaW1hZ2UtYmxvY2stLWxlZnQgLmltYWdlLWJsb2NrX19jb250ZW50IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAubHQtaWU5IC5pbWFnZS1ibG9jay0tbGVmdCAuaW1hZ2UtYmxvY2tfX2NvbnRlbnQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDczLjVlbSkge1xuICAgICAgLmltYWdlLWJsb2NrLS1sZWZ0IC5pbWFnZS1ibG9ja19fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS44NzVlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gICAgLmltYWdlLWJsb2NrX19jb250ZW50IC5idXR0b24tLXNtYWxsLCAuaW1hZ2UtYmxvY2tfX2NvbnRlbnQgLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLmltYWdlLWJsb2NrX19jb250ZW50IC5idXR0b24tLXNlY29uZGFyeS0tc21hbGwsIC5pbWFnZS1ibG9ja19fY29udGVudCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLCAuaW1hZ2UtYmxvY2tfX2NvbnRlbnQgLmNoZWNrb3V0X19zdWJtaXQsIC5pbWFnZS1ibG9ja19fY29udGVudCAuY2hlY2tvdXRfX3N1Ym1pdC0tdXMsIC5pbWFnZS1ibG9ja19fY29udGVudCAuZGlzY291bnRfX3N1Ym1pdCwgLmltYWdlLWJsb2NrX19jb250ZW50IC5idXR0b24tLXByaW1hcnksIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLS1zZWNvbmRhcnksIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLS10ZXJ0aWFyeSwgLmltYWdlLWJsb2NrX19jb250ZW50IC5idXR0b24tLWJ1eSB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjI1ZW07IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3My41ZW0pIHtcbiAgICAgICAgLmltYWdlLWJsb2NrX19jb250ZW50IC5idXR0b24tLXNtYWxsLCAuaW1hZ2UtYmxvY2tfX2NvbnRlbnQgLnBlcm1pc3Npb24tYmFyX19idXR0b24sIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLS1wcmltYXJ5LS1zbWFsbCwgLmltYWdlLWJsb2NrX19jb250ZW50IC5idXR0b24tLXNlY29uZGFyeS0tc21hbGwsIC5pbWFnZS1ibG9ja19fY29udGVudCAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3IsIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLS10ZXJ0aWFyeS0tc21hbGwsIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLCAuaW1hZ2UtYmxvY2tfX2NvbnRlbnQgLmNoZWNrb3V0X19zdWJtaXQsIC5pbWFnZS1ibG9ja19fY29udGVudCAuY2hlY2tvdXRfX3N1Ym1pdC0tdXMsIC5pbWFnZS1ibG9ja19fY29udGVudCAuZGlzY291bnRfX3N1Ym1pdCwgLmltYWdlLWJsb2NrX19jb250ZW50IC5idXR0b24tLXByaW1hcnksIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLS1zZWNvbmRhcnksIC5pbWFnZS1ibG9ja19fY29udGVudCAuYnV0dG9uLS10ZXJ0aWFyeSwgLmltYWdlLWJsb2NrX19jb250ZW50IC5idXR0b24tLWJ1eSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMi41ZW07IH0gfVxuICAuaW1hZ2UtYmxvY2tfX2hlYWRlciwgLnNlY3Rpb25fX3RleHQtaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5pbWFnZS1ibG9ja19fcGljdHVyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDYyLjVlbSkge1xuICAgICAgLmltYWdlLWJsb2NrX19waWN0dXJlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgIC5sdC1pZTkgLmltYWdlLWJsb2NrX19waWN0dXJlIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDczLjVlbSkge1xuICAgICAgLmltYWdlLWJsb2NrX19waWN0dXJlIHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjIuNWVtKSB7XG4gICAgICAuaW1hZ2UtYmxvY2stLWxlZnQgLmltYWdlLWJsb2NrX19waWN0dXJlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IGF1dG87IH0gfVxuICAgIC5sdC1pZTkgLmltYWdlLWJsb2NrLS1sZWZ0IC5pbWFnZS1ibG9ja19fcGljdHVyZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzMuNWVtKSB7XG4gICAgICAuaW1hZ2UtYmxvY2stLWxlZnQgLmltYWdlLWJsb2NrX19waWN0dXJlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAuaW1hZ2UtYmxvY2tfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2Mi41ZW0pIHtcbiAgICAgIC5pbWFnZS1ibG9ja19faW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICAubHQtaWU5IC5pbWFnZS1ibG9ja19faW1hZ2Uge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzMuNWVtKSB7XG4gICAgICAuaW1hZ2UtYmxvY2tfX2ltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDYyLjVlbSkge1xuICAgICAgLmltYWdlLWJsb2NrLS1sZWZ0IC5pbWFnZS1ibG9ja19faW1hZ2Uge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5sdC1pZTkgLmltYWdlLWJsb2NrLS1sZWZ0IC5pbWFnZS1ibG9ja19faW1hZ2Uge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5pbWFnZS1ibG9jayAuc3BsYXQsIC5pbWFnZS1ibG9jay0tbGVmdCAuc3BsYXQsIC5pbWFnZS1ibG9jay0tcmlnaHQgLnNwbGF0LCAuaW1hZ2UtYmxvY2sgLnNwbGF0LS1zZWNvbmRhcnksIC5pbWFnZS1ibG9jay0tbGVmdCAuc3BsYXQtLXNlY29uZGFyeSwgLmltYWdlLWJsb2NrLS1yaWdodCAuc3BsYXQtLXNlY29uZGFyeSwgLmltYWdlLWJsb2NrIC5zcGxhdC0tdGVydGlhcnksIC5pbWFnZS1ibG9jay0tbGVmdCAuc3BsYXQtLXRlcnRpYXJ5LCAuaW1hZ2UtYmxvY2stLXJpZ2h0IC5zcGxhdC0tdGVydGlhcnksIC5pbWFnZS1ibG9jayAuc3BsYXQtLWxhcmdlLWFsdCwgLmltYWdlLWJsb2NrLS1sZWZ0IC5zcGxhdC0tbGFyZ2UtYWx0LCAuaW1hZ2UtYmxvY2stLXJpZ2h0IC5zcGxhdC0tbGFyZ2UtYWx0LCAuaW1hZ2UtYmxvY2sgLnNwbGF0LS1sYXJnZSwgLmltYWdlLWJsb2NrLS1sZWZ0IC5zcGxhdC0tbGFyZ2UsIC5pbWFnZS1ibG9jay0tcmlnaHQgLnNwbGF0LS1sYXJnZSwgLmltYWdlLWJsb2NrIC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UsIC5pbWFnZS1ibG9jay0tbGVmdCAuc3BsYXQtLWJlc3RzZWxsZXItLWxhcmdlLCAuaW1hZ2UtYmxvY2stLXJpZ2h0IC5zcGxhdC0tYmVzdHNlbGxlci0tbGFyZ2UsIC5pbWFnZS1ibG9jayAuc3BsYXQtLWJpdC0tbGFyZ2UsIC5pbWFnZS1ibG9jay0tbGVmdCAuc3BsYXQtLWJpdC0tbGFyZ2UsIC5pbWFnZS1ibG9jay0tcmlnaHQgLnNwbGF0LS1iaXQtLWxhcmdlLCAuaW1hZ2UtYmxvY2sgLnNwbGF0LS1iZXN0c2VsbGVyLCAuaW1hZ2UtYmxvY2stLWxlZnQgLnNwbGF0LS1iZXN0c2VsbGVyLCAuaW1hZ2UtYmxvY2stLXJpZ2h0IC5zcGxhdC0tYmVzdHNlbGxlciwgLmltYWdlLWJsb2NrIC5zcGxhdC0tYml0LCAuaW1hZ2UtYmxvY2stLWxlZnQgLnNwbGF0LS1iaXQsIC5pbWFnZS1ibG9jay0tcmlnaHQgLnNwbGF0LS1iaXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDsgfVxuXG4uY2hlY2tvdXRfX2FjY2VwdC1jaGVja2JveC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzMuNWVtKSB7XG4gICAgLmNoZWNrb3V0X19hY2NlcHQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuY2hlY2tvdXRfX2Jhc2tldC1hbmNob3Ige1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubHQtaWU5IC5jaGVja291dF9fYmFza2V0LWFuY2hvciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNoZWNrb3V0X19iYXNrZXQtYW5jaG9yOmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMjVweDsgfVxuXG4uY2hlY2tvdXRfX3NoaXBwaW5nbWV0aG9kIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2hlY2tvdXRfX3N1Ym1pdCwgLmNoZWNrb3V0X19zdWJtaXQtLXVzIHtcbiAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3My41ZW0pIHtcbiAgICAuY2hlY2tvdXRfX3N1Ym1pdCwgLmNoZWNrb3V0X19zdWJtaXQtLXVzIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5jaGVja291dF9fc3VibWl0LS11cyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtaW5kZW50OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAuY2hlY2tvdXRfX3N1Ym1pdC0tdXM6ZGlzYWJsZWQge1xuICAgICAgdGV4dC1pbmRlbnQ6IC0zMDBweDsgfVxuICAgICAgLmNoZWNrb3V0X19zdWJtaXQtLXVzOmRpc2FibGVkOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltYWdlcy9sb2FkZXIuZ2lmXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgbWFyZ2luOiAtMTZweCAwIDAgLTE2cHg7XG4gICAgICAgIG1hcmdpbjogIC0xLjZyZW0gMCAwIC0xLjZyZW07IH1cblxuLmNoZWNrb3V0X19wYXltZW50LS1pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jaGVja291dF9fcGF5bWVudC1pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uY2hlY2tvdXRfX3Bob25lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbjogMTBweCAwO1xuICBtYXJnaW46ICAxcmVtIDA7IH1cbiAgLmNoZWNrb3V0X19waG9uZTpiZWZvcmUge1xuICAgIGNvbG9yOiAjYWY5YjU2O1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cblxuLmNoZWNrb3V0X19vcGVuaW5nIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5jaGVja291dF9fZ2xzIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uY2hlY2tvdXRfX2dscy1yZXN1bHRzIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLmNoZWNrb3V0X19oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5jaGVja291dF9faGlkZGVuLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmRpc2NvdW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kaXNjb3VudF9fc3VibWl0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDE0cHggNDBweCAxMHB4O1xuICAgIHBhZGRpbmc6ICAxLjRyZW0gNHJlbSAxcmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLmRpc2NvdW50X19zdWJtaXQge1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDQwcHggOHB4O1xuICAgICAgICBwYWRkaW5nOiAgMS4ycmVtIDRyZW0gMC44cmVtOyB9IH1cbiAgICAubHQtaWU5IC5kaXNjb3VudF9fc3VibWl0IHtcbiAgICAgIHBhZGRpbmc6IDEycHggNDBweCA4cHg7XG4gICAgICBwYWRkaW5nOiAgMS4ycmVtIDRyZW0gMC44cmVtOyB9XG5cbi5zb2NpYWxfX2l0ZW0tLWZhY2Vib29rLCAuc29jaWFsX19pdGVtLS10d2l0dGVyLCAuc29jaWFsX19pdGVtLS1ncGx1cyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAzMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTIwcHg7IH1cblxuLmdsb2JhbC1tZXNzYWdlLS1wcmltYXJ5LCAuZ2xvYmFsLW1lc3NhZ2UsIC5nbG9iYWwtbWVzc2FnZS0tc2Vjb25kYXJ5LCAuZ2xvYmFsLW1lc3NhZ2UtLXRlcnRpYXJ5LCAuZ2xvYmFsLW1lc3NhZ2UtLXF1YXRlcm5hcnksIC5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeSwgLmdsb2JhbC1tZXNzYWdlLS1zZW5hcnksIC5nbG9iYWwtbWVzc2FnZS0teG1hcywgLmdsb2JhbC1tZXNzYWdlLS14bWFzLWFsdCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDA0MDQwO1xuICBtYXgtaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UsIG1heC1oZWlnaHQgMjAwbXMgZWFzZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwcywgMzAwbXM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLCBtYXgtaGVpZ2h0IDIwMG1zIGVhc2UgMzAwbXM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZSwgbWF4LWhlaWdodCAyMDBtcyBlYXNlIDMwMG1zO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UsIG1heC1oZWlnaHQgMjAwbXMgZWFzZSAzMDBtcztcbiAgLyoqXHJcbiAgICogUmVuZGVyaW5nIHRoZW1lIGNvbG9ycyBhbmQgc2VsZWN0b3JzXHJcbiAgICovIH1cbiAgLmdsb2JhbC1tZXNzYWdlLS1wcmltYXJ5OmZpcnN0LWNoaWxkLCAuZ2xvYmFsLW1lc3NhZ2U6Zmlyc3QtY2hpbGQsIC5nbG9iYWwtbWVzc2FnZS0tc2Vjb25kYXJ5OmZpcnN0LWNoaWxkLCAuZ2xvYmFsLW1lc3NhZ2UtLXRlcnRpYXJ5OmZpcnN0LWNoaWxkLCAuZ2xvYmFsLW1lc3NhZ2UtLXF1YXRlcm5hcnk6Zmlyc3QtY2hpbGQsIC5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeTpmaXJzdC1jaGlsZCwgLmdsb2JhbC1tZXNzYWdlLS1zZW5hcnk6Zmlyc3QtY2hpbGQsIC5nbG9iYWwtbWVzc2FnZS0teG1hczpmaXJzdC1jaGlsZCwgLmdsb2JhbC1tZXNzYWdlLS14bWFzLWFsdDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTsgfVxuICAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS1wcmltYXJ5LCAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLCAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS1zZWNvbmRhcnksIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXRlcnRpYXJ5LCAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS1xdWF0ZXJuYXJ5LCAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS1xdWluYXJ5LCAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS1zZW5hcnksIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMsIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMtYWx0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIG1heC1oZWlnaHQ6IDE1MHB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgICAtbW96LXRyYW5zaXRpb246IG5vbmU7XG4gICAgLW8tdHJhbnNpdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgICAgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tcHJpbWFyeSwgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZSwgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tc2Vjb25kYXJ5LCAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS10ZXJ0aWFyeSwgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tcXVhdGVybmFyeSwgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeSwgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tc2VuYXJ5LCAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS14bWFzLCAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS14bWFzLWFsdCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDgwcHg7IH0gfVxuICAgIC5sdC1pZTkgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tcHJpbWFyeSwgLmx0LWllOSAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLCAubHQtaWU5IC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXNlY29uZGFyeSwgLmx0LWllOSAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS10ZXJ0aWFyeSwgLmx0LWllOSAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS1xdWF0ZXJuYXJ5LCAubHQtaWU5IC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXF1aW5hcnksIC5sdC1pZTkgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tc2VuYXJ5LCAubHQtaWU5IC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMsIC5sdC1pZTkgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0teG1hcy1hbHQge1xuICAgICAgbWF4LWhlaWdodDogODBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAgIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXByaW1hcnksIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UsIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXNlY29uZGFyeSwgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tdGVydGlhcnksIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXF1YXRlcm5hcnksIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXF1aW5hcnksIC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSwgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0teG1hcywgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0teG1hcy1hbHQge1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MHB4OyB9IH1cbiAgICAubHQtaWU5IC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXByaW1hcnksIC5sdC1pZTkgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZSwgLmx0LWllOSAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS1zZWNvbmRhcnksIC5sdC1pZTkgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tdGVydGlhcnksIC5sdC1pZTkgLmlzLWFjdGl2ZS5nbG9iYWwtbWVzc2FnZS0tcXVhdGVybmFyeSwgLmx0LWllOSAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS1xdWluYXJ5LCAubHQtaWU5IC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSwgLmx0LWllOSAuaXMtYWN0aXZlLmdsb2JhbC1tZXNzYWdlLS14bWFzLCAubHQtaWU5IC5pcy1hY3RpdmUuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMtYWx0IHtcbiAgICAgIG1heC1oZWlnaHQ6IDYwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgICAuaGVhZGVyIC5nbG9iYWwtbWVzc2FnZS0tcHJpbWFyeSwgLmhlYWRlciAuZ2xvYmFsLW1lc3NhZ2UsIC5oZWFkZXIgLmdsb2JhbC1tZXNzYWdlLS1zZWNvbmRhcnksIC5oZWFkZXIgLmdsb2JhbC1tZXNzYWdlLS10ZXJ0aWFyeSwgLmhlYWRlciAuZ2xvYmFsLW1lc3NhZ2UtLXF1YXRlcm5hcnksIC5oZWFkZXIgLmdsb2JhbC1tZXNzYWdlLS1xdWluYXJ5LCAuaGVhZGVyIC5nbG9iYWwtbWVzc2FnZS0tc2VuYXJ5LCAuaGVhZGVyIC5nbG9iYWwtbWVzc2FnZS0teG1hcywgLmhlYWRlciAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMtYWx0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNjBweDsgfSB9XG4gIC5nbG9iYWwtbWVzc2FnZSwgLmdsb2JhbC1tZXNzYWdlLS1wcmltYXJ5LCAuZ2xvYmFsLW1lc3NhZ2UtLXNlY29uZGFyeSwgLmdsb2JhbC1tZXNzYWdlLS10ZXJ0aWFyeSwgLmdsb2JhbC1tZXNzYWdlLS1xdWF0ZXJuYXJ5LCAuZ2xvYmFsLW1lc3NhZ2UtLXF1aW5hcnksIC5nbG9iYWwtbWVzc2FnZS0tc2VuYXJ5LCAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMsIC5nbG9iYWwtbWVzc2FnZS0teG1hcy1hbHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzIzMjQ7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuZ2xvYmFsLW1lc3NhZ2UgLmdsb2JhbC1tZXNzYWdlX19jbG9zZSwgLmdsb2JhbC1tZXNzYWdlLS1wcmltYXJ5IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2UsIC5nbG9iYWwtbWVzc2FnZS0tc2Vjb25kYXJ5IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2UsIC5nbG9iYWwtbWVzc2FnZS0tdGVydGlhcnkgLmdsb2JhbC1tZXNzYWdlX19jbG9zZSwgLmdsb2JhbC1tZXNzYWdlLS1xdWF0ZXJuYXJ5IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2UsIC5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlLCAuZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlLCAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMgLmdsb2JhbC1tZXNzYWdlX19jbG9zZSwgLmdsb2JhbC1tZXNzYWdlLS14bWFzLWFsdCAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG4gICAgICBib3JkZXItY29sb3I6ICM5OTk7XG4gICAgICBjb2xvcjogIzI3MjMyNDsgfVxuICAgICAgLmdsb2JhbC1tZXNzYWdlIC5nbG9iYWwtbWVzc2FnZV9fY2xvc2U6aG92ZXIsIC5nbG9iYWwtbWVzc2FnZS0tcHJpbWFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlOmhvdmVyLCAuZ2xvYmFsLW1lc3NhZ2UtLXNlY29uZGFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlOmhvdmVyLCAuZ2xvYmFsLW1lc3NhZ2UtLXRlcnRpYXJ5IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2U6aG92ZXIsIC5nbG9iYWwtbWVzc2FnZS0tcXVhdGVybmFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlOmhvdmVyLCAuZ2xvYmFsLW1lc3NhZ2UtLXF1aW5hcnkgLmdsb2JhbC1tZXNzYWdlX19jbG9zZTpob3ZlciwgLmdsb2JhbC1tZXNzYWdlLS1zZW5hcnkgLmdsb2JhbC1tZXNzYWdlX19jbG9zZTpob3ZlciwgLmdsb2JhbC1tZXNzYWdlLS14bWFzIC5nbG9iYWwtbWVzc2FnZV9fY2xvc2U6aG92ZXIsIC5nbG9iYWwtbWVzc2FnZS0teG1hcy1hbHQgLmdsb2JhbC1tZXNzYWdlX19jbG9zZTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzIzMjQ7XG4gICAgICAgIGNvbG9yOiAjOTk5OyB9XG4gIC5nbG9iYWwtbWVzc2FnZS0tc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWY5YjU2O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmdsb2JhbC1tZXNzYWdlLS1zZWNvbmRhcnkgLmdsb2JhbC1tZXNzYWdlX19jbG9zZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzM2NTM2O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNzM2NTM2O1xuICAgICAgY29sb3I6ICNhZjliNTY7IH1cbiAgICAgIC5nbG9iYWwtbWVzc2FnZS0tc2Vjb25kYXJ5IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2U6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWY5YjU2O1xuICAgICAgICBjb2xvcjogIzczNjUzNjsgfVxuICAuZ2xvYmFsLW1lc3NhZ2UtLXRlcnRpYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg0ZDY0O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmdsb2JhbC1tZXNzYWdlLS10ZXJ0aWFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3ODk0YjM7XG4gICAgICBib3JkZXItY29sb3I6ICM3ODk0YjM7XG4gICAgICBjb2xvcjogIzM4NGQ2NDsgfVxuICAgICAgLmdsb2JhbC1tZXNzYWdlLS10ZXJ0aWFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM4NGQ2NDtcbiAgICAgICAgY29sb3I6ICM3ODk0YjM7IH1cbiAgLmdsb2JhbC1tZXNzYWdlLS1xdWF0ZXJuYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ5MzQzO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmdsb2JhbC1tZXNzYWdlLS1xdWF0ZXJuYXJ5IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2EwYzI3YTtcbiAgICAgIGJvcmRlci1jb2xvcjogI2EwYzI3YTtcbiAgICAgIGNvbG9yOiAjNmQ5MzQzOyB9XG4gICAgICAuZ2xvYmFsLW1lc3NhZ2UtLXF1YXRlcm5hcnkgLmdsb2JhbC1tZXNzYWdlX19jbG9zZTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2ZDkzNDM7XG4gICAgICAgIGNvbG9yOiAjYTBjMjdhOyB9XG4gIC5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgICBjb2xvcjogIzY2NjsgfVxuICAgIC5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzIzMjQ7XG4gICAgICBib3JkZXItY29sb3I6ICMyNzIzMjQ7XG4gICAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAgICAgLmdsb2JhbC1tZXNzYWdlLS1xdWluYXJ5IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2U6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgICAgICBjb2xvcjogIzI3MjMyNDsgfVxuICAuZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZGY3YTtcbiAgICBjb2xvcjogIzY2NjsgfVxuICAgIC5nbG9iYWwtbWVzc2FnZS0tc2VuYXJ5IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NlYTEwNTtcbiAgICAgIGJvcmRlci1jb2xvcjogI2NlYTEwNTtcbiAgICAgIGNvbG9yOiAjZmNkZjdhOyB9XG4gICAgICAuZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZGY3YTtcbiAgICAgICAgY29sb3I6ICNjZWExMDU7IH1cbiAgLmdsb2JhbC1tZXNzYWdlLS14bWFzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWE0ZTQ5O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmdsb2JhbC1tZXNzYWdlLS14bWFzIC5nbG9iYWwtbWVzc2FnZV9fY2xvc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MxMWMxNjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2MxMWMxNjtcbiAgICAgIGNvbG9yOiAjZWE0ZTQ5OyB9XG4gICAgICAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMgLmdsb2JhbC1tZXNzYWdlX19jbG9zZTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYTRlNDk7XG4gICAgICAgIGNvbG9yOiAjYzExYzE2OyB9XG4gIC5nbG9iYWwtbWVzc2FnZS0teG1hcy1hbHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTAwNDE7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMtYWx0IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JhNWJkOTtcbiAgICAgIGJvcmRlci1jb2xvcjogI2JhNWJkOTtcbiAgICAgIGNvbG9yOiAjMzEwMDQxOyB9XG4gICAgICAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMtYWx0IC5nbG9iYWwtbWVzc2FnZV9fY2xvc2U6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEwMDQxO1xuICAgICAgICBjb2xvcjogI2JhNWJkOTsgfVxuICAuZ2xvYmFsLW1lc3NhZ2VfX2NvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5nbG9iYWwtbWVzc2FnZV9fdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6IDM0cHg7XG4gICAgcGFkZGluZy1yaWdodDogMy40cmVtOyB9XG4gICAgLmdsb2JhbC1tZXNzYWdlX190ZXh0IHAge1xuICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC5nbG9iYWwtbWVzc2FnZV9fY291bnRlciB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZy1yaWdodDogMzRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmdsb2JhbC1tZXNzYWdlX19jbG9zZSB7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMjRweDtcbiAgICByaWdodDogMTBweDtcbiAgICByaWdodDogMXJlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgICAgIC5nbG9iYWwtbWVzc2FnZV9fY2xvc2Uge1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgcmlnaHQ6IDJyZW07IH0gfVxuICAgIC5sdC1pZTkgLmdsb2JhbC1tZXNzYWdlX19jbG9zZSB7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIHJpZ2h0OiAycmVtOyB9XG4gICAgLmdsb2JhbC1tZXNzYWdlX19jbG9zZTphZnRlciB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDsgfVxuXG4uZ2xvYmFsLW1lc3NhZ2UgYSwgLmdsb2JhbC1tZXNzYWdlLS1wcmltYXJ5IGEsIC5nbG9iYWwtbWVzc2FnZS0tc2Vjb25kYXJ5IGEsIC5nbG9iYWwtbWVzc2FnZS0tdGVydGlhcnkgYSwgLmdsb2JhbC1tZXNzYWdlLS1xdWF0ZXJuYXJ5IGEsIC5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeSBhLCAuZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSBhLCAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMgYSwgLmdsb2JhbC1tZXNzYWdlLS14bWFzLWFsdCBhLCAuZ2xvYmFsLW1lc3NhZ2UgcCwgLmdsb2JhbC1tZXNzYWdlLS1wcmltYXJ5IHAsIC5nbG9iYWwtbWVzc2FnZS0tc2Vjb25kYXJ5IHAsIC5nbG9iYWwtbWVzc2FnZS0tdGVydGlhcnkgcCwgLmdsb2JhbC1tZXNzYWdlLS1xdWF0ZXJuYXJ5IHAsIC5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeSBwLCAuZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSBwLCAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMgcCwgLmdsb2JhbC1tZXNzYWdlLS14bWFzLWFsdCBwLCAuZ2xvYmFsLW1lc3NhZ2UgcCBzdHJvbmcsIC5nbG9iYWwtbWVzc2FnZS0tcHJpbWFyeSBwIHN0cm9uZywgLmdsb2JhbC1tZXNzYWdlLS1zZWNvbmRhcnkgcCBzdHJvbmcsIC5nbG9iYWwtbWVzc2FnZS0tdGVydGlhcnkgcCBzdHJvbmcsIC5nbG9iYWwtbWVzc2FnZS0tcXVhdGVybmFyeSBwIHN0cm9uZywgLmdsb2JhbC1tZXNzYWdlLS1xdWluYXJ5IHAgc3Ryb25nLCAuZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSBwIHN0cm9uZywgLmdsb2JhbC1tZXNzYWdlLS14bWFzIHAgc3Ryb25nLCAuZ2xvYmFsLW1lc3NhZ2UtLXhtYXMtYWx0IHAgc3Ryb25nIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmdsb2JhbC1tZXNzYWdlLS1xdWluYXJ5IGEsIC5nbG9iYWwtbWVzc2FnZS0tcXVpbmFyeSBwLCAuZ2xvYmFsLW1lc3NhZ2UtLXF1aW5hcnkgcCBzdHJvbmcsXG4uZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSBhLFxuLmdsb2JhbC1tZXNzYWdlLS1zZW5hcnkgcCxcbi5nbG9iYWwtbWVzc2FnZS0tc2VuYXJ5IHAgc3Ryb25nIHtcbiAgY29sb3I6ICM2NjY7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHBvcHVwIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7IH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTsgfVxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpOyB9XG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7IH0gfVxuXG5ALW1vei1rZXlmcmFtZXMgcG9wdXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpOyB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7IH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTsgfSB9XG5cbkAtby1rZXlmcmFtZXMgcG9wdXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpOyB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7IH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTsgfSB9XG5cbkBrZXlmcmFtZXMgcG9wdXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpOyB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7IH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyB0ZWFzZXIge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7IH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpOyB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTsgfVxuICA3MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpOyB9XG4gIDg1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7IH0gfVxuXG5ALW1vei1rZXlmcmFtZXMgdGVhc2VyIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpOyB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTsgfVxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7IH1cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTsgfVxuICA4NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpOyB9IH1cblxuQC1vLWtleWZyYW1lcyB0ZWFzZXIge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7IH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpOyB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTsgfVxuICA3MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpOyB9XG4gIDg1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHRlYXNlciB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTsgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7IH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpOyB9XG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02NnB4KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjZweCk7IH1cbiAgODUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzNweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03M3B4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwcHgpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MHB4KTsgfSB9XG5cbi5wZXJtaXNzaW9uLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjFiMTk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogNTQwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAtNTQwcHg7XG4gIHJpZ2h0OiAyMHB4O1xuICB6LWluZGV4OiA5O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdpZHRoOiAzOTBweDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIHBhZGRpbmc6IDcwcHggMjBweCAyMHB4IDIwcHg7XG4gIHBhZGRpbmc6ICA3cmVtIDJyZW0gMnJlbSAycmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJvdHRvbSAwLjNzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJvdHRvbSAwLjNzIGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uOiBib3R0b20gMC4zcyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZS1vdXQ7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBwb3B1cCAxcyA2cyBmb3J3YXJkcywgdGVhc2VyIDJzIDMwcztcbiAgLW1vei1hbmltYXRpb246IHBvcHVwIDFzIDZzIGZvcndhcmRzLCB0ZWFzZXIgMnMgMzBzO1xuICAtby1hbmltYXRpb246IHBvcHVwIDFzIDZzIGZvcndhcmRzLCB0ZWFzZXIgMnMgMzBzO1xuICBhbmltYXRpb246IHBvcHVwIDFzIDZzIGZvcndhcmRzLCB0ZWFzZXIgMnMgMzBzOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAucGVybWlzc2lvbi1iYXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAubHQtaWU5IC5wZXJtaXNzaW9uLWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnBlcm1pc3Npb24tYmFyOmhvdmVyIHtcbiAgICBib3R0b206IC01MzVweDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAucGVybWlzc2lvbi1iYXIuaXMtYWN0aXZlIHtcbiAgICBib3R0b206IC03MHB4OyB9XG4gIC5sdC1pZTEwIC5wZXJtaXNzaW9uLWJhciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGhlaWdodDogNzBweDsgfVxuICAgIC5sdC1pZTEwIC5wZXJtaXNzaW9uLWJhcjpob3ZlciB7XG4gICAgICBoZWlnaHQ6IDc1cHg7IH1cbiAgICAubHQtaWUxMCAucGVybWlzc2lvbi1iYXIuaXMtYWN0aXZlIHtcbiAgICAgIGhlaWdodDogNTg0cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG4gIC5wZXJtaXNzaW9uLWJhcl9faGVhZGxpbmUge1xuICAgIGNvbG9yOiAjYWY5YjU2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICBmb250LXNpemU6IDMuNHJlbTtcbiAgICBwYWRkaW5nOiAxMnB4IDAgMDtcbiAgICBwYWRkaW5nOiAgMS4ycmVtIDAgMDsgfVxuICAgIC5wZXJtaXNzaW9uLWJhcl9faGVhZGxpbmU6aG92ZXIge1xuICAgICAgY29sb3I6ICNhZjliNTY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLnBlcm1pc3Npb24tYmFyX190ZXh0IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07IH1cbiAgICAucGVybWlzc2lvbi1iYXJfX3RleHQgcDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLnBlcm1pc3Npb24tYmFyX190ZXh0IGEge1xuICAgICAgY29sb3I6ICNhZjliNTY7IH1cbiAgICAucGVybWlzc2lvbi1iYXJfX3RleHQgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiBhdXRvOyB9XG4gIC5wZXJtaXNzaW9uLWJhcl9fYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgLnBlcm1pc3Npb24tYmFyX19pbnB1dCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgbWFyZ2luOiAgMCAwIDFyZW07XG4gICAgaGVpZ2h0OiAzOXB4O1xuICAgIGhlaWdodDogMy45cmVtOyB9XG4gIC5wZXJtaXNzaW9uLWJhcl9fY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNHB4O1xuICAgIHRvcDogLTI5cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0b3AgMC4zcyAwLjVzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogZWFzZS1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiB0b3AgMC4zcyAwLjVzIGVhc2Utb3V0O1xuICAgIC1vLXRyYW5zaXRpb246IHRvcCAwLjNzIDAuNXMgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuM3MgMC41cyBlYXNlLW91dDsgfVxuICAgIC5pcy1hY3RpdmUgLnBlcm1pc3Npb24tYmFyX19jbG9zZSB7XG4gICAgICB0b3A6IDRweDsgfVxuXG4uYmxvZy10b3BpbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBoZWlnaHQ6IDMwdnc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMzQwcHg7XG4gIG1heC1oZWlnaHQ6IDUwMHB4OyB9XG5cbi5ibG9nLXRvcGltYWdlX19pbWFnZSB7XG4gIG9wYWNpdHk6IDAuNDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5ibG9nLXRvcGltYWdlX19pbWFnZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgLmx0LWllOSAuYmxvZy10b3BpbWFnZV9faW1hZ2Uge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ibG9nLW5hdiB7XG4gIG1hcmdpbi10b3A6IDQ0cHg7XG4gIHBhZGRpbmc6IDEwcHggMCAycHg7IH1cbiAgLmJsb2ctbmF2X190aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAwO1xuICAgIHBhZGRpbmc6ICAwLjVyZW0gMXJlbSAwLjVyZW0gMDsgfVxuICAuYmxvZy1uYXZfX3NoYXJlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMC44cmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLmJsb2ctbmF2X19zaGFyZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgLmx0LWllOSAuYmxvZy1uYXZfX3NoYXJlIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAuYmxvZy1uYXZfX3NoYXJlLXRvb2xzIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtOyB9XG5cbi5ibG9nLW5hdl9fdGFncyB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBvcGFjaXR5OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmJsb2ctbmF2X190YWdzLmlzLWxvYWRpbmcge1xuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmJsb2ctbmF2X190YWdzIC5yc1RodW1iIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmJsb2ctbmF2X190YWdzIC5yc1RodW1ic0NvbnRhaW5lciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5ibG9nLW5hdl9fdGFncyAucnNUaHVtYnMge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLmJsb2ctbmF2X190YWdzIC5yc05hdlNlbGVjdGVkIHtcbiAgICBib3JkZXI6IG5vbmU7IH1cblxuLmJsb2ctbmF2X190YWdzLS1ibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM5NGQ2NDtcbiAgaGVpZ2h0OiA1NnB4ICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDsgfVxuICAuYmxvZy1uYXZfX3RhZ3MtLWJsdWUgLnJzTmF2SXRlbSB7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gIC5ibG9nLW5hdl9fdGFncy0tYmx1ZSAuYmxvZy1uYXZfX3RhZ3MtaXRlbSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIHBhZGRpbmc6IDE0cHggMCAxOHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5ibG9nLW5hdl9fdGFncy0tYmx1ZSAuYmxvZy1uYXZfX3RhZ3MtaXRlbS5pcy1hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5ibG9nLW5hdl9fdGFncy0tYmx1ZSAuYmxvZy1uYXZfX3RhZ3MtaXRlbS5pcy1hY3RpdmU6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5ibG9nX19oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmJsb2ctbmF2X190YWdzLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmJsb2ctbmF2X190YWcge1xuICBwYWRkaW5nOiA1cHggMTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDZkNjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHdpZHRoOiAxMDBweDsgfVxuICAuYmxvZy1uYXZfX3RhZzpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UzZTNlMzsgfVxuXG4uYmxvZy1wb3N0X19hdXRob3ItaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiA2M3B4O1xuICBoZWlnaHQ6IDYzcHg7XG4gIG1hcmdpbjogMTBweCBhdXRvOyB9XG5cbi5ibG9nLXBvc3RfX3RvcC1jb250ZW50IHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgei1pbmRleDogMTsgfVxuXG4uYmxvZy1wb3N0X19oZWFkZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAyNWVtKSB7XG4gICAgLmJsb2ctcG9zdF9faGVhZGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5sdC1pZTkgLmJsb2ctcG9zdF9faGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5ibG9nLXBvc3RfX2hlYWRlciB7XG4gICAgICBmb250LXNpemU6IDU1cHg7IH0gfVxuICAubHQtaWU5IC5ibG9nLXBvc3RfX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiA1NXB4OyB9XG5cbi5ibG9nLXBvc3RfX3N1YmhlYWRlciB7XG4gIGNvbG9yOiAjMDAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbWFyZ2luOiAwIGF1dG8gNDBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbWF4LXdpZHRoOiA3MDBweDsgfVxuXG4uYmxvZy1wb3N0X19kYXRlIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZmFtaWx5OiBcIlRpbWVzXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmJsb2ctcG9zdCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLmJsb2ctcG9zdF9fZGV0YWlscyB7XG4gICAgZm9udC1mYW1pbHk6IFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYmxvZy1wb3N0X19jb21tZW50IHtcbiAgICBtaW4taGVpZ2h0OiAxNTBweDsgfVxuXG4uYmxvZy1wb3N0X19ib2R5LCAuYmxvZy1jb21tZW50X19pdGVtIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogOTgwcHg7XG4gIHBhZGRpbmc6IDAgMTBweDsgfVxuICAuYmxvZy1wb3N0X19ib2R5IGltZywgLmJsb2ctY29tbWVudF9faXRlbSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjVlbSkge1xuICAuYmxvZy1pdGVtIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgbWluLWhlaWdodDogMTMuNTcxNDI4NTcxNGVtO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuLmx0LWllOSAuYmxvZy1pdGVtIHtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBtaW4taGVpZ2h0OiAxMy41NzE0Mjg1NzE0ZW07XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogNTAlO1xuICBmbG9hdDogbGVmdDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gIC5ibG9nLWl0ZW0ge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuLmx0LWllOSAuYmxvZy1pdGVtIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmJsb2ctaXRlbSB7XG4gICAgbWluLWhlaWdodDogMTguNTcxNDI4NTcxNGVtO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG4ubHQtaWU5IC5ibG9nLWl0ZW0ge1xuICBtaW4taGVpZ2h0OiAxOC41NzE0Mjg1NzE0ZW07XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5ibG9nLWl0ZW06bnRoLW9mLXR5cGUoMykge1xuICBjbGVhcjogbGVmdDsgfVxuXG4uYmxvZy1pdGVtX19pbWFnZS1jb250YWluZXIge1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5ibG9nLWl0ZW1fX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJsb2ctaXRlbV9fY29udGVudCB7XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDI1ZW0pIHtcbiAgICAuYmxvZy1pdGVtX19jb250ZW50IHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEzMHB4OyB9IH1cbiAgLmx0LWllOSAuYmxvZy1pdGVtX19jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAxMzBweDsgfVxuXG4uYmxvZy1pdGVtX19kYXRlIHtcbiAgY29sb3I6ICMwMDA7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1mYW1pbHk6IFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBvcGFjaXR5OiAwLjU7IH1cblxuLmJsb2ctaXRlbV9fdGFncyB7XG4gIGNvbG9yOiAjQjY5RDRCO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5ibG9nLWl0ZW0tLWxhcmdlIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgIC5ibG9nLWl0ZW0tLWxhcmdlIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gIC5sdC1pZTkgLmJsb2ctaXRlbS0tbGFyZ2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDI1ZW0pIHtcbiAgICAuYmxvZy1pdGVtLS1sYXJnZSAuYmxvZy1pdGVtX19jb250ZW50IHtcbiAgICAgIG1pbi1oZWlnaHQ6IDE4MHB4OyB9IH1cbiAgLmx0LWllOSAuYmxvZy1pdGVtLS1sYXJnZSAuYmxvZy1pdGVtX19jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAxODBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gICAgLmJsb2ctaXRlbS0tbGFyZ2UgLmJsb2ctaXRlbV9faGVhZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gIC5sdC1pZTkgLmJsb2ctaXRlbS0tbGFyZ2UgLmJsb2ctaXRlbV9faGVhZGVyIHtcbiAgICBmb250LXNpemU6IDI0cHg7IH1cblxuLmJsb2ctY29tbWVudCB7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuYmxvZy1jb21tZW50IHtcbiAgICAgIHdpZHRoOiA4MCU7IH0gfVxuICAubHQtaWU5IC5ibG9nLWNvbW1lbnQge1xuICAgIHdpZHRoOiA4MCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDczLjVlbSkge1xuICAgIC5ibG9nLWNvbW1lbnQge1xuICAgICAgd2lkdGg6IDc1JTsgfSB9XG4gIC5ibG9nLWNvbW1lbnRfX2l0ZW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjFyZW07IH1cbiAgLmJsb2ctY29tbWVudF9fdGV4dC1jb250YWluZXIge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5ibG9nLWNvbW1lbnRfX2hlYWRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmJsb2ctY29tbWVudF9faW1hZ2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogNTBweDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSWNvbnNcclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdpY29ucyc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvaWNvbnMuZW90Jyk7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvaWNvbnMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgICAgdXJsKCcuLi9mb250cy9pY29ucy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgIHVybCgnLi4vZm9udHMvaWNvbnMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICAgICB1cmwoJy4uL2ZvbnRzL2ljb25zLnN2ZyNpY29ucycpIGZvcm1hdCgnc3ZnJyk7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL29wZW5zYW5zLWxpZ2h0LXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnLi4vZm9udHMvb3BlbnNhbnMtbGlnaHQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9vcGVuc2Fucy1yZWd1bGFyLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnLi4vZm9udHMvb3BlbnNhbnMtcmVndWxhci13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL29wZW5zYW5zLXNlbWlib2xkLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnLi4vZm9udHMvb3BlbnNhbnMtc2VtaWJvbGQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcbiIsIi8vIFRlbXBsYXRlcyBhcmUgYnVpbGRpbmcgYmxvY2tzIGFuZCBkb27igJl0IHN0YW5kIG9uIHRoZWlyIG93biBhbmQgcmFyZWx5IGRlc2NyaWJlIGxvb2sgYW5kIGZlZWwuXHJcbi8vIFRlbXBsYXRlcyBhcmUgc2luZ2xlLCByZXBlYXRhYmxlIHBhdHRlcm5zIHRoYXQgY2FuIGJlIHB1dCB0b2dldGhlciB0byBmb3JtIGEgY29tcG9uZW50LlxyXG4vLyBBIHRlbXBsYXRlIGlzIHNvbWV0aGluZyB5b3Ugd291bGRu4oCZdCBldmVyIG5lZWQgdG8gdGFyZ2V0IGluIHlvdXIgYXBwbGljYXRpb24gbG9naWMsIGFuZCB0aGVyZWZvcmUgY2FuIGJlIHNhZmVseSBleHRlbmRlZCB3aXRoIGEgcHJlcHJvY2Vzc29yLlxyXG5cclxuJWxpc3QtY2xlYW4ge1xyXG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuJWRvdHRlZC1saXN0IHtcclxuICBAZXh0ZW5kICVsaXN0LWNsZWFuO1xyXG4gIGxpIHtcclxuICAgIHBhZGRpbmctbGVmdDogMC44ZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6XCJcXDAwYjdcIjtcclxuICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiV0cmltLXRleHQge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLy8gQ2xlYXJmaXhcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcbiAgLy8gRm9yIG1vZGVybiBicm93c2Vyc1xyXG4gIC8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXHJcbiAgLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cclxuICAvLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcclxuICAvLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxyXG4gIC8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXHJcbiAgLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxyXG4gICY6YmVmb3JlLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCIgXCI7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG5cclxuICAvLyBGb3IgSUUgNi83IG9ubHlcclxuICAqem9vbTogMTtcclxufVxyXG5cclxuJWNsZWFyZml4IHsgQGluY2x1ZGUgY2xlYXJmaXg7IH1cclxuXHJcbiVib3JkZXItYm94IHsgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTsgfVxyXG5cclxuJWJvcmRlci1jaXJjbGUgeyBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDEwMCUpOyB9IC8vIGluIHNvbWUgY2FzZXMgaXQgZG9lc24ndCB3b3JrIHByb3Blcmx5IHdpdGggNTAlIC0gaXQgbWlnaHQgYmUgc3ViLXBpeGVsIHJvdW5kaW5nXHJcblxyXG4lbm8tcm91bmRpbmcgeyBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApOyB9XHJcblxyXG4lYmFja2dyb3VuZCB7XHJcbiAgJi0tcHJpbWFyeSB7IGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5OyB9XHJcbiAgJi0tc2Vjb25kYXJ5IHsgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXNlY29uZGFyeTsgfVxyXG4gICYtLXRlcnRpYXJ5IHsgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXRlcnRpYXJ5OyB9XHJcbiAgJi0tcXVhdGVybmFyeSB7IGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1xdWF0ZXJuYXJ5OyB9XHJcbiAgJi0tcXVpbmFyeSB7IGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1xdWluYXJ5OyB9XHJcbiAgJi0tc2VuYXJ5IHsgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXNlbmFyeTsgfVxyXG59XHJcblxyXG5cclxuJGNsb3NlLWJ1dHRvbi1zaXplOiAyNHB4ICFkZWZhdWx0O1xyXG5cclxuJWNsb3NlLWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNsb3NlLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRjbG9zZS1idXR0b24tYm9yZGVyLWNvbG9yO1xyXG4gIGNvbG9yOiAkY2xvc2UtYnV0dG9uLWNvbG9yO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBoZWlnaHQ6ICRjbG9zZS1idXR0b24tc2l6ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1pbmRlbnQ6IDk5cHg7XHJcbiAgd2lkdGg6ICRjbG9zZS1idXR0b24tc2l6ZTtcclxuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG5cclxuICAmOmhvdmVyIHsgY29sb3I6ICRjbG9zZS1idXR0b24tY29sb3I7IH1cclxuXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlxcZDdcIjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogJGNsb3NlLWJ1dHRvbi1zaXplO1xyXG4gICAgbGluZS1oZWlnaHQ6IGZsb29yKCRjbG9zZS1idXR0b24tc2l6ZSAqIDAuOTUpIC0gMjsgLy8gc3VidHJhY3RpbmcgYm9yZGVyXHJcbiAgICB0ZXh0LWluZGVudDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDEwMCVcclxuICB9XHJcbn1cclxuIiwiXHJcbi5wYWdlIHtcclxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgLy8gQWRkaW5nIHBhZGRpbmcgdG8gY2F0ZXIgZm9yIGZpeGVkIGhlYWRlclxyXG4gICRhc3N1bWVkLWdsb2JhbC1tZXNzYWdlLWhlaWdodC1tb2JpbGU6IDg1cHg7IC8vIDMgbGluZXMgb2YgdGV4dFxyXG4gICRhc3N1bWVkLWdsb2JhbC1tZXNzYWdlLWhlaWdodC10YWJsZXQ6IDczcHg7IC8vIDIgbGluZXMgb2YgdGV4dFxyXG4gICRhc3N1bWVkLWdsb2JhbC1tZXNzYWdlLWhlaWdodC1kZXNrdG9wOiA1MnB4OyAvLyAxIGxpbmUgb2YgdGV4dFxyXG5cclxuICAvLyBTZXR0aW5nIHRyYW5zaXRpb24gd2l0aCBkZWxheSwgbGlrZSBpbiBfbWVzc2FnZS5zY3NzXHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbiggcGFkZGluZy10b3AgMjAwbXMgZWFzZSAzMDBtcyApOyAvLyBBbmltYXRlIG91dFxyXG5cclxuICAvLyBBZGRpbmcgbmVjZXNzYXJ5IHBhZGRpbmdcclxuICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtbW9iaWxlO1xyXG4gIGJvZHkuaGFzLWdsb2JhbC1tZXNzYWdlICYge1xyXG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LW1vYmlsZSArICRhc3N1bWVkLWdsb2JhbC1tZXNzYWdlLWhlaWdodC1tb2JpbGU7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG5vbmUpOyAvLyBBbmltYXRlIGluIChubyBhbmltYXRpb24pXHJcbiAgfVxyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkge1xyXG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LXRhYmxldCArICRoZWFkZXItbmF2LWhlaWdodDtcclxuICAgIGJvZHkuaGFzLWdsb2JhbC1tZXNzYWdlICYge1xyXG4gICAgICAvLyBBZGRpbmcgYXNzdW1lZCBtZXNzYWdlIGhlaWdodFxyXG4gICAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtbW9iaWxlICsgJGhlYWRlci1uYXYtaGVpZ2h0ICsgJGFzc3VtZWQtZ2xvYmFsLW1lc3NhZ2UtaGVpZ2h0LXRhYmxldDtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkge1xyXG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LWRlc2t0b3AgKyAkaGVhZGVyLW5hdi1oZWlnaHQgKyA0MHB4O1xyXG4gICAgYm9keS5oYXMtZ2xvYmFsLW1lc3NhZ2UgJiB7XHJcbiAgICAgIC8vIEFkZGluZyBhc3N1bWVkIG1lc3NhZ2UgaGVpZ2h0XHJcbiAgICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wICsgJGhlYWRlci1uYXYtaGVpZ2h0ICsgJGFzc3VtZWQtZ2xvYmFsLW1lc3NhZ2UtaGVpZ2h0LWRlc2t0b3AgKyA0MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteHhsLi4uICkge1xyXG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LWRlc2t0b3AgKyAkaGVhZGVyLW5hdi1oZWlnaHQ7XHJcbiAgICBib2R5Lmhhcy1nbG9iYWwtbWVzc2FnZSAmIHtcclxuICAgICAgLy8gQWRkaW5nIGFzc3VtZWQgbWVzc2FnZSBoZWlnaHRcclxuICAgICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LWRlc2t0b3AgKyAkaGVhZGVyLW5hdi1oZWlnaHQgKyAkYXNzdW1lZC1nbG9iYWwtbWVzc2FnZS1oZWlnaHQtZGVza3RvcDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tYWluIHtcclxuICAmLS1oYXMtYXNpZGUge1xyXG4gICAgQGV4dGVuZCAlc2VjdGlvbi1zcGFjZS1ib3R0b207XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7XHJcbiAgICAgIEBpbmNsdWRlIHNwYW4oNik7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteHhsLi4uICkge1xyXG4gICAgICBAaW5jbHVkZSBzcGFuKDgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyBNYWtpbmcgZXh0cmEgc3BhY2UgZm9yIGJhc2tldFxyXG4gICYtLWNoZWNrb3V0IHtcclxuICAgIEBleHRlbmQgLm1haW4tLWhhcy1hc2lkZTtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14eGwuLi4gKSB7XHJcbiAgICAgIEBpbmNsdWRlIHNwYW4oNyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYXNpZGUge1xyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14bC4uLiApIHtcclxuICAgIEBpbmNsdWRlIHNwYW4oNik7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IGNvbHVtbi1wYWRkaW5nKCk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14eGwuLi4gKSB7XHJcbiAgICBAaW5jbHVkZSBzcGFuKDQpO1xyXG4gIH1cclxuXHJcbiAgLy8gTWFraW5nIGV4dHJhIHNwYWNlIGZvciBiYXNrZXRcclxuICAmLS1jaGVja291dCB7XHJcbiAgICBAZXh0ZW5kIC5hc2lkZTtcclxuICAgIEBleHRlbmQgJXNlY3Rpb24tc3BhY2UtYm90dG9tO1xyXG5cclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14bC4uLiApIHsgQGluY2x1ZGUgc3Bhbig1IG9tZWdhKTsgfVxyXG4gIH1cclxuXHJcbiAgLy8gU2V0dGluZyBvZmZzZXQgb2YgYmFza2V0XHJcbiAgLmJhc2tldCB7XHJcbiAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkgeyBtYXJnaW4tdG9wOiAyMHB4OyB9XHJcbiAgfVxyXG59XHJcblxyXG4lc2VjdGlvbi1zcGFjZS1ib3R0b20ge1xyXG4gIG1hcmdpbi1ib3R0b206IDUlO1xyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14bC4uLiApIHsgbWFyZ2luLWJvdHRvbTogNCU7IH1cclxufVxyXG5cclxuLnNlY3Rpb24ge1xyXG4gIEBleHRlbmQgJWNsZWFyZml4O1xyXG4gIG1hcmdpbjogNSUgMDtcclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkgeyBtYXJnaW46IDQlIDA7IH1cclxuXHJcbiAgQGF0LXJvb3Qge1xyXG4gICAgJXNlY3Rpb24tLWhpZ2hsaWdodGVkIHtcclxuICAgICAgYm9yZGVyOiB7XHJcbiAgICAgICAgYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIH1cclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgIHBhZGRpbmc6IDUlIDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7IHBhZGRpbmc6IDIuNSUgMDsgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi0tbGltaXQge1xyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkgeyBtYXJnaW46IDMwcHggMDsgfVxyXG4gIH1cclxuXHJcbiAgJi0tZGFyayB7XHJcbiAgICBAZXh0ZW5kICViYWNrZ3JvdW5kLS10ZXJ0aWFyeTtcclxuICAgIEBleHRlbmQgJXNlY3Rpb24tLWhpZ2hsaWdodGVkO1xyXG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oICRicmFuZC1jb2xvci10ZXJ0aWFyeSwgNSUgKTtcclxuICB9XHJcblxyXG4gICYtLWhpZ2hsaWdodCB7XHJcbiAgICBAZXh0ZW5kICViYWNrZ3JvdW5kLS1xdWluYXJ5O1xyXG4gICAgQGV4dGVuZCAlc2VjdGlvbi0taGlnaGxpZ2h0ZWQ7XHJcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbiggJGJyYW5kLWNvbG9yLXF1aW5hcnksIDUlICk7XHJcbiAgfVxyXG5cclxuICAmLS1jYW1wYWlnbiB7XHJcbiAgICBAZXh0ZW5kICViYWNrZ3JvdW5kLS1zZW5hcnk7XHJcbiAgICBAZXh0ZW5kICVzZWN0aW9uLS1oaWdobGlnaHRlZDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7IHBhZGRpbmc6IDQlIDA7IH1cclxuICB9XHJcblxyXG4gICZfX2hlYWRlciB7XHJcbiAgICAmLS1jZW50ZXIge1xyXG4gICAgICBAZXh0ZW5kIC5zZWN0aW9uX19oZWFkZXI7XHJcbiAgICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1tLi4uICkgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiBzcGFuKDEwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteHhsLi4uICkgeyB3aWR0aDogc3Bhbig4KTsgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBoMSB7IG1hcmdpbi10b3A6IDA7IH1cclxuICB9XHJcblxyXG4gICZfX2hlYWRlci1zdWJqZWN0IHtcclxuICAgIEBleHRlbmQgLnN1YmplY3Q7XHJcblxyXG4gICAgKyBoMSxcclxuICAgICsgaDIsXHJcbiAgICArIGgzIHsgbWFyZ2luLXRvcDogMDsgfVxyXG4gIH1cclxuXHJcbiAgJl9fdGV4dCB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkgeyBtYXgtd2lkdGg6IDYwZW07IH1cclxuXHJcbiAgICAlYnV0dG9uIHsgbWFyZ2luLXRvcDogcHgtdG8tZW0oMjBweCwgMTZweCk7IH1cclxuICB9XHJcblxyXG4gICZfX3RleHQtaGVhZGVyIHsgQGV4dGVuZCAuaW1hZ2UtYmxvY2tfX2hlYWRlcjsgfVxyXG5cclxuICAmX190ZXh0LXN1YmplY3QgeyBAZXh0ZW5kIC5zdWJqZWN0OyB9IC8vIGluIGNvcmUvYmFzZS9fdHlwb2dyYXBoeVxyXG59XHJcblxyXG4uY29udGFpbmVyIHtcclxuICBAZXh0ZW5kICVjb250YWluZXI7XHJcblxyXG4gICYtLWNlbnRlciB7XHJcbiAgICBAZXh0ZW5kIC5jb250YWluZXI7XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxyXG4gIH1cclxufVxyXG5cclxuLmRpdmlkZXIge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWJvcmRlcjtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi50ZXh0LS1zcGxpdCB7XHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkge1xyXG4gICAgQGluY2x1ZGUgY29sdW1ucygyKTtcclxuICAgIEBpbmNsdWRlIGNvbHVtbi1nYXAoICRndXR0ZXItd2lkdGggKTtcclxuXHJcbiAgICBwOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfSAvLyBGaXhpbmcgd2VpcmQgYnVnIHRoYXQgY3JlYXRlcyBvZmZzZXRcclxuICB9XHJcbn1cclxuXHJcbi50ZXh0LS1jZW50ZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRleHRjb2wge1xyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14bC4uLiApIHtcclxuICAgIEBpbmNsdWRlIHNwYW4oNik7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IGNvbHVtbi1wYWRkaW5nKCkgLyAyO1xyXG4gIH1cclxuICAmLS1maXJzdCB7XHJcbiAgICBAZXh0ZW5kIC50ZXh0Y29sO1xyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNvbHVtbi1wYWRkaW5nKCkgLyAyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gRm9ybSBlcnJvcnNcclxuLmVycm9ycyB7XHJcbiAgQGV4dGVuZCAuc2VjdGlvbjtcclxuICBAZXh0ZW5kICVzZWN0aW9uLS1oaWdobGlnaHRlZDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVzc2FnZS1lcnJvci1iYWNrZ3JvdW5kO1xyXG4gIGJvcmRlci1jb2xvcjogJG1lc3NhZ2UtZXJyb3ItY29sb3I7XHJcbiAgY29sb3I6ICRjb2xvci1kaXNwbGF5O1xyXG5cclxuICAmX19oZWFkZXIgeyBtYXJnaW4tdG9wOiAwOyB9XHJcbiAgJl9fbGlzdCB7IG1hcmdpbi1ib3R0b206IDA7IH1cclxufVxyXG5cclxuLnJhcHRvci1jb250YWluZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXgtaGVpZ2h0OiAyMDAwcHg7XHJcblxyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxLjhzIGVhc2UtaW4tb3V0O1xyXG5cclxuICAmLmlzLWxvYWRpbmcge1xyXG4gICAgbWF4LWhlaWdodDogMzJweDtcclxuICAgIG1pbi1oZWlnaHQ6IDMycHg7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoICcuLi9pbWFnZXMvbG9hZGVyLmdpZicgKSBuby1yZXBlYXQ7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgIG1hcmdpbjogLTE2cHggMCAwIC0xNnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vc3VwcG9ydFwiO1xuXG4vLyBUaGlzIG1peGluIHByb3ZpZGVzIGJhc2ljIHN1cHBvcnQgZm9yIENTUzMgcHJvcGVydGllcyBhbmRcbi8vIHRoZWlyIGNvcnJlc3BvbmRpbmcgZXhwZXJpbWVudGFsIENTUzIgcHJvcGVydGllcyB3aGVuXG4vLyB0aGUgaW1wbGVtZW50YXRpb25zIGFyZSBpZGVudGljYWwgZXhjZXB0IGZvciB0aGUgcHJvcGVydHlcbi8vIHByZWZpeC5cbkBtaXhpbiBleHBlcmltZW50YWwoJHByb3BlcnR5LCAkdmFsdWUsXG4gICRtb3ogICAgICA6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSxcbiAgJHdlYmtpdCAgIDogJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQsXG4gICRvICAgICAgICA6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEsXG4gICRtcyAgICAgICA6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbWljcm9zb2Z0LFxuICAka2h0bWwgICAgOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLWtodG1sLFxuICAkb2ZmaWNpYWwgOiB0cnVlXG4pIHtcbiAgQGlmICR3ZWJraXQgIGFuZCAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCAgICB7IC13ZWJraXQtI3skcHJvcGVydHl9IDogJHZhbHVlOyB9XG4gIEBpZiAka2h0bWwgICBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1raHRtbCAgICAgeyAgLWtodG1sLSN7JHByb3BlcnR5fSA6ICR2YWx1ZTsgfVxuICBAaWYgJG1veiAgICAgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSAgIHsgICAgLW1vei0jeyRwcm9wZXJ0eX0gOiAkdmFsdWU7IH1cbiAgQGlmICRtcyAgICAgIGFuZCAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1pY3Jvc29mdCB7ICAgICAtbXMtI3skcHJvcGVydHl9IDogJHZhbHVlOyB9XG4gIEBpZiAkbyAgICAgICBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1vcGVyYSAgICAgeyAgICAgIC1vLSN7JHByb3BlcnR5fSA6ICR2YWx1ZTsgfVxuICBAaWYgJG9mZmljaWFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgICAgICAgICAjeyRwcm9wZXJ0eX0gOiAkdmFsdWU7IH1cbn1cblxuLy8gU2FtZSBhcyBleHBlcmltZW50YWwoKSwgYnV0IGZvciBjYXNlcyB3aGVuIHRoZSBwcm9wZXJ0eSBpcyB0aGUgc2FtZSBhbmQgdGhlIHZhbHVlIGlzIHZlbmRvcml6ZWRcbkBtaXhpbiBleHBlcmltZW50YWwtdmFsdWUoJHByb3BlcnR5LCAkdmFsdWUsXG4gICRtb3ogICAgICA6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSxcbiAgJHdlYmtpdCAgIDogJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQsXG4gICRvICAgICAgICA6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEsXG4gICRtcyAgICAgICA6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbWljcm9zb2Z0LFxuICAka2h0bWwgICAgOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLWtodG1sLFxuICAkb2ZmaWNpYWwgOiB0cnVlXG4pIHtcbiAgQGlmICR3ZWJraXQgIGFuZCAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCAgICB7ICN7JHByb3BlcnR5fSA6IC13ZWJraXQtI3skdmFsdWV9OyB9XG4gIEBpZiAka2h0bWwgICBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1raHRtbCAgICAgeyAjeyRwcm9wZXJ0eX0gOiAgLWtodG1sLSN7JHZhbHVlfTsgfVxuICBAaWYgJG1veiAgICAgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSAgIHsgI3skcHJvcGVydHl9IDogICAgLW1vei0jeyR2YWx1ZX07IH1cbiAgQGlmICRtcyAgICAgIGFuZCAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1pY3Jvc29mdCB7ICN7JHByb3BlcnR5fSA6ICAgICAtbXMtI3skdmFsdWV9OyB9XG4gIEBpZiAkbyAgICAgICBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1vcGVyYSAgICAgeyAjeyRwcm9wZXJ0eX0gOiAgICAgIC1vLSN7JHZhbHVlfTsgfVxuICBAaWYgJG9mZmljaWFsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgI3skcHJvcGVydHl9IDogICAgICAgICAjeyR2YWx1ZX07IH1cbn1cbiIsIkBpbXBvcnQgXCJzaGFyZWRcIjtcblxuLy8gQ2hhbmdlIHRoZSBib3ggbW9kZWwgZm9yIE1vemlsbGEsIFdlYmtpdCwgSUU4IGFuZCB0aGUgZnV0dXJlXG4vL1xuLy8gQHBhcmFtICRic1xuLy8gICBbIGNvbnRlbnQtYm94IHwgYm9yZGVyLWJveCBdXG5cbkBtaXhpbiBib3gtc2l6aW5nKCRicykge1xuICAkYnM6IHVucXVvdGUoJGJzKTtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKGJveC1zaXppbmcsICRicyxcbiAgICAtbW96LCAtd2Via2l0LCBub3QoLW8pLCBub3QoLW1zKSwgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICk7XG59XG4iLCIvLyBTZXR0aW5ncywgdmFyaWFibGVzIGFuZCBtaXhpbnMgZm9yIHRoaXMgcGFydGljdWxhciBwcm9qZWN0LlxyXG4vL1xyXG4vLyBlLmcuICRjb2xvci1hbGVydC1iYWNrZ3JvdW5kOiAjZjAwO1xyXG5cclxuLy8gVHVybnMgb24gZ3JpZCBhbmQgYnJlYWtwb2ludCBnYXVnZVxyXG4kZGV2ZWxvcG1lbnQ6IGZhbHNlOyAvLyB0cnVlLCBmYWxzZVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gVHlwb2dyYXBoeVxyXG5cclxuLy8gQmFzZSBmb250IHNpemVcclxuJGZvbnQtYmFzZS1zaXplOiA2Mi41JTsgLy8gMTBweFxyXG4kZm9udC1iYXNlLXNpemUtcHg6ICgxNnB4IC8gMTAwKSAqIHN0cmlwLXVuaXRzKCRmb250LWJhc2Utc2l6ZSk7IC8vIDEwMCUgb2YgdGhlIGZvbnQtc2l6ZSBpbiBkZWZhdWx0IGZvbnQgc2l6ZVxyXG5cclxuLy8gRm9yIENvbXBhc3MncyBWZXJ0aWNhbCBSaHl0aG0gYW5kIHJlbSBjb252ZXJzaW9uIGV0Yy5cclxuLy8gd2hlbiB1c2VkIHdpdGggU3VzeVxyXG4kYmFzZS1mb250LXNpemU6ICRmb250LWJhc2Utc2l6ZS1weDtcclxuJHJlbS13aXRoLXB4LWZhbGxiYWNrOiBmYWxzZTtcclxuXHJcbi8vIFR5cG9ncmFocHkgKGNyZWF0ZSBhIHNhbmUgZm9udC1zdGFjaylcclxuJGZvbnQ6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiRmb250LWRpc3BsYXk6IFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XHJcblxyXG4kZm9udC1zaXplLXNtYWxsOiAxMnB4OyAvLyBiYXNlIGZvbnQgc2l6ZSBvbiBzbWFsbCBzY3JlZW5zXHJcbiRmb250LXNpemUtbGFyZ2U6IDE0cHg7IC8vIGJhc2UgZm9udCBzaXplIG9uIGxhcmdlIHNjcmVlbnMgKCRsYXlvdXQtbClcclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIENvbG9yc1xyXG5cclxuLy8gQnJhbmQgY29sb3JzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJhbmQtY29sb3ItcHJpbWFyeTogICAgIzI3MjMyNDsgLy8gbGlnaHQgYmxhY2tcclxuJGJyYW5kLWNvbG9yLXNlY29uZGFyeTogICNhZjliNTY7IC8vIGdvbGRcclxuJGJyYW5kLWNvbG9yLXRlcnRpYXJ5OiAgICMzODRkNjQ7IC8vIGRhcmsgYmx1ZS90dXJxdW9pc2VcclxuJGJyYW5kLWNvbG9yLXF1YXRlcm5hcnk6ICM2ZDkzNDM7IC8vIGdyZWVuXHJcbiRicmFuZC1jb2xvci1xdWluYXJ5OiAgICAjZjdmN2Y3OyAvLyBsaWdodCBncmV5XHJcbiRicmFuZC1jb2xvci1zZW5hcnk6ICAgICAjZmNkZjdhOyAvLyBtYXR0ZSB5ZWxsb3dcclxuXHJcbiR3aGl0ZSA6ICNmZmY7XHJcbiRibGFjayA6ICMwMDA7XHJcbiR5ZWxsb3c6ICNCNjlENEI7XHJcbiRncmF5ICA6ICNkNmQ2ZDY7XHJcblxyXG4kYnJhbmQtcm91bmRuZXNzOiAwcHg7XHJcblxyXG4vLyBUZXh0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiRjb2xvci10ZXh0ICAgICAgICAgICAgIDogIzY2NjtcclxuJGNvbG9yLXRleHQtaW52ZXJzZSAgICAgOiAkd2hpdGU7XHJcblxyXG4kY29sb3ItZGlzcGxheSAgICAgICAgICA6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xyXG4kY29sb3ItbGlnaHQgICAgICAgICAgICA6ICM5OTk7XHJcblxyXG4kY29sb3Itc2VsZWN0aW9uICAgICAgICA6ICNmZDA7XHJcbiRjb2xvci1zZWxlY3Rpb24tYmcgICAgIDogIzFCQjJFMDtcclxuXHJcbiRjb2xvci1ib3JkZXIgICAgICAgICAgIDogI2RiZGJkYjtcclxuXHJcbiRjb2xvci1saW5rICAgICAgICAgICAgIDogJGJsYWNrO1xyXG4kY29sb3ItbGluay1ob3ZlciAgICAgICA6ICRjb2xvci1saW5rO1xyXG4kY29sb3ItbGluay1hY3RpdmUgICAgICA6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE1vZHVsZXNcclxuXHJcbiR0YWJsZS1ib3JkZXItY29sb3I6ICNkOGQ3ZDc7XHJcbiR0YWJsZS1yb3ctYmFja2dyb3VuZDogI2Y1ZjVmNTtcclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT1cclxuLy8gSGVhZGVyXHJcblxyXG4kaGVhZGVyLWJhY2tncm91bmQtcHJpbWFyeSAgICA6ICMyMzFmMjA7XHJcbiRoZWFkZXItYmFja2dyb3VuZC1zZWNvbmRhcnkgIDogIzM3MzMzNDtcclxuJGhlYWRlci1iYWNrZ3JvdW5kLXRlcnRpYXJ5ICAgOiAjMmUyOTJhO1xyXG4kaGVhZGVyLWRpc3BsYXkgICAgICAgICAgICAgICA6ICNiMDljNTc7XHJcbiRoZWFkZXItYm9yZGVyLWNvbG9yICAgICAgICAgIDogIzQwNDA0MDtcclxuJGhlYWRlci1idXR0b24td2lkdGgtcyAgICAgICAgOiAyMCU7XHJcbiRoZWFkZXItYnV0dG9uLXdpZHRoLW0gICAgICAgIDogMTYlO1xyXG4kaGVhZGVyLXNlYXJjaC1iYWNrZ3JvdW5kICAgICA6ICMxZTFlMWU7XHJcbiRoZWFkZXItaGVpZ2h0LW1vYmlsZSAgICAgICAgIDogNjBweDtcclxuJGhlYWRlci1oZWlnaHQtdGFibGV0ICAgICAgICAgOiA1MHB4O1xyXG4kaGVhZGVyLWhlaWdodC1kZXNrdG9wICAgICAgICA6IDUwcHg7XHJcbiRoZWFkZXItbmF2LWhlaWdodCAgICAgICAgICAgIDogNjVweDtcclxuJGhlYWRlci1iYXNrZXQtYmFja2dyb3VuZCAgICAgOiAjMzk0RDY0O1xyXG4kaGVhZGVyLXVzcC1idWxsZXQgICAgICAgICAgICA6ICNBRTlDNTc7XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09XHJcbi8vIE5hdmlnYXRpb25cclxuXHJcbiRuYXYtYmFja2dyb3VuZCAgICAgICAgICAgOiAkaGVhZGVyLWJhY2tncm91bmQtc2Vjb25kYXJ5O1xyXG4kbmF2LWxpbmstY29sb3IgICAgICAgICAgIDogJGNvbG9yLXRleHQtaW52ZXJzZTtcclxuJG5hdi1saW5rLWNvbG9yLXNlY29uZGFyeSA6ICRjb2xvci1saWdodDtcclxuJG5hdi1ib3JkZXItY29sb3IgICAgICAgICA6ICRoZWFkZXItYm9yZGVyLWNvbG9yO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PVxyXG4vLyBTZWFyY2hcclxuXHJcbiRzZWFyY2gtZmllbGQtaGVpZ2h0LW1vYmlsZSAgICAgICA6IDcwcHg7XHJcblxyXG4kc2VhcmNoLXJlc3VsdHMtaGVhZGVyLWJhY2tncm91bmQgOiAjZjFmMWYxO1xyXG4kc2VhcmNoLXJlc3VsdHMtYm9yZGVyICAgICAgICAgICAgOiAkc2VhcmNoLXJlc3VsdHMtaGVhZGVyLWJhY2tncm91bmQ7XHJcbiRzZWFyY2gtcmVzdWx0cy1ob3Zlci1iYWNrZ3JvdW5kICA6ICNmYWZhZmE7XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09XHJcbi8vIEZvb3RlclxyXG5cclxuJGZvb3Rlci1iYWNrZ3JvdW5kLXByaW1hcnkgICAgOiAkaGVhZGVyLWJhY2tncm91bmQtcHJpbWFyeTtcclxuJGZvb3Rlci1iYWNrZ3JvdW5kLXNlY29uZGFyeSAgOiAkaGVhZGVyLWJhY2tncm91bmQtc2Vjb25kYXJ5O1xyXG4kZm9vdGVyLWJvcmRlci1jb2xvciAgICAgICAgICA6ICRoZWFkZXItYm9yZGVyLWNvbG9yO1xyXG4kZm9vdGVyLWRpc2NyZWV0ICAgICAgICAgICAgICA6ICM5ZjllOWU7XHJcbiRmb290ZXItbGluay1jb2xvciAgICAgICAgICAgIDogJGZvb3Rlci1kaXNjcmVldDtcclxuJGZvb3Rlci1pY29uLWNvbG9yICAgICAgICAgICAgOiAjNGI0YjRiO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PVxyXG4vLyBGb3Jtc1xyXG5cclxuJGZvcm0tZmllbGQtaGVpZ2h0ICAgICAgICAgICAgOiA1MHB4O1xyXG4kZm9ybS1maWVsZC1oZWlnaHQtc21hbGwgICAgICA6ICRmb3JtLWZpZWxkLWhlaWdodDtcclxuJGZvcm0tZmllbGQtcGFkZGluZyAgICAgICAgICAgOiAxMHB4IDE4cHg7XHJcbiRmb3JtLWZpZWxkLXBhZGRpbmctc21hbGwgICAgIDogJGZvcm0tZmllbGQtcGFkZGluZztcclxuJGZvcm0tYm9yZGVyLWNvbG9yICAgICAgICAgICAgOiAjY2NjO1xyXG4kZm9ybS1maWVsZC1iYWNrZ3JvdW5kICAgICAgICA6ICR3aGl0ZTtcclxuJGZvcm0tZmllbGQtYmFja2dyb3VuZC1mb2N1cyAgOiAkYnJhbmQtY29sb3ItcXVpbmFyeTtcclxuXHJcbiRmb3JtLXJhZGlvLWljb246ICcuLi9pbWFnZXMvZm9ybXMvcmFkaW8tYnRuLW5vcm1hbC5wbmcnO1xyXG4kZm9ybS1yYWRpby1pY29uLWNoZWNrZWQ6ICcuLi9pbWFnZXMvZm9ybXMvcmFkaW8tYnRuLWNoZWNrZWQucG5nJztcclxuJGZvcm0tcmFkaW8taWNvbi1yZXRpbmE6ICcuLi9pbWFnZXMvZm9ybXMvcmFkaW8tYnRuLW5vcm1hbC5wbmcnO1xyXG4kZm9ybS1yYWRpby1pY29uLXJldGluYS1jaGVja2VkOiAnLi4vaW1hZ2VzL2Zvcm1zL3JhZGlvLWJ0bi1jaGVja2VkLnBuZyc7XHJcbiRmb3JtLXJhZGlvLWRhcmtlbjogNTAlOyAvLyBvbiBob3Zlci9jaGVja2VkXHJcbiRmb3JtLXJhZGlvLWxpZ2h0ZW46IDQ1JTsgLy8gb24gZGlzYWJsZWRcclxuXHJcbiRmb3JtLWNoZWNrYm94LWljb246ICcuLi9pbWFnZXMvZm9ybXMvY2hlY2tib3gtYnRuLW5vcm1hbC5wbmcnO1xyXG4kZm9ybS1jaGVja2JveC1pY29uLWNoZWNrZWQ6ICcuLi9pbWFnZXMvZm9ybXMvY2hlY2tib3gtYnRuLWNoZWNrZWQucG5nJztcclxuJGZvcm0tY2hlY2tib3gtaWNvbi1yZXRpbmE6ICcuLi9pbWFnZXMvZm9ybXMvY2hlY2tib3gtYnRuLW5vcm1hbC5wbmcnO1xyXG4kZm9ybS1jaGVja2JveC1pY29uLXJldGluYS1jaGVja2VkOiAnLi4vaW1hZ2VzL2Zvcm1zL2NoZWNrYm94LWJ0bi1jaGVja2VkLnBuZyc7XHJcbiRmb3JtLWNoZWNrYm94LWRhcmtlbjogJGZvcm0tcmFkaW8tZGFya2VuOyAvLyBvbiBob3Zlci9jaGVja2VkXHJcbiRmb3JtLWNoZWNrYm94LWxpZ2h0ZW46ICRmb3JtLXJhZGlvLWxpZ2h0ZW47IC8vIG9uIGRpc2FibGVkXHJcblxyXG4vLyBSYW5nZSBpbnB1dFxyXG4kcmFuZ2Utd2lkdGg6IDE4MHB4O1xyXG4kcmFuZ2UtdGh1bWItc2l6ZTogMzJweDtcclxuJHJhbmdlLXRodW1iLWNvbG9yOiAkYnJhbmQtY29sb3ItdGVydGlhcnk7XHJcbiRyYW5nZS10cmFjay1zaXplOiAxMHB4O1xyXG4kcmFuZ2UtdHJhY2stY29sb3I6ICRicmFuZC1jb2xvci1xdWluYXJ5O1xyXG4kcmFuZ2UtdHJhY2stY29sb3ItZm9jdXM6IGRhcmtlbiggJGJyYW5kLWNvbG9yLXF1aW5hcnksIDclICk7XHJcbiRyYW5nZS10cmFjay1jb2xvci1sb3dlcjogJHJhbmdlLXRyYWNrLWNvbG9yO1xyXG4kcmFuZ2UtdHJhY2stY29sb3ItbG93ZXItZm9jdXM6ICRyYW5nZS10cmFjay1jb2xvci1mb2N1cztcclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT1cclxuLy8gQmFza2V0XHJcblxyXG4kYmFza2V0LW51bWJlci1maWVsZC1oZWlnaHQtc21hbGwgICA6IDI4cHg7XHJcbiRiYXNrZXQtbnVtYmVyLWJ1dHRvbi1zaXplLXNtYWxsICAgIDogJGJhc2tldC1udW1iZXItZmllbGQtaGVpZ2h0LXNtYWxsO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PVxyXG4vLyBNZXNzYWdlXHJcblxyXG4kbWVzc2FnZS1pbmZvcm1hdGlvbi1jb2xvciAgOiAjZmZkZjAwO1xyXG4kbWVzc2FnZS1mZWVkYmFjay1jb2xvciAgICAgOiAkYnJhbmQtY29sb3ItcXVhdGVybmFyeTtcclxuJG1lc3NhZ2UtZXJyb3ItY29sb3IgICAgICAgIDogI2Q2MmMyZDtcclxuJG1lc3NhZ2UtZXJyb3ItYmFja2dyb3VuZCAgIDogI0Y3QUZBRjtcclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT1cclxuLy8gQ2xvc2UgYnV0dG9uXHJcblxyXG4kY2xvc2UtYnV0dG9uLXNpemU6IDI5cHg7XHJcbiRjbG9zZS1idXR0b24tYmFja2dyb3VuZC1jb2xvcjogIzM5MzkzNztcclxuJGNsb3NlLWJ1dHRvbi1ib3JkZXItY29sb3I6ICMwMDA7XHJcbiRjbG9zZS1idXR0b24tY29sb3I6ICR3aGl0ZTtcclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT1cclxuLy8gTWVzc2FnZVxyXG5cclxuJG1lc3NhZ2UtYnV0dG9uLXNpemU6IDI0cHg7XHJcblxyXG4vLyBVc2VkIGluIGJhc2UvX2ljb25zXHJcbiRtZXNzYWdlLXRoZW1lcyA6IChcclxuICBwcmltYXJ5IDogKFxyXG4gICAgYmFja2dyb3VuZC1jb2xvciA6ICRicmFuZC1jb2xvci1wcmltYXJ5LFxyXG4gICAgYnV0dG9uLWNvbG9yIDogJGNvbG9yLWxpZ2h0LFxyXG4gICAgdGV4dC1jb2xvciA6ICRjb2xvci10ZXh0LWludmVyc2VcclxuICApLFxyXG4gIHNlY29uZGFyeSA6IChcclxuICAgIGJhY2tncm91bmQtY29sb3IgOiAkYnJhbmQtY29sb3Itc2Vjb25kYXJ5LFxyXG4gICAgYnV0dG9uLWNvbG9yIDogZGFya2VuKCRicmFuZC1jb2xvci1zZWNvbmRhcnksIDE4JSksXHJcbiAgICB0ZXh0LWNvbG9yIDogJGNvbG9yLXRleHQtaW52ZXJzZVxyXG4gICksXHJcbiAgdGVydGlhcnkgOiAoXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDogJGJyYW5kLWNvbG9yLXRlcnRpYXJ5LFxyXG4gICAgYnV0dG9uLWNvbG9yIDogbGlnaHRlbigkYnJhbmQtY29sb3ItdGVydGlhcnksIDI4JSksXHJcbiAgICB0ZXh0LWNvbG9yIDogJGNvbG9yLXRleHQtaW52ZXJzZVxyXG4gICksXHJcbiAgcXVhdGVybmFyeSA6IChcclxuICAgIGJhY2tncm91bmQtY29sb3IgOiAkYnJhbmQtY29sb3ItcXVhdGVybmFyeSxcclxuICAgIGJ1dHRvbi1jb2xvciA6IGxpZ2h0ZW4oJGJyYW5kLWNvbG9yLXF1YXRlcm5hcnksIDIwJSksXHJcbiAgICB0ZXh0LWNvbG9yIDogJGNvbG9yLXRleHQtaW52ZXJzZVxyXG4gICksXHJcbiAgcXVpbmFyeSA6IChcclxuICAgIGJhY2tncm91bmQtY29sb3IgOiAkYnJhbmQtY29sb3ItcXVpbmFyeSxcclxuICAgIGJ1dHRvbi1jb2xvciA6ICRicmFuZC1jb2xvci1wcmltYXJ5LFxyXG4gICAgdGV4dC1jb2xvciA6ICRjb2xvci10ZXh0XHJcbiAgKSxcclxuICBzZW5hcnkgOiAoXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDogJGJyYW5kLWNvbG9yLXNlbmFyeSxcclxuICAgIGJ1dHRvbi1jb2xvciA6IGRhcmtlbigkYnJhbmQtY29sb3Itc2VuYXJ5LCAzMiUpLFxyXG4gICAgdGV4dC1jb2xvciA6ICRjb2xvci10ZXh0XHJcbiAgKSxcclxuICB4bWFzIDogKFxyXG4gICAgYmFja2dyb3VuZC1jb2xvciA6ICNlYTRlNDksXHJcbiAgICBidXR0b24tY29sb3IgOiBkYXJrZW4oI2VhNGU0OSwgMTglKSxcclxuICAgIHRleHQtY29sb3IgOiAkY29sb3ItdGV4dC1pbnZlcnNlXHJcbiAgKSxcclxuICB4bWFzLWFsdCA6IChcclxuICAgIGJhY2tncm91bmQtY29sb3IgOiAjMzEwMDQxLFxyXG4gICAgYnV0dG9uLWNvbG9yIDogI2JhNWJkOSxcclxuICAgIHRleHQtY29sb3IgOiAkY29sb3ItdGV4dC1pbnZlcnNlXHJcbiAgKVxyXG4pO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PVxyXG4vLyBDb29raWUgYmFyXHJcblxyXG4kY29va2llLWJhci1iYWNrZ3JvdW5kOiByZ2JhKCMzMzMsIDAuOCk7XHJcbiRjb29raWUtYmFyLWJhY2tncm91bmQtaWU6ICMzMzM7XHJcbiRjb29raWUtYmFyLWNvbG9yOiAjY2NjO1xyXG4kY29va2llLWJhci1saW5rLWNvbG9yOiAkd2hpdGU7XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09XHJcbi8vIFBlcm1pc3Npb24gYmFyXHJcblxyXG4kcGFybWlzc2lvbi1iYXItYmFja2dyb3VuZC1jb2xvcjogIzFiMWIxOTtcclxuJHBhcm1pc3Npb24tYmFyLXRleHQtY29sb3I6ICRjb2xvci10ZXh0LWludmVyc2U7XHJcbiRwYXJtaXNzaW9uLWJhci1saW5rLWNvbG9yOiAkYnJhbmQtY29sb3Itc2Vjb25kYXJ5O1xyXG4kcGFybWlzc2lvbi1iYXItaGVhZGVyLWNvbG9yOiAkYnJhbmQtY29sb3Itc2Vjb25kYXJ5O1xyXG4kcGVybWlzc2lvbi1iYXItaGVpZ2h0OiA1NDBweDtcclxuJHBlcm1pc3Npb24tYmFyLXdpZHRoOiAzOTBweDtcclxuJHBlcm1pc3Npb24tYmFyLW9mZnNldDogMjBweDsgLy8gb2Zmc2V0IGZyb20gcmlnaHRcclxuJHBlcm1pc3Npb24tYmFyLXByb3RydXNpb246IDcwcHg7IC8vIGhvdyBtdWNoIHRoZSBiYXIgc3RpY2tzIHVwIHdoZW4gaW5hY3RpdmUgKGFsc28gaGVhZGVyIGhlaWdodClcclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT1cclxuLy8gQnV0dG9uc1xyXG5cclxuJGJ1dHRvbi1wcmltYXJ5LWNvbG9yICAgOiAkYnJhbmQtY29sb3ItcXVhdGVybmFyeTtcclxuJGJ1dHRvbi1zZWNvbmRhcnktY29sb3IgOiAkYnJhbmQtY29sb3ItdGVydGlhcnk7XHJcbiRidXR0b24tdGVydGlhcnktY29sb3IgOiAjMzUzNTM1O1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PVxyXG4vLyBBcnJvd1xyXG5cclxuJGFycm93LXdpZHRoICAgICAgICAgICAgICA6IDUwcHg7XHJcbiRhcnJvdy1oZWlnaHQgICAgICAgICAgICAgOiA1MHB4O1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PVxyXG4vLyBCdWxsZXRzXHJcblxyXG4kYnVsbGV0cy1zaXplICAgICAgICAgICAgIDogMTJweDtcclxuJGJ1bGxldHMtYmFja2dyb3VuZC1jb2xvciA6ICR3aGl0ZTtcclxuJGJ1bGxldHMtYm9yZGVyLWNvbG9yICAgICA6ICNjZGNkY2Q7XHJcbiRidWxsZXRzLWJvcmRlci13aWR0aCAgICAgOiAycHg7XHJcbiRidWxsZXRzLXNlbGVjdGVkLWNvbG9yICAgOiAkYnJhbmQtY29sb3ItdGVydGlhcnk7XHJcbiRidWxsZXRzLWRvdC1zaXplICAgICAgICAgOiA2cHg7XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gSWNvbnNcclxuXHJcbi8vIEdlbmVyYWwgaWNvbnNcclxuLy8gVGhpcyB2YXJpYWJsZSBpcyByZXNwb25zaWJsZSBmb3Igc2V0dGluZyBhbGwgaWNvbnMuXHJcbi8vIFVzZWQgaW4gYmFzZS9faWNvbnNcclxuJGljb25zIDogKFxyXG4gIHBsdXMgICAgICAgICAgICAgICAgOiAoIGNoYXIgOiBcIlxcZTYxNFwiLCBzaXplIDogMTRweCwgY29sb3IgOiBmYWxzZSApLFxyXG4gIG1pbnVzICAgICAgICAgICAgICAgOiAoIGNoYXIgOiBcIlxcZTYxMVwiLCBzaXplIDogMTRweCwgY29sb3IgOiBmYWxzZSApLFxyXG4gIGFycm93LWNpcmNsZS1yaWdodCAgOiAoIGNoYXIgOiBcIlxcZTYwM1wiLCBzaXplIDogNDhweCwgY29sb3IgOiBmYWxzZSApLFxyXG4gIGFycm93LWNpcmNsZS1sZWZ0ICAgOiAoIGNoYXIgOiBcIlxcZTYwMlwiLCBzaXplIDogNDhweCwgY29sb3IgOiBmYWxzZSApLFxyXG4gIHRpY2sgICAgICAgICAgICAgICAgOiAoIGNoYXIgOiBcIlxcZTYxOFwiLCBzaXplIDogMThweCwgY29sb3IgOiAkbWVzc2FnZS1mZWVkYmFjay1jb2xvciApLFxyXG4gIGVycm9yICAgICAgICAgICAgICAgOiAoIGNoYXIgOiBcIlxcZTYwN1wiLCBzaXplIDogMjFweCwgY29sb3IgOiAkbWVzc2FnZS1lcnJvci1jb2xvciApLFxyXG4gIGJhc2tldCAgICAgICAgICAgICAgOiAoIGNoYXIgOiBcIlxcZTkwMFwiLCBzaXplIDogMjBweCwgY29sb3IgOiBmYWxzZSApLFxyXG4gIHNlYXJjaCAgICAgICAgICAgICAgOiAoIGNoYXIgOiBcIlxcZTYxNVwiLCBzaXplIDogMTRweCwgY29sb3IgOiAkaGVhZGVyLXVzcC1idWxsZXQgKSxcclxuICBwaG9uZSAgICAgICAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MTNcIiwgc2l6ZSA6IDIwcHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBhcnJvdy1yaWdodCAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MDVcIiwgc2l6ZSA6IDI1cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBhcnJvdy1kb3duICAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MDRcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBtZW51LWJ1cmdlciAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MGVcIiwgc2l6ZSA6IDMzcHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBkZWxldGUgICAgICAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MWFcIiwgc2l6ZSA6IDI1cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBsZWF2ZXMgICAgICAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MWNcIiwgc2l6ZSA6IDUwcHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBzdGFycyAgICAgICAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MWRcIiwgc2l6ZSA6IDUwcHgsIGNvbG9yIDogZmFsc2UgKVxyXG4pO1xyXG5cclxuLy8gU29jaWFsIGljb25zXHJcbiRpY29ucy1zb2NpYWwgOiAoXHJcbiAgZmFjZWJvb2sgICAgICAgICAgICA6ICggY2hhciA6IFwiXFxlNjA4XCIsIHNpemUgOiAzMHB4LCBjb2xvciA6ICMzYzVhOTggKSxcclxuICBpbnN0YWdyYW0gICAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MGNcIiwgc2l6ZSA6IDMwcHgsIGNvbG9yIDogIzMzNjQ4ZCApXHJcbik7XHJcblxyXG4vLyBGZWF0dXJlIGljb25zXHJcbiRpY29ucy1mZWF0dXJlcyA6IChcclxuICBmZWF0dXJlLTQwYyAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MDBcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLTEwNGYgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MDFcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLWRpc2h3YXNoZXIgIDogKCBjaGFyIDogXCJcXGU2MDZcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLWZyZWV6ZXIgICAgIDogKCBjaGFyIDogXCJcXGU2MDlcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLWhhbG9nZW4gICAgIDogKCBjaGFyIDogXCJcXGU2MGFcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLWluZHVjdGlvbiAgIDogKCBjaGFyIDogXCJcXGU2MGJcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLWdhcyAgICAgICAgIDogKCBjaGFyIDogXCJcXGU2MWJcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLWNlcmFtaWMgICAgIDogKCBjaGFyIDogXCJcXGU2MGRcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLW1pY3Jvd2F2ZSAgIDogKCBjaGFyIDogXCJcXGU2MGZcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLW92ZW5wcm9vZiAgIDogKCBjaGFyIDogXCJcXGU2MTJcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLXJhZGlhbnRyaW4gIDogKCBjaGFyIDogXCJcXGU2MTdcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKSxcclxuICBmZWF0dXJlLXNvbGlkcGxhdGUgIDogKCBjaGFyIDogXCJcXGU2MTlcIiwgc2l6ZSA6IDE4cHgsIGNvbG9yIDogZmFsc2UgKVxyXG4pO1xyXG5cclxuLy8gTWVyZ2luZyBpY29uIG1hcHNcclxuJGljb25zIDogbWFwLW1lcmdlKCAkaWNvbnMsICRpY29ucy1zb2NpYWwgKTtcclxuJGljb25zIDogbWFwLW1lcmdlKCAkaWNvbnMsICRpY29ucy1mZWF0dXJlcyApO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gU3VzeSBncmlkIHNldHRpbmdzXHJcblxyXG4vLyBCcmVha3BvaW50cyAobWluaW11bSB3aWR0aHMhKVxyXG4kYnAteHMtczogICAzMjBweDtcclxuJGJwLXMtbTogICAgNDAwcHg7XHJcbiRicC1tLWw6ICAgIDQ4MXB4O1xyXG4kYnAtbC14bDogICA3NjlweDtcclxuJGJwLWwteGwtdXA6OTM2cHg7XHJcbiRicC14bC14eGw6IDExNzZweDsgLy8gMTIgY29sdW1ucyBvZiA5OHB4XHJcbi8vIFNwZWNpYWwgYnJlYWtwb2ludHNcclxuJGJwLW0tZG93bjogKG1heC13aWR0aCBweC10by1lbSgkYnAtbS1sIC0gMSkpO1xyXG4kYnAtbC1kb3duOiAobWF4LXdpZHRoIHB4LXRvLWVtKCRicC1sLXhsIC0gMSkpO1xyXG4kYnAteGwtZG93bjogKG1heC13aWR0aCBweC10by1lbSgkYnAteGwteHhsIC0gMSkpO1xyXG4kYnAteGwtdXA6IChtaW4td2lkdGggcHgtdG8tZW0oJGJwLWwteGwtdXAgLSAxKSk7XHJcbiRicC1sLXhsLW9ubHk6IChtaW4td2lkdGggcHgtdG8tZW0oJGJwLW0tbCkpIChtYXgtd2lkdGggcHgtdG8tZW0oJGJwLWwteGwgLSAxKSk7XHJcbiRicC14bC14eGwtb25seTogKG1pbi13aWR0aCBweC10by1lbSgkYnAtbC14bCkpIChtYXgtd2lkdGggcHgtdG8tZW0oJGJwLXhsLXh4bCAtIDEpKTtcclxuXHJcblxyXG4kc3VzeTogKFxyXG4gIGNvbHVtbnM6IDEyLFxyXG4gIGd1dHRlcnM6IDAsXHJcbiAgZ3V0dGVyLXBvc2l0aW9uOiBpbnNpZGUsIC8vIHNwbGl0LCBpbnNpZGUsIGFmdGVyLCBiZWZvcmUgLi4uXHJcbiAgY29udGFpbmVyOiBweC10by1lbSggJGJwLXhsLXh4bCwgJGZvbnQtc2l6ZS1sYXJnZSApXHJcbiAgLy8gZGVidWc6IChcclxuICAvLyAgIGltYWdlOiBzaG93LFxyXG4gIC8vICAgY29sb3I6IHJnYmEoYmx1ZSwgMC41KSxcclxuICAvLyAgIG91dHB1dDogb3ZlcmxheSxcclxuICAvLyAgIHRvZ2dsZTogdG9wIHJpZ2h0LFxyXG4gIC8vIClcclxuKTtcclxuXHJcbi8vICRzaG9ydGhhbmQ6IDEyIDAgZmx1aWQgZmxvYXQgaW5zaWRlO1xyXG5cclxuLy8gQ29sdW1uc1xyXG4kY29scy1zOiAgIDE7XHJcbiRjb2xzLW06ICAgNDtcclxuJGNvbHMtbDogICA4O1xyXG4kY29scy14bDogIDEyO1xyXG4kY29scy14eGw6IDEyO1xyXG5cclxuLy8gTGF5b3V0c1xyXG5AaW5jbHVkZSBicmVha3BvaW50LXNldCgnbm8gcXVlcnkgZmFsbGJhY2tzJywgdHJ1ZSk7XHJcbiRsYXlvdXQtaWUtZmFsbGJhY2s6IFwiLmx0LWllOVwiO1xyXG5cclxuJGxheW91dC1zOiAgICAgICAgICBqb2luKCggcHgtdG8tZW0oJGJwLXhzLXMpLCAkY29scy1zKSwgJGxheW91dC1pZS1mYWxsYmFjayk7XHJcbiRsYXlvdXQtbS1kb3duOiAgICAgJGJwLW0tZG93biwgJGNvbHMtbTtcclxuJGxheW91dC1tOiAgICAgICAgICBqb2luKCggcHgtdG8tZW0oJGJwLXMtbSksICRjb2xzLW0pLCAkbGF5b3V0LWllLWZhbGxiYWNrKTtcclxuJGxheW91dC1sLWRvd246ICAgICAkYnAtbC1kb3duLCAkY29scy1sO1xyXG4kbGF5b3V0LWwteGwtb25seTogIGpvaW4oKCAkYnAtbC14bC1vbmx5LCAkY29scy1sKSwgJGxheW91dC1pZS1mYWxsYmFjayk7XHJcbiRsYXlvdXQtbDogICAgICAgICAgam9pbigoIHB4LXRvLWVtKCRicC1tLWwpLCAkY29scy1sKSwgJGxheW91dC1pZS1mYWxsYmFjayk7XHJcbiRsYXlvdXQteGwtZG93bjogICAgJGJwLXhsLWRvd24sICRjb2xzLXhsO1xyXG4kbGF5b3V0LXhsLXh4bC1vbmx5OiRicC14bC14eGwtb25seSwgJGNvbHMteGw7XHJcbiRsYXlvdXQteGw6ICAgICAgICAgam9pbigoIHB4LXRvLWVtKCRicC1sLXhsKSwgJGNvbHMteGwpLCAkbGF5b3V0LWllLWZhbGxiYWNrKTtcclxuJGxheW91dC14bC11cDogICAgICAkYnAteGwtdXAsICRjb2xzLXhsO1xyXG4kbGF5b3V0LXh4bDogICAgICAgIHB4LXRvLWVtKCRicC14bC14eGwpLCAkY29scy14eGw7XHJcblxyXG4vLyBIZWlnaHQgYmFzZWQgYnJlYWtwb2ludHNcclxuJGJyZWFrcG9pbnQtaHM6IG1heC1oZWlnaHQgNTA4cHg7XHJcblxyXG4vLyBTdG9yZSBhbGwgbGF5b3V0cyBmb3IgdGhpcyBwcm9qZWN0XHJcbiRsYXlvdXRzOiAkbGF5b3V0LW0gJGxheW91dC1sICRsYXlvdXQteGwgJGxheW91dC14eGw7XHJcblxyXG4vLyBDdXN0b20gZ3JpZCBzZXR0aW5ncyAtIG5vdCB1c2VkIGJ5IHN1c3lcclxuLy8gR3V0dGVyIHdpZHRoOiBuZWNlc3NhcnkgZm9yIHB1dHRpbmcgc3BhY2luZyBiZXR3ZWVuIHNlY3Rpb25zXHJcbiRndXR0ZXItd2lkdGg6IDMwcHg7XHJcbiRncmlkLXBhZGRpbmc6IDIwcHg7XHJcbiRzZWN0aW9uLXBhZGRpbmc6IDMwcHg7IC8vIHVzZWQgaW4gc2VjdGlvbnMgd2l0aCBiYWNrZ3JvdW5kLWNvbG9yXHJcblxyXG4iLCIkbWVzc2FnZS1idXR0b24tc2l6ZTogMjBweCAhZGVmYXVsdDtcclxuXHJcbkBtaXhpbiBtZXNzYWdlLXRoZW1lKCAkYmFja2dyb3VuZC1jb2xvciwgJGJ1dHRvbi1jb2xvciwgJHRleHQtY29sb3IgKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cclxuICAuZ2xvYmFsLW1lc3NhZ2VfX2Nsb3NlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tY29sb3I7XHJcbiAgICBib3JkZXItY29sb3I6ICRidXR0b24tY29sb3I7XHJcbiAgICBjb2xvcjogJGJhY2tncm91bmQtY29sb3I7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBjb2xvcjogJGJ1dHRvbi1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5nbG9iYWwtbWVzc2FnZSB7XHJcbiAgQGV4dGVuZCAuZ2xvYmFsLW1lc3NhZ2UtLXByaW1hcnkgIW9wdGlvbmFsO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaGVhZGVyLWJvcmRlci1jb2xvcjtcclxuICBtYXgtaGVpZ2h0OiAwO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gQXZvaWQgbWVzc2FnZSBjb250ZW50IGZyb20gYmxvY2tpbmcgcGFnZSBpbnRlcmFjdGlvblxyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIC8vIEFuaW1hdGUgb3V0XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbiggb3BhY2l0eSAzMDBtcyBlYXNlLCBtYXgtaGVpZ2h0IDIwMG1zIGVhc2UgMzAwbXMgKTtcclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IG5vbmU7IH1cclxuXHJcbiAgJi5pcy1hY3RpdmUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIG1heC1oZWlnaHQ6IDE1MHB4O1xyXG4gICAgLy8gQW5pbWF0ZSBpbiAobm8gYW5pbWF0aW9uKVxyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkgeyBtYXgtaGVpZ2h0OiA4MHB4OyB9XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7IG1heC1oZWlnaHQ6IDYwcHg7IH1cclxuICB9XHJcblxyXG4gIC5oZWFkZXIgJiB7XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbS1kb3duLi4uICkge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAkaGVhZGVyLWhlaWdodC1tb2JpbGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZW5kZXJpbmcgdGhlbWUgY29sb3JzIGFuZCBzZWxlY3RvcnNcclxuICAgKi9cclxuICBAZWFjaCAkbmFtZSwgJHNldHRpbmdzIGluICRtZXNzYWdlLXRoZW1lcyB7XHJcbiAgICAkYmFja2dyb3VuZC1jb2xvciA6IG1hcC1nZXQoICRzZXR0aW5ncywgYmFja2dyb3VuZC1jb2xvciApO1xyXG4gICAgJGJ1dHRvbi1jb2xvciAgICAgOiBtYXAtZ2V0KCAkc2V0dGluZ3MsIGJ1dHRvbi1jb2xvciApO1xyXG4gICAgJHRleHQtY29sb3IgICAgICAgOiBtYXAtZ2V0KCAkc2V0dGluZ3MsIHRleHQtY29sb3IgKTtcclxuXHJcbiAgICAmLS0jeyAkbmFtZSB9IHtcclxuICAgICAgQGV4dGVuZCAuZ2xvYmFsLW1lc3NhZ2U7XHJcbiAgICAgIEBpbmNsdWRlIG1lc3NhZ2UtdGhlbWUoJGJhY2tncm91bmQtY29sb3IsICRidXR0b24tY29sb3IsICR0ZXh0LWNvbG9yICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50IHtcclxuICAgIEBleHRlbmQgJWNvbnRhaW5lcjtcclxuICAgIHBhZGRpbmc6IHtcclxuICAgICAgYm90dG9tOiAxMHB4O1xyXG4gICAgICB0b3A6IDhweDtcclxuICAgIH1cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcblxyXG4gICZfX3RleHQge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgcmVtKCBwYWRkaW5nLXJpZ2h0LCAkbWVzc2FnZS1idXR0b24tc2l6ZSArIDEwcHggKTtcclxuXHJcbiAgICBwIHsgZGlzcGxheTogaW5saW5lOyB9XHJcbiAgfVxyXG5cclxuICAmX19jb3VudGVyIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgcGFkZGluZy1yaWdodDogJG1lc3NhZ2UtYnV0dG9uLXNpemUgKyAxMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgJl9fY2xvc2Uge1xyXG4gICAgQGV4dGVuZCAlY2xvc2UtYnV0dG9uOyAvLyBmb3VuZCBpbiBjb3JlL190ZW1wbGF0ZXMuc2Nzc1xyXG4gICAgaGVpZ2h0OiAkbWVzc2FnZS1idXR0b24tc2l6ZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbWFyZ2luLXRvcDogLSgkbWVzc2FnZS1idXR0b24tc2l6ZSAvIDIpO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgIHdpZHRoOiAkbWVzc2FnZS1idXR0b24tc2l6ZTtcclxuICAgIEBpbmNsdWRlIHJlbSggcmlnaHQsICRncmlkLXBhZGRpbmcgLyAyICk7XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7IEBpbmNsdWRlIHJlbSggcmlnaHQsICRncmlkLXBhZGRpbmcgKTsgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBmb250LXNpemU6ICRtZXNzYWdlLWJ1dHRvbi1zaXplO1xyXG4gICAgICBsaW5lLWhlaWdodDogJG1lc3NhZ2UtYnV0dG9uLXNpemUgLSAyOyAvLyBzdWJ0cmFjdGluZyBib3JkZXJcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5nbG9iYWwtbWVzc2FnZS0tcHJpbWFyeSB7XHJcbiAgYSwgcCwgcCBzdHJvbmcgeyBjb2xvcjokd2hpdGU7IH1cclxufVxyXG5cclxuLmdsb2JhbC1tZXNzYWdlLS1xdWluYXJ5LFxyXG4uZ2xvYmFsLW1lc3NhZ2UtLXNlbmFyeSB7XHJcbiAgYSwgcCwgcCBzdHJvbmcgeyBjb2xvcjokY29sb3ItdGV4dDsgfVxyXG59XHJcblxyXG4iLCIvLyBDdXN0b20gZnVuY3Rpb25zIGFuZCBtaXhpbnNcclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUZXh0IGJlaGF2aW9yIG1peGluc1xyXG5cclxuQG1peGluIHNldC10eXBlLXByb3BlcnRpZXMgKCAkcHJvcGVydGllcyApIHtcclxuICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkcHJvcGVydGllcyB7XHJcbiAgICAjeyAkcHJvcGVydHkgfTogJHZhbHVlO1xyXG4gIH1cclxufVxyXG5cclxuJHR5cGVzOiAoKSAhZGVmYXVsdDtcclxuXHJcbkBtaXhpbiB1c2UtdHlwZSggJG5hbWUsICRmb3JjZTogZmFsc2UgKSB7XHJcbiAgJHR5cGUgOiBtYXAtZ2V0KCAkdHlwZXMsICRuYW1lICk7XHJcbiAgQGlmICR0eXBlID09IG51bGwge1xyXG4gICAgQHdhcm4gXCJUaGUgJHR5cGVzIG1hcCBkaWQgbm90IGNvbnRhaW4gdGhlIGtleTogXCIgKyAkbmFtZTtcclxuICB9IEBlbHNlIHtcclxuICAgIEBpZiAkZm9yY2Uge1xyXG4gICAgICBAZWFjaCAkbGF5b3V0LCAkZGF0YSBpbiAkdHlwZSB7XHJcbiAgICAgICAgQGlmICRsYXlvdXQgPT0gZGVmYXVsdHMge1xyXG4gICAgICAgICAgQGluY2x1ZGUgc2V0LXR5cGUtcHJvcGVydGllcyAoICRkYXRhICk7XHJcbiAgICAgICAgfSBAZWxzZSBpZiAkbGF5b3V0ID09IGV4dGVuZCB7XHJcbiAgICAgICAgICBAZWFjaCAkc2VsZWN0b3IgaW4gJGRhdGEge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICN7ICRzZWxlY3RvciB9ICFvcHRpb25hbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC4uLiApIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgc2V0LXR5cGUtcHJvcGVydGllcyAoICRkYXRhICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgQGV4dGVuZCAlI3sgJG5hbWUgfTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzZXQtdHlwZS1wbGFjZWhvbGRlcnMge1xyXG4gIEBlYWNoICRuYW1lLCAkc2V0dGluZ3MgaW4gJHR5cGVzIHtcclxuICAgICUjeyAkbmFtZSB9IHtcclxuICAgICAgQGluY2x1ZGUgdXNlLXR5cGUoICRuYW1lLCAkZm9yY2U6IHRydWUgKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBBdCByZXRpbmEgbWl4aW5cclxuLy8gQXMgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vcmFhaGVkZS9lenkvYmxvYi9tYXN0ZXIvc2Fzcy9lenkvX3Nwcml0ZXMuc2Nzc1xyXG5cclxuQG1peGluIGF0LXJldGluYSggJHJhdGlvOiAyLCAkcXVlcnk6IGZhbHNlICkge1xyXG4gIEBpZiAkcXVlcnkge1xyXG4gICAgLy8gRXh0ZW5kaW5nIHJldGluYSBtZWRpYSBxdWVyeSB3aXRoIGJyZWFrcG9pbnQgcXVlcnlcclxuICAgIEBtZWRpYVxyXG4gICAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7ICRyYXRpbyB9KSBhbmQgI3sgJHF1ZXJ5IH0sXHJcbiAgICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogI3sgJHJhdGlvIH0pIGFuZCAjeyAkcXVlcnkgfSxcclxuICAgIG9ubHkgc2NyZWVuIGFuZCAoICAgLW1vei1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyAkcmF0aW8gfSkgYW5kICN7ICRxdWVyeSB9LFxyXG4gICAgb25seSBzY3JlZW4gYW5kICggICAgLW1zLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7ICRyYXRpbyB9KSBhbmQgI3sgJHF1ZXJ5IH0sXHJcbiAgICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogI3sgJHJhdGlvIH0vMSkgYW5kICN7ICRxdWVyeSB9LFxyXG4gICAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7ICRyYXRpbyB9KSBhbmQgI3sgJHF1ZXJ5IH0sXHJcbiAgICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogI3sgJHJhdGlvICogOTYgfWRwaSkgYW5kICN7ICRxdWVyeSB9LFxyXG4gICAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246ICN7ICRyYXRpbyB9ZHBweCkgYW5kICN7ICRxdWVyeSB9IHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAbWVkaWFcclxuICAgIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyAkcmF0aW8gfSksXHJcbiAgICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogI3sgJHJhdGlvIH0pLFxyXG4gICAgb25seSBzY3JlZW4gYW5kICggICAtbW96LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7ICRyYXRpbyB9KSxcclxuICAgIG9ubHkgc2NyZWVuIGFuZCAoICAgIC1tcy1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyAkcmF0aW8gfSksXHJcbiAgICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogI3sgJHJhdGlvIH0vMSksXHJcbiAgICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogI3sgJHJhdGlvIH0pLFxyXG4gICAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246ICN7ICRyYXRpbyAqIDk2IH1kcGkpLFxyXG4gICAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246ICN7ICRyYXRpbyB9ZHBweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTY2FmZm9sZCBoZWxwZXIgZnVuY3Rpb25zXHJcblxyXG5AZnVuY3Rpb24gc3RyaXAtdW5pdHMoJG51bWJlcikge1xyXG4gIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gcHgtdG8tZW0oICRweCwgJGJhc2U6IDE2cHggKSB7XHJcbiAgQHJldHVybiBzdHJpcC11bml0cygkcHgpIC8gc3RyaXAtdW5pdHMoJGJhc2UpICogMWVtO1xyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gU2NhZmZvbGQgTWl4aW5zXHJcblxyXG4vLyBSZW0gbWl4aW4gd2l0aCBwaXhlbCBmYWxsYmFja1xyXG5AbWl4aW4gcmVtKCRwcm9wZXJ0eSwgJHB4LXZhbHVlcykge1xyXG4gIC8vIENvbnZlcnQgdGhlIGJhc2VsaW5lIGludG8gcmVtc1xyXG4gICRiYXNlbGluZS1yZW06ICRmb250LWJhc2Utc2l6ZS1weCAvIDFyZW07XHJcblxyXG4gIC8vIFByaW50IHRoZSBmaXJzdCBsaW5lIGluIHBpeGVsIHZhbHVlc1xyXG4gICN7JHByb3BlcnR5fTogJHB4LXZhbHVlcztcclxuXHJcbiAgLy8gSWYgdGhlcmUgaXMgb25seSBvbmUgKG51bWVyaWMpIHZhbHVlLCByZXR1cm4gdGhlIHByb3BlcnR5L3ZhbHVlIGxpbmUgZm9yIGl0LlxyXG4gIEBpZiB0eXBlLW9mKCRweC12YWx1ZXMpID09IFwibnVtYmVyXCIge1xyXG4gICAgI3skcHJvcGVydHl9OiAkcHgtdmFsdWVzIC8gJGJhc2VsaW5lLXJlbTtcclxuICB9IEBlbHNlIHtcclxuICAgIC8vIENyZWF0ZSBhbiBlbXB0eSBsaXN0IHRoYXQgd2UgY2FuIGR1bXAgdmFsdWVzIGludG9cclxuICAgICRyZW0tdmFsdWVzOiB1bnF1b3RlKFwiXCIpO1xyXG5cclxuICAgIEBlYWNoICR2YWx1ZSBpbiAkcHgtdmFsdWVzIHtcclxuICAgICAgLy8gSWYgdGhlIHZhbHVlIGlzIHplcm8sIHJldHVybiAwXHJcbiAgICAgIEBpZiAkdmFsdWUgPT0gMCB7XHJcbiAgICAgICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgJHZhbHVlKTsgfVxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgJHZhbHVlIC8gJGJhc2VsaW5lLXJlbSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSZXR1cm4gdGhlIHByb3BlcnR5IGFuZCBpdHMgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzXHJcbiAgICAjeyRwcm9wZXJ0eX06ICRyZW0tdmFsdWVzO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRm9udC1zaXplIHdyYXBwZXIgdXNpbmcgb3VyIHJlbSBjb252ZXJ0ZXIgbWl4aW5cclxuQG1peGluIGZvbnQtc2l6ZSgkcHgtdmFsdWUpIHtcclxuICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAkcHgtdmFsdWUpO1xyXG59XHJcblxyXG5AbWl4aW4gdGQtc3BhbiggJGNvbHVtbnMsICRiYXNlLCAkZ3V0dGVyOiB0cnVlICkge1xyXG4gIEBpZiAkZ3V0dGVyIHtcclxuICAgIHdpZHRoOiBzcGFuKCAkY29sdW1ucyBvZiAkYmFzZSApICsgZ3V0dGVyKCAkYmFzZSApICogMjtcclxuICAgIHBhZGRpbmc6IHtcclxuICAgICAgbGVmdDogZ3V0dGVyKCAkYmFzZSApO1xyXG4gICAgICByaWdodDogZ3V0dGVyKCAkYmFzZSApO1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgd2lkdGg6IHNwYW4oICRjb2x1bW5zIG9mICRiYXNlICk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBDdXN0b20gbWl4aW4gZG9pbmcgYSBibG9jayBvZiBjb2RlIGluIGVhY2ggbGF5b3V0IGJyZWFrcG9pbnRcclxuQG1peGluIGVhY2gtbGF5b3V0IHtcclxuICBAZWFjaCAkbGF5b3V0IGluICRsYXlvdXRzIHtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGF5b3V0Li4uKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gS2V5ZnJhbWUgYW5pbWF0aW9uXHJcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGUuLi4pIHtcclxuICAkbWF4OiBsZW5ndGgoJGFuaW1hdGUpO1xyXG4gICRhbmltYXRpb25zOiAoKTtcclxuXHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbWF4IHtcclxuICAgICRhbmltYXRpb25zOiBhcHBlbmQoJGFuaW1hdGlvbnMsIG50aCgkYW5pbWF0ZSwgJGkpLCBjb21tYSk7XHJcbiAgfVxyXG5cclxuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbnM7XHJcbiAgLW1vei1hbmltYXRpb246ICAgICRhbmltYXRpb25zO1xyXG4gIC1vLWFuaW1hdGlvbjogICAgICAkYW5pbWF0aW9ucztcclxuICBhbmltYXRpb246ICAgICAgICAgJGFuaW1hdGlvbnM7XHJcbn1cclxuXHJcbkBtaXhpbiBrZXlmcmFtZXMoJGFuaW1hdGlvbk5hbWUpIHtcclxuICBALXdlYmtpdC1rZXlmcmFtZXMgI3skYW5pbWF0aW9uTmFtZX0ge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG4gIEAtbW96LWtleWZyYW1lcyAjeyRhbmltYXRpb25OYW1lfSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbiAgQC1vLWtleWZyYW1lcyAjeyRhbmltYXRpb25OYW1lfSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbiAgQGtleWZyYW1lcyAjeyRhbmltYXRpb25OYW1lfSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTaGFwZXNcclxuXHJcbi8vIFdoZW4gcG9pbnRpbmcgdXAgb3IgZG93bjpcclxuLy8gJHNpemUgaXMgdGhlIGFycm93J3MgaGVpZ2h0LCB0aGUgd2lkdGggd2lsbCBiZSB0d2ljZSB0aGF0XHJcbkBtaXhpbiBjc3MtYXJyb3coICRkaXJlY3Rpb24sICRzaXplLCAkY29sb3IgKSB7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG5cclxuICAvLyBWZXJ0aWNhbFxyXG4gIEBpZiAkZGlyZWN0aW9uID09IHVwIG9yICRkaXJlY3Rpb24gPT0gZG93biB7XHJcbiAgICBib3JkZXItbGVmdDogJHNpemUgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIH1cclxuXHJcbiAgLy8gSG9yaXpvbnRhbFxyXG4gIEBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IG9yICRkaXJlY3Rpb24gPT0gbGVmdCB7XHJcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIH1cclxuXHJcbiAgLy8gSW5kaXZpZHVhbFxyXG4gIEBpZiAkZGlyZWN0aW9uID09IHVwIHtcclxuICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkICRjb2xvcjtcclxuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93biB7XHJcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCAkY29sb3I7XHJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcclxuICAgIGJvcmRlci1sZWZ0OiAkc2l6ZSBzb2xpZCAkY29sb3I7XHJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCAkY29sb3I7XHJcbiAgfVxyXG59XHJcbiIsIlxyXG4vLyBUeXBvZ3JhcGh5XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyBUZXh0IGJlaGF2aW9yc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHR5cGVzIDogKFxyXG4gIHRleHQtZGVmYXVsdCA6IChcclxuICAgIGRlZmF1bHRzIDogKFxyXG4gICAgICBjb2xvcjogJGNvbG9yLXRleHQsXHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjUsXHJcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udCxcclxuICAgICAgZm9udC1zaXplOiAxMnB4LFxyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWwsXHJcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDBcclxuICAgICksXHJcbiAgICAkbGF5b3V0LXhsIDogKFxyXG4gICAgICBmb250LXNpemU6IDE0cHhcclxuICAgIClcclxuICApLFxyXG4gIHRleHQtbGFyZ2UgOiAoXHJcbiAgICBkZWZhdWx0cyA6IChcclxuICAgICAgZm9udC1zaXplOiAxNHB4LFxyXG4gICAgICBsaW5lLWhlaWdodDogMS4zLFxyXG4gICAgKSxcclxuICAgICRsYXlvdXQteGwgOiAoXHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweFxyXG4gICAgKVxyXG4gICksXHJcbiAgdGV4dC14bGFyZ2UgOiAoXHJcbiAgICBkZWZhdWx0cyA6IChcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNCxcclxuICAgICAgZm9udC1zaXplOiAxNHB4XHJcbiAgICApLFxyXG4gICAgJGxheW91dC14bCA6IChcclxuICAgICAgZm9udC1zaXplOiAxOHB4XHJcbiAgICApXHJcbiAgKSxcclxuICB0ZXh0LXh4bGFyZ2UgOiAoXHJcbiAgICBkZWZhdWx0cyA6IChcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNCxcclxuICAgICAgZm9udC1zaXplOiAxNnB4XHJcbiAgICApLFxyXG4gICAgJGxheW91dC14bCA6IChcclxuICAgICAgZm9udC1zaXplOiAyMHB4XHJcbiAgICApXHJcbiAgKSxcclxuICB0ZXh0LXNtYWxsIDogKFxyXG4gICAgZGVmYXVsdHMgOiAoXHJcbiAgICAgIGZvbnQtc2l6ZTogMTFweFxyXG4gICAgKSxcclxuICAgICRsYXlvdXQteGwgOiAoXHJcbiAgICAgIGZvbnQtc2l6ZTogMTNweFxyXG4gICAgKVxyXG4gICksXHJcbiAgdGV4dC14c21hbGwgOiAoXHJcbiAgICBkZWZhdWx0cyA6IChcclxuICAgICAgZm9udC1zaXplOiAxMHB4XHJcbiAgICApLFxyXG4gICAgJGxheW91dC14bCA6IChcclxuICAgICAgZm9udC1zaXplOiAxMXB4XHJcbiAgICApXHJcbiAgKSxcclxuICBoZWFkZXItbGFyZ2UgOiAoXHJcbiAgICBleHRlbmQgOiBcIiVoZWFkZXJcIixcclxuICAgIGRlZmF1bHRzIDogKFxyXG4gICAgICBjb2xvcjogJGNvbG9yLWRpc3BsYXksXHJcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDAsXHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtXHJcbiAgICApXHJcbiAgKSxcclxuICBoZWFkZXItbGFyZ2UtMSA6IChcclxuICAgIGV4dGVuZCA6IFwiJWhlYWRlci1sYXJnZVwiLFxyXG4gICAgZGVmYXVsdHMgOiAoXHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjEsXHJcbiAgICAgIGZvbnQtc2l6ZTogMjRweFxyXG4gICAgKSxcclxuICAgICRsYXlvdXQteGwgOiAoXHJcbiAgICAgIGZvbnQtc2l6ZTogNDhweFxyXG4gICAgKVxyXG4gICksXHJcbiAgaGVhZGVyLWxhcmdlLTIgOiAoXHJcbiAgICBleHRlbmQgOiBcIiVoZWFkZXItbGFyZ2VcIixcclxuICAgIGRlZmF1bHRzIDogKFxyXG4gICAgICBsaW5lLWhlaWdodDogMS4yLFxyXG4gICAgICBmb250LXNpemU6IDE4cHhcclxuICAgICksXHJcbiAgICAkbGF5b3V0LXhsIDogKFxyXG4gICAgICBmb250LXNpemU6IDI4cHhcclxuICAgIClcclxuICApLFxyXG4gIGhlYWRlci1sYXJnZS0zIDogKFxyXG4gICAgZXh0ZW5kIDogXCIlaGVhZGVyLWxhcmdlXCIgXCIldGV4dC14bGFyZ2VcIixcclxuICAgIGRlZmF1bHRzIDogKFxyXG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZGlzcGxheSxcclxuICAgICAgZm9udC1zdHlsZTogaXRhbGljXHJcbiAgICApXHJcbiAgKSxcclxuICBoZWFkZXItc21hbGwgOiAoXHJcbiAgICBleHRlbmQgOiBcIiVoZWFkZXJcIixcclxuICAgIGRlZmF1bHRzIDogKFxyXG4gICAgICBjb2xvcjogJGNvbG9yLWRpc3BsYXksXHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQsXHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkLFxyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjhlbVxyXG4gICAgKVxyXG4gICksXHJcbiAgaGVhZGVyLXNtYWxsLTEgOiAoXHJcbiAgICBleHRlbmQgOiBcIiVoZWFkZXItc21hbGxcIiBcIiV0ZXh0LWxhcmdlXCJcclxuICApLFxyXG4gIGxlYWQgOiAoXHJcbiAgICBleHRlbmQgOiBcIiVoZWFkZXItbGFyZ2VcIiBcIiV0ZXh0LWxhcmdlXCIsXHJcbiAgICBkZWZhdWx0czogKFxyXG4gICAgICBsaW5lLWhlaWdodDogMS42M1xyXG4gICAgKVxyXG4gICksXHJcbiAgc3ViamVjdCA6IChcclxuICAgIGV4dGVuZCA6IFwiJWxlYWRcIixcclxuICAgIGRlZmF1bHRzIDogKFxyXG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZGlzcGxheSxcclxuICAgICAgZm9udC1zdHlsZTogaXRhbGljXHJcbiAgICApXHJcbiAgKSxcclxuICBjYXB0aW9uIDogKFxyXG4gICAgZGVmYXVsdHMgOiAoXHJcbiAgICAgIGZvbnQtc2l6ZTogMTBweFxyXG4gICAgKSxcclxuICAgICRsYXlvdXQteGwgOiAoXHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweFxyXG4gICAgKVxyXG4gICksXHJcbiAgYnV0dG9uIDogKFxyXG4gICAgZXh0ZW5kIDogXCIlbGVhZFwiXHJcbiAgKSxcclxuICBidXR0b24tc21hbGwgOiAoXHJcbiAgICBleHRlbmQgOiBcIiVjYXB0aW9uXCJcclxuICApXHJcbik7XHJcblxyXG4vLyBUaGlzIHBsYWNlaG9sZGVyIHNlbGVjdG9yIGlzIHVzZWQgdG8gZGVmaW5lIGhlYWRlclxyXG4vLyBzcGVjaWZpYyBzdHlsZXMgaW4gb3RoZXIgcGFydGlhbHNcclxuJWhlYWRlciB7fVxyXG5cclxuLy8gU2V0dGluZyB0eXBlIHBsYWNlaG9sZGVyIHNlbGVjdG9yc1xyXG4vLyBhY2NvcmRpbmcgdG8gJHR5cGVzIG1hcCBpbiBzZXR0aW5nc1xyXG5AaW5jbHVkZSBzZXQtdHlwZS1wbGFjZWhvbGRlcnM7XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJWVtcGhhc2l6ZSB7XHJcbiAgQGluY2x1ZGUgdXNlLXR5cGUoIGhlYWRlci1zbWFsbCApO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbn1cclxuXHJcbmgxLFxyXG4uaDEgeyBAaW5jbHVkZSB1c2UtdHlwZSggaGVhZGVyLWxhcmdlLTEgKTsgfVxyXG5oMixcclxuLmgyIHsgQGluY2x1ZGUgdXNlLXR5cGUoIGhlYWRlci1sYXJnZS0yICk7IH1cclxuaDMsXHJcbi5oMyB7IEBpbmNsdWRlIHVzZS10eXBlKCBoZWFkZXItbGFyZ2UtMyApOyB9XHJcbmg0LFxyXG4uaDQgeyBAaW5jbHVkZSB1c2UtdHlwZSggaGVhZGVyLXNtYWxsLTEgKTsgfVxyXG5cclxuLmxlYWQge1xyXG4gIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICBAaW5jbHVkZSB1c2UtdHlwZSggbGVhZCApO1xyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14bC4uLiApIHsgbWFyZ2luLWJvdHRvbTogMmVtOyB9XHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXh4bC4uLiApIHsgbWFyZ2luLWJvdHRvbTogM2VtOyB9XHJcbn1cclxuXHJcbi8vIFBhcmFncmFwaHNcclxucCB7XHJcbiAgQGluY2x1ZGUgcmVtKCBtYXJnaW4tYm90dG9tLCAxMHB4ICk7XHJcblxyXG4gIGEgeyBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJyYW5kLWNvbG9yLXNlY29uZGFyeTsgfVxyXG59XHJcblxyXG4vLyBMaW5rc1xyXG4lbGluayB7XHJcbiAgY29sb3I6ICRjb2xvci1saW5rO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6ICRjb2xvci1saW5rLWhvdmVyO1xyXG4gIH1cclxuICAmOmZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6IDA7XHJcbiAgICBvdXRsaW5lOiBkb3R0ZWQgdGhpbiAkY29sb3ItbGluay1ob3ZlcjtcclxuICB9XHJcbiAgJjphY3RpdmUge1xyXG4gICAgY29sb3I6ICRjb2xvci1saW5rLWFjdGl2ZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbiAgJltocmVmXj10ZWxde1xyXG4gICAgY29sb3I6aW5oZXJpdDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG4gIH1cclxufVxyXG5cclxuYSB7IEBleHRlbmQgJWxpbms7IH1cclxuXHJcbi8vIFRleHQgc2VsZWN0aW9uXHJcbjo6c2VsZWN0aW9uIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3Itc2VsZWN0aW9uLWJnO1xyXG4gIGNvbG9yOiAkY29sb3Itc2VsZWN0aW9uO1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG46Oi1tb3otc2VsZWN0aW9uIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3Itc2VsZWN0aW9uLWJnO1xyXG4gIGNvbG9yOiAkY29sb3Itc2VsZWN0aW9uO1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4vLyBGb3JtYXR0aW5nIChpbmxpbmUpXHJcbmVtIHsgZm9udC1zdHlsZTogaXRhbGljOyB9XHJcbnN0cm9uZyxcclxuYiB7IEBleHRlbmQgJWVtcGhhc2l6ZTsgfVxyXG5cclxuZmlnY2FwdGlvbixcclxuLmNhcHRpb24sXHJcbi5sYWJlbCB7IEBpbmNsdWRlIHVzZS10eXBlKCBjYXB0aW9uICk7IH1cclxuXHJcbkBtaXhpbiBpbnZlcnQtdGV4dCB7XHJcbiAgY29sb3I6ICRjb2xvci10ZXh0LWludmVyc2U7XHJcbiAgYSB7IGNvbG9yOiAkbWVzc2FnZS1pbmZvcm1hdGlvbi1jb2xvcjsgfVxyXG4gICN7IGhlYWRpbmdzKDEsMykgfSxcclxuICBzdHJvbmcsXHJcbiAgYiB7IGNvbG9yOiBpbmhlcml0OyB9XHJcbn1cclxuXHJcbi5pbnZlcnQtdGV4dCB7XHJcbiAgQGluY2x1ZGUgaW52ZXJ0LXRleHQ7XHJcbiAgJWJ1dHRvbiB7IGNvbG9yOiBpbmhlcml0OyB9XHJcbn1cclxuXHJcbi5zdWJqZWN0IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBAaW5jbHVkZSB1c2UtdHlwZShzdWJqZWN0KTtcclxuICAmOmFmdGVyIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZGlzcGxheTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBib3R0b206IC0zcHg7XHJcbiAgICB3aWR0aDogMS41ZW07XHJcblxyXG4gICAgLmludmVydC10ZXh0ICYgeyBib3JkZXItY29sb3I6ICRjb2xvci10ZXh0LWludmVyc2U7IH1cclxuICB9XHJcbn1cclxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIlxyXG4uYmxvZy10b3BpbWFnZSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4gIGhlaWdodDogMzB2dztcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAzNDBweDtcclxuICBtYXgtaGVpZ2h0OiA1MDBweDtcclxufVxyXG5cclxuLmJsb2ctdG9waW1hZ2VfX2ltYWdlIHtcclxuICBvcGFjaXR5OiAwLjQ7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG5cclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogYXV0bztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuLmJsb2ctbmF2IHtcclxuICBtYXJnaW4tdG9wOiA0NHB4O1xyXG4gIHBhZGRpbmc6IDEwcHggMCAycHg7XHJcblxyXG4gICZfX3RpdGxlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDVweCAxMHB4IDVweCAwKTtcclxuICB9XHJcblxyXG4gICZfX3NoYXJlIHtcclxuICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG4gICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1ib3R0b20sIDhweCk7XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7IGZsb2F0OiByaWdodDsgfVxyXG4gIH1cclxuXHJcbiAgJl9fc2hhcmUtdG9vbHMge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBAaW5jbHVkZSByZW0obWFyZ2luLXRvcCwgNXB4KTtcclxuICB9XHJcbn1cclxuXHJcbi5ibG9nLW5hdl9fdGFncyB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxuICAmLmlzLWxvYWRpbmcge1xyXG4gICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgLnJzVGh1bWIge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAucnNUaHVtYnNDb250YWluZXIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLnJzVGh1bWJzIHsgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxyXG5cclxuICAucnNOYXZTZWxlY3RlZCB7IGJvcmRlcjogbm9uZTsgfVxyXG5cclxufVxyXG5cclxuLmJsb2ctbmF2X190YWdzLS1ibHVlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzk0ZDY0O1xyXG4gIGhlaWdodDogNTZweCAhaW1wb3J0YW50O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW46IDA7XHJcblxyXG4gIC5yc05hdkl0ZW0geyBib3JkZXI6IG5vbmU7IH1cclxuXHJcbiAgLmJsb2ctbmF2X190YWdzLWl0ZW0ge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICBtYXJnaW46IDAgMTBweDtcclxuICAgIHBhZGRpbmc6IDE0cHggMCAxOHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICYuaXMtYWN0aXZlIHsgb3BhY2l0eTogMTsgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlOjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDNweDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJsb2dfX2hlYWRlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxyXG5cclxuLmJsb2ctbmF2X190YWdzLWxpc3QgeyBAZXh0ZW5kICVsaXN0LWNsZWFuOyB9XHJcblxyXG4uYmxvZy1uYXZfX3RhZ3MtaXRlbSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxyXG5cclxuLmJsb2ctbmF2X190YWcge1xyXG4gIHBhZGRpbmc6IDVweCAxNHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheTtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gIHdpZHRoOiAxMDBweDtcclxuXHJcbiAgJjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGdyYXksIDUlKTsgfVxyXG59XHJcblxyXG4uYmxvZy1wb3N0X19hdXRob3ItaW1hZ2Uge1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHdpZHRoOiA2M3B4O1xyXG4gIGhlaWdodDogNjNweDtcclxuICBtYXJnaW46IDEwcHggYXV0bztcclxufVxyXG5cclxuLmJsb2ctcG9zdF9fdG9wLWNvbnRlbnQge1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRvcDogNTAlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4uYmxvZy1wb3N0X19oZWFkZXIge1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1tLi4uICkgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkgeyBmb250LXNpemU6IDU1cHg7IH1cclxufVxyXG5cclxuLmJsb2ctcG9zdF9fc3ViaGVhZGVyIHtcclxuICBjb2xvcjogJGJsYWNrO1xyXG4gIG1hcmdpbjogMDtcclxuICBmb250LXNpemU6IDI0cHg7XHJcbiAgbWFyZ2luOiAwIGF1dG8gNDBweDtcclxuICBsaW5lLWhlaWdodDogMS42O1xyXG4gIG1heC13aWR0aDogNzAwcHg7XHJcbn1cclxuXHJcbi5ibG9nLXBvc3RfX2RhdGUge1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWRpc3BsYXk7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uYmxvZy1wb3N0IHtcclxuICBAZXh0ZW5kIC5zZWN0aW9uO1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcbiAgYm9yZGVyOiBub25lO1xyXG5cclxuICAmX19kZXRhaWxzIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kaXNwbGF5O1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgJl9fY29tbWVudCB7IG1pbi1oZWlnaHQ6IDE1MHB4OyB9XHJcbn1cclxuXHJcbi5ibG9nLXBvc3RfX2JvZHl7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBtYXgtd2lkdGg6IDk4MHB4O1xyXG4gIHBhZGRpbmc6IDAgMTBweDtcclxuXHJcbiAgLy8gUmljaHRleHQgaW1hZ2VcclxuICBpbWcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uYmxvZy1pdGVtIHtcclxuICAvLyBMYXlvdXRzXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LW0uLi4gKSB7XHJcbiAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICBtaW4taGVpZ2h0OiBweC10by1lbSgxOTBweCwgJGZvbnQtc2l6ZS1sYXJnZSk7XHJcbiAgICBAaW5jbHVkZSBzcGFuKDIpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7IEBpbmNsdWRlIHNwYW4oNCk7IH1cclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkge1xyXG4gICAgbWluLWhlaWdodDogcHgtdG8tZW0oMjYwcHgsICRmb250LXNpemUtbGFyZ2UpO1xyXG4gICAgQGluY2x1ZGUgc3Bhbig0KTtcclxuICB9XHJcblxyXG4gICY6bnRoLW9mLXR5cGUoMykgeyBjbGVhcjogbGVmdDsgfVxyXG5cclxuICAmX19pbWFnZS1jb250YWluZXIge1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7IC8vIEF2b2lkIGdhcCBiZWxvdyBpbWFnZVxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgJl9faW1hZ2UgeyB3aWR0aDogMTAwJTsgfVxyXG5cclxuICAmX19jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAvLyBTZXR0aW5nIG1pbi1oZWlnaHQgdG8gYWxpZ24gYm90dG9tXHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbS4uLiApIHsgbWluLWhlaWdodDogMTMwcHg7IH1cclxuICB9XHJcblxyXG4gICZfX2RhdGUge1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kaXNwbGF5O1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gIH1cclxuXHJcbiAgJl9fdGFncyB7XHJcbiAgICBjb2xvcjogJHllbGxvdztcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgfVxyXG5cclxuICAmX19oZWFkZXIgeyBAaW5jbHVkZSB1c2UtdHlwZSh0ZXh0LXh4bGFyZ2UpOyB9XHJcblxyXG59XHJcblxyXG4vLyBMYXJnZSBpdGVtXHJcbi5ibG9nLWl0ZW0tLWxhcmdlIHtcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgfVxyXG5cclxuICAuYmxvZy1pdGVtX19jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1tLi4uICkgeyBtaW4taGVpZ2h0OiAxODBweDsgfVxyXG4gIH1cclxuXHJcbiAgLmJsb2ctaXRlbV9faGVhZGVyIHtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkgeyBmb250LXNpemU6IDI0cHg7IH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uYmxvZy1jb21tZW50IHtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7IHdpZHRoOiBzcGFuKDggb2YgMTApOyB9XHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXh4bC4uLiApIHsgd2lkdGg6IHNwYW4oNiBvZiA4KTsgfVxyXG5cclxuICAmX19pdGVtIHtcclxuICAgIEBleHRlbmQgLmJsb2ctcG9zdF9fYm9keTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMXB4KTtcclxuICB9XHJcblxyXG4gICZfX3RleHQtY29udGFpbmVyIHsgZmxvYXQ6IGxlZnQ7IH1cclxuXHJcbiAgJl9faGVhZGVyIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kaXNwbGF5O1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIEBpbmNsdWRlIHVzZS10eXBlKHRleHQtZGVmYXVsdCk7XHJcbiAgfVxyXG5cclxuICAmX19pbWFnZSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGhlaWdodDogNTBweDtcclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1yaWdodCwgMjBweCk7XHJcbiAgfVxyXG59XHJcbiIsIlxyXG4uY2hlY2tvdXQge1xyXG4gICZfX2FjY2VwdC1jaGVja2JveC1jb250YWluZXIge1xyXG4gICAgQGV4dGVuZCAuY2hlY2tib3gtY29udGFpbmVyO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyZW07XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteHhsLi4uICkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fYmFza2V0LWFuY2hvciB7XHJcbiAgICBAZXh0ZW5kIC5idXR0b24tLWJ1eTtcclxuICAgIEBleHRlbmQgLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbDtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14bC4uLiApIHsgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuICAgIC8vIFNldHRpbmcgaWNvbiBzaXplXHJcbiAgICAmOmJlZm9yZSB7IGZvbnQtc2l6ZTogMjVweDsgfVxyXG4gIH1cclxuXHJcbiAgJl9fc2hpcHBpbmdtZXRob2QgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gICZfX3N1Ym1pdCB7XHJcbiAgICBAZXh0ZW5kIC5idXR0b247XHJcbiAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXh4bC4uLiApIHsgZmxvYXQ6IHJpZ2h0OyB9XHJcblxyXG4gICAgJi0tdXMge1xyXG4gICAgICBAZXh0ZW5kIC5jaGVja291dF9fc3VibWl0O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCBhbGwgMjAwbXMgZWFzZS1pbi1vdXQgKTtcclxuXHJcbiAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgIHRleHQtaW5kZW50OiAtMzAwcHg7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLi4vaW1hZ2VzL2xvYWRlci5naWYnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgICAgICAgQGluY2x1ZGUgcmVtKCBtYXJnaW4sIC0xNnB4IDAgMCAtMTZweCApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fcGF5bWVudCB7XHJcbiAgICAmLS1pcy1oaWRkZW4ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fcGF5bWVudC1pY29uIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxyXG5cclxuICAmX19waG9uZSB7XHJcbiAgICBAZXh0ZW5kIC5pY29uLS1waG9uZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIEBpbmNsdWRlIHJlbSggbWFyZ2luLCAxMHB4IDAgKTtcclxuICAgIEBpbmNsdWRlIHVzZS10eXBlKHRleHQteHhsYXJnZSk7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLXNlY29uZGFyeTtcclxuICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19vcGVuaW5nIHsgbWFyZ2luOiAwOyB9XHJcblxyXG4gICZfX2dscyB7XHJcbiAgICBAZXh0ZW5kIC5zZWN0aW9uO1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcblxyXG4gICZfX2dscy1yZXN1bHRzIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgQGluY2x1ZGUgcmVtKCBtYXJnaW4tYm90dG9tLCAyMHB4ICk7XHJcbiAgfVxyXG5cclxuICAmX19oaWRkZW4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgfVxyXG59XHJcblxyXG4uZGlzY291bnQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgJl9faW5wdXQgeyBAaW5jbHVkZSB1c2UtdHlwZSh0ZXh0LXh4bGFyZ2UpOyB9XHJcblxyXG4gICZfX3N1Ym1pdCB7XHJcbiAgICBAZXh0ZW5kIC5idXR0b247XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICBAaW5jbHVkZSByZW0oIHBhZGRpbmcsIDE0cHggNDBweCAxMHB4ICk7XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkgeyBAaW5jbHVkZSByZW0oIHBhZGRpbmcsIDEycHggNDBweCA4cHggKTsgfVxyXG4gIH1cclxufVxyXG4iLCJcclxuQG1peGluIGJ1dHRvbiggJGJhY2tncm91bmQtY29sb3IsICRiYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSwgJGJvcmRlci1jb2xvciApIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjphY3RpdmUsXHJcbiAgJi5ob3ZlcixcclxuICAmLnByZXNzZWQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvci1hY3RpdmU7IH1cclxuXHJcbiAgJjpkaXNhYmxlZCxcclxuICAmLmRpc2FibGVkIHsgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7IH1cclxufVxyXG5cclxuJWJ1dHRvbiB7XHJcbiAgYm9yZGVyOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDAuM2VtO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgY29sb3I6ICRjb2xvci10ZXh0LWludmVyc2U7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIHBhZGRpbmc6IDAuOGVtIDNlbSAwLjZlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcclxuICBAaW5jbHVkZSB1c2UtdHlwZSggYnV0dG9uICk7XHJcbiAgQGluY2x1ZGUgYnV0dG9uKFxyXG4gICAgJGJhY2tncm91bmQtY29sb3I6ICAgICAgICAkYnV0dG9uLXByaW1hcnktY29sb3IsXHJcbiAgICAkYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IGxpZ2h0ZW4oICRidXR0b24tcHJpbWFyeS1jb2xvciwgNSUgKSxcclxuICAgICRib3JkZXItY29sb3I6ICAgICAgICAgICAgZGFya2VuKCAkYnV0dG9uLXByaW1hcnktY29sb3IsIDUlIClcclxuICApO1xyXG5cclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbS4uLiApIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxyXG5cclxuICAmOmhvdmVyLFxyXG4gICYuaG92ZXIsXHJcbiAgJjphY3RpdmUsXHJcbiAgJjpmb2N1cyxcclxuICAmLnByZXNzZWQge1xyXG4gICAgY29sb3I6ICRjb2xvci10ZXh0LWludmVyc2U7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmOmFjdGl2ZSxcclxuICAmOmZvY3VzLFxyXG4gICYucHJlc3NlZCB7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMC4zZW07XHJcbiAgICBwYWRkaW5nOiB7XHJcbiAgICAgIHRvcDogMC42ZW07XHJcbiAgICAgIGJvdHRvbTogMC44ZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOmRpc2FibGVkLFxyXG4gICYuZGlzYWJsZWQge1xyXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMC4zZW07XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgcGFkZGluZzoge1xyXG4gICAgICB0b3A6IDAuOGVtO1xyXG4gICAgICBib3R0b206IDAuNmVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi0tc21hbGwge1xyXG4gICAgQGV4dGVuZCAlYnV0dG9uO1xyXG4gICAgQGluY2x1ZGUgdXNlLXR5cGUoIGJ1dHRvbi1zbWFsbCApO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbiB7IEBleHRlbmQgJWJ1dHRvbjsgfVxyXG5cclxuLmJ1dHRvbi0tc21hbGwgeyBAZXh0ZW5kICVidXR0b24tLXNtYWxsOyB9XHJcblxyXG4uYnV0dG9uLS1wcmltYXJ5IHtcclxuICBAZXh0ZW5kICVidXR0b247XHJcbiAgQGluY2x1ZGUgYnV0dG9uKFxyXG4gICAgJGJhY2tncm91bmQtY29sb3I6ICAgICAgICAkYnV0dG9uLXByaW1hcnktY29sb3IsXHJcbiAgICAkYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IGxpZ2h0ZW4oICRidXR0b24tcHJpbWFyeS1jb2xvciwgNSUgKSxcclxuICAgICRib3JkZXItY29sb3I6ICAgICAgICAgICAgZGFya2VuKCAkYnV0dG9uLXByaW1hcnktY29sb3IsIDUlIClcclxuICApO1xyXG59XHJcblxyXG4uYnV0dG9uLS1zZWNvbmRhcnkge1xyXG4gIEBleHRlbmQgJWJ1dHRvbjtcclxuICBAaW5jbHVkZSBidXR0b24oXHJcbiAgICAkYmFja2dyb3VuZC1jb2xvcjogICAgICAgICRidXR0b24tc2Vjb25kYXJ5LWNvbG9yLFxyXG4gICAgJGJhY2tncm91bmQtY29sb3ItYWN0aXZlOiBsaWdodGVuKCAkYnV0dG9uLXNlY29uZGFyeS1jb2xvciwgNSUgKSxcclxuICAgICRib3JkZXItY29sb3I6ICAgICAgICAgICAgZGFya2VuKCAkYnV0dG9uLXNlY29uZGFyeS1jb2xvciwgNSUgKVxyXG4gICk7XHJcbn1cclxuXHJcbi5idXR0b24tLXByaW1hcnktLXNtYWxsIHtcclxuICBAZXh0ZW5kICVidXR0b24tLXNtYWxsO1xyXG4gIEBleHRlbmQgLmJ1dHRvbi0tcHJpbWFyeTtcclxufVxyXG5cclxuLmJ1dHRvbi0tc2Vjb25kYXJ5LS1zbWFsbCB7XHJcbiAgQGV4dGVuZCAlYnV0dG9uLS1zbWFsbDtcclxuICBAZXh0ZW5kIC5idXR0b24tLXNlY29uZGFyeTtcclxufVxyXG5cclxuLmJ1dHRvbi0tdGVydGlhcnkge1xyXG4gIEBleHRlbmQgJWJ1dHRvbjtcclxuICBAaW5jbHVkZSBidXR0b24oXHJcbiAgICAkYmFja2dyb3VuZC1jb2xvcjogICAgICAgICRidXR0b24tdGVydGlhcnktY29sb3IsXHJcbiAgICAkYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IGxpZ2h0ZW4oICRidXR0b24tdGVydGlhcnktY29sb3IsIDUlICksXHJcbiAgICAkYm9yZGVyLWNvbG9yOiAgICAgICAgICAgIGRhcmtlbiggJGJ1dHRvbi10ZXJ0aWFyeS1jb2xvciwgNyUgKVxyXG4gICk7XHJcbn1cclxuXHJcbi5idXR0b24tLXRlcnRpYXJ5LS1zbWFsbCB7XHJcbiAgQGV4dGVuZCAlYnV0dG9uLS1zbWFsbDtcclxuICBAZXh0ZW5kIC5idXR0b24tLXRlcnRpYXJ5O1xyXG59XHJcblxyXG4uYnV0dG9uLS1idXkge1xyXG4gICRidXktaWNvbi1zaXplOiAzMnB4O1xyXG4gIEBleHRlbmQgJWJ1dHRvbjtcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAwLjVlbSAzZW0gMC4zZW07XHJcbiAgZm9udC1mYW1pbHk6ICRmb250O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAvLyBAZXh0ZW5kIC5pY29uLS1iYXNrZXQ7XHJcbiAgLy8gcGFkZGluZy1yaWdodDogMy41ZW07IC8vIGFkZGluZyBhIGJpdCBvbiB0aGUgcmlnaHRcclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAkYnV5LWljb24tc2l6ZTsgLy8gY2FuJ3QgdXNlIGVtcyB0byBzY29wZSBwc2V1ZG8gZWxlbWVudCBmb250IHNpemUgb24gSUVcclxuICAgIG1hcmdpbi1yaWdodDogcHgtdG8tZW0oMTJweCwgJGJ1eS1pY29uLXNpemUpO1xyXG4gICAgbWFyZ2luLXRvcDogcHgtdG8tZW0oLTEycHgsICRidXktaWNvbi1zaXplKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgdG9wOiBweC10by1lbSg4cHgsICRidXktaWNvbi1zaXplKTtcclxuICB9XHJcbn1cclxuXHJcbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBEZWZhdWx0c1xyXG4vLyBUaGVzZSB2YXJpYWJsZXMgc2hvdWxkIGJlIG92ZXJyaWRkZW4gaW4geW91ciBzZXR0aW5ncyBwYXJ0aWFsXHJcblxyXG4vLyBJY29uIGZvbnQgZmFtaWx5XHJcbiRpY29uLWZvbnQ6IFwiaWNvbnNcIiAhZGVmYXVsdDtcclxuXHJcbi8vIC0tLS0tLS0tXHJcbi8vIEljb24gbWFwXHJcbi8vIFByb3BlcnRpZXM6XHJcbi8vIG5hbWUgICAgIGNoYXJhY3RlciAgICAgICBmb250IHNpemUgICAgY29sb3JcclxuJGljb25zIDogKFxyXG4gIHBsdXMgIDogKCBjaGFyIDogXCJcXGU2MDNcIiwgc2l6ZSA6IDE0cHgsIGNvbG9yIDogIzAwODAwMCApLFxyXG4gIG1pbnVzIDogKCBjaGFyIDogXCJcXGU2MDVcIiwgc2l6ZSA6IDE0cHgsIGNvbG9yIDogI0YwMCApXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRGVmYXVsdCB1c2FnZVxyXG5cclxuLypcclxuXHJcbi8vIEV4dGVuZGluZyBpY29uIHNlbGVjdG9yXHJcbi5idXR0b24geyBAZXh0ZW5kIC5pY29uLS1idXR0b247IH1cclxuXHJcbi8vIEV4dGVuZGluZyBwbGFjZWhvbGRlciBzZWxlY3RvciAobXVzdCBiZSBhcHBsaWVkIHRvIHBzZXVkbyBlbGVtZW50KVxyXG4uYnV0dG9uIHtcclxuICAmOmJlZm9yZSB7IEBleHRlbmQgJWljb24tLWJ1dHRvbjsgfVxyXG59XHJcblxyXG4vLyBVc2luZyBtaXhpbiAobXVzdCBiZSBhcHBsaWVkIHRvIHBzZXVkbyBlbGVtZW50KVxyXG4vLyBFeHRlbmRzIGEgcGxhY2Vob2xkZXIgc2VsZWN0b3IgJWljb24tLWJ1dHRvblxyXG4uYnV0dG9uIHtcclxuICAmOmJlZm9yZSB7IEBpbmNsdWRlIHVzZS1pY29uKCBidXR0b24gKTsgfVxyXG59XHJcblxyXG4vLyBJY29uIG9ubHkgKHRleHQgaXMgaGlkZGVuKVxyXG4uYXJyb3cge1xyXG4gIEBleHRlbmQgJWljb24tb25seTtcclxuICBAZXh0ZW5kIC5pY29uLS1hcnJvdztcclxufVxyXG5cclxuKi9cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBVc2UgaW5zaWRlIG1lZGlhIHF1ZXJ5XHJcblxyXG4vKlxyXG5cclxuLy8gRm9yY2luZyBzdHlsZSBvdXRwdXQgcmF0aGVyIHRoYW4gZXh0ZW5kaW5nIGEgcGxhY2Vob2xkZXIgc2VsZWN0b3JcclxuLmJ1dHRvbjpiZWZvcmUge1xyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGJwLWwteGwgKSB7XHJcbiAgICBAaW5jbHVkZSB1c2UtaWNvbiggYnV0dG9uLCB0cnVlICk7XHJcbiAgfVxyXG59XHJcblxyXG4qL1xyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFVzaW5nIGljb25zIGluIEJFTSBzeW50YXhcclxuXHJcbi8qXHJcbkluIG1vc3QgY2FzZXMgaXQncyBub3QgbmVjZXNzYXJ5IHRvIHVzZSBhbGwgYXZhaWxhYmxlIGljb25zIGluIGEgZ2l2ZW4gc3ludGF4LlxyXG5UaGlzIHdheSwgd2UgY2FuIGhhbmQgcGljayB0aGUgaWNvbnMgd2Ugd2FudCB0byB1c2UuXHJcblB1dCAjIGluIGZyb250IG9mIHsgJG5hbWUgfSBiZWZvcmUgdXNlXHJcblxyXG5TQ1NTXHJcbj09PT1cclxuXHJcbi5mb290ZXIge1xyXG4gICZfX2ljb24ge1xyXG4gICAgQGVhY2ggJG5hbWUgaW4gZmFjZWJvb2ssIGluc3RhZ3JhbSB7XHJcbiAgICAgICYtLXsgJG5hbWUgfSB7XHJcbiAgICAgICAgQGV4dGVuZCAuaWNvbi0teyAkbmFtZSB9O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5PdXRwdXRcclxuPT09PT09XHJcblxyXG4uZm9vdGVyX19pY29uLS1mYWNlYm9vayB7IC4uLiB9XHJcbi5mb290ZXJfX2ljb24tLWluc3RhZ3JhbSB7IC4uLiB9XHJcblxyXG4qL1xyXG5cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBJY29uIGhlbHBlcnNcclxuXHJcbi8qKlxyXG4gKiBSZXR1cm5zIGFuIGljb24gbWFwIGJhc2Ugb24gaXRzIG5hbWVcclxuICogSWYgYSBwcm9wZXJ0eSBpcyBwcm92aWRlZCwgdGhlIHZhbHVlIG9mIHRoYXQgcHJvcGVydHkgaXMgcmV0dXJuZWRcclxuICogQHR5cGUgIHtmdW5jdGlvbn1cclxuICogQHBhcmFtIHtTdHJpbmd9ICAkbmFtZSAgICAgICBbcmVxdWlyZWRdIGljb24gbmFtZVxyXG4gKiBAcGFyYW0ge1N0cmluZ30gICRwcm9wZXJ0eSAgIFtvcHRpb25hbF0gcHJvcGVydHkgbmFtZVxyXG4gKi9cclxuQGZ1bmN0aW9uIGdldC1pY29uKCAkbmFtZSwgJHByb3BlcnR5OiBmYWxzZSApIHtcclxuICBAaWYgbm90ICRwcm9wZXJ0eSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoICRpY29ucywgJG5hbWUgKTtcclxuICB9IEBlbHNlIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCggbWFwLWdldCggJGljb25zLCAkbmFtZSApLCAkcHJvcGVydHkgKTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZXQgaWNvblxyXG4gKiBDYW4gYmUgdXNlZCB3aXRob3V0ICRpY29ucyBtYXBcclxuICogTXVzdCBiZSBhcHBsaWVkIHRvIGEgcHNldWRvIGVsZW1lbnQgKDpiZWZvcmUsIDphZnRlcilcclxuICogQHR5cGUgIHttaXhpbn1cclxuICogQHBhcmFtIHtTdHJpbmd9ICAkY2hhciAgW3JlcXVpcmVkXSBoZXhhZGVjaW1hbCBsZXR0ZXIgZm9yIHRoZSBpY29uXHJcbiAqIEBwYXJhbSB7Qm9vbH0gICAgJGZvcmNlIFtvcHRpb25hbF0gaWYgc2V0IHRvIHRydWUsIHRoZSBpY29uIHN0eWxlc1xyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZSByZW5kZXJlZCBpbmxpbmUgcmF0aGVyIHRoYW5cclxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdWdoIEBleHRlbmQgKGZvciBlbWJlZGRpbmdcclxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBtZWRpYSBxdWVyaWVzKVxyXG4gKi9cclxuQG1peGluIHNldC1pY29uKCAkY2hhciwgJGZvcmNlOiBmYWxzZSApIHtcclxuICBjb250ZW50OiBcIiN7ICRjaGFyIH1cIjtcclxuICBAaWYgJGZvcmNlIHtcclxuICAgIEBpbmNsdWRlIGljb24tYmFzZTtcclxuICB9IEBlbHNlIHtcclxuICAgIEBleHRlbmQgJWljb247XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogVXNlIGljb25cclxuICogUmVxdWlyZXMgJGljb25zIG1hcCB0byBiZSBkZWZpbmVkXHJcbiAqIE11c3QgYmUgYXBwbGllZCB0byBhIHBzZXVkbyBlbGVtZW50ICg6YmVmb3JlLCA6YWZ0ZXIpXHJcbiAqIEB0eXBlICB7bWl4aW59XHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAgJG5hbWUgICBbcmVxdWlyZWRdIG5hbWUgb2YgaWNvbiB0byB1c2VcclxuICogQHBhcmFtIHtCb29sfSAgICAkZm9yY2UgIFtvcHRpb25hbF0gaWYgc2V0IHRvIHRydWUsIHRoZSBpY29uIHN0eWxlc1xyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmUgcmVuZGVyZWQgaW5saW5lIHJhdGhlciB0aGFuXHJcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm91Z2ggQGV4dGVuZCAoZm9yIGVtYmVkZGluZ1xyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBtZWRpYSBxdWVyaWVzKVxyXG4gKi9cclxuQG1peGluIHVzZS1pY29uKCAkbmFtZSwgJGZvcmNlOiBmYWxzZSApIHtcclxuICBAaWYgJGZvcmNlIHtcclxuICAgIEBpbmNsdWRlIHNldC1pY29uKCBnZXQtaWNvbiggJG5hbWUsIGNoYXIgKSwgJGZvcmNlICk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXh0ZW5kICVpY29uLS0jeyAkbmFtZSB9O1xyXG4gIH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEljb24gYmFzZSBzdHlsZXNcclxuXHJcbkBtaXhpbiBpY29uLWJhc2Uge1xyXG4gIGZvbnQ6IHtcclxuICAgIGZhbWlseTogJGljb24tZm9udDtcclxuICAgIHN0eWxlOiBub3JtYWw7XHJcbiAgICB2YXJpYW50OiBub3JtYWw7XHJcbiAgICB3ZWlnaHQ6IG5vcm1hbDtcclxuICB9XHJcbiAgaGVpZ2h0OiAxZW07XHJcbiAgbGluZS1oZWlnaHQ6IDFlbTtcclxuICBzcGVhazogbm9uZTtcclxuICB0ZXh0LWluZGVudDogMDsgLy8gYXZvaWRpbmcgb2Zmc2V0IGluIGNvbmp1Y3Rpb24gd2l0aCAlaWNvbi1vbmx5XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblxyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBJY29uIHBsYWNlaG9sZGVyIHN0eWxlc1xyXG5cclxuJWljb24ge1xyXG4gIEBpbmNsdWRlIGljb24tYmFzZTtcclxufVxyXG5cclxuJWljb24tb25seSB7XHJcbiAgdGV4dC1pbmRlbnQ6IC05OTlweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAvLyBGaXhpbmcgdmlldyBpZiBlbGVtZW50IGlzIGZsb2F0ZWRcclxuICAmOmJlZm9yZSxcclxuICAmOmFmdGVyIHtcclxuICAgIGZsb2F0OiBpbmhlcml0O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyAvLyBjZW50ZXIgaWNvblxyXG4gIH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENyZWF0aW5nIGljb24gcGxhY2Vob2xkZXJzL2NsYXNzZXNcclxuXHJcbi8vIENyZWF0aW5nIGljb25zIGZyb20gbWFwXHJcbkBlYWNoICRuYW1lLCAkc2V0dGluZ3MgaW4gJGljb25zIHtcclxuICAkbGV0dGVyIDogbWFwLWdldCggJHNldHRpbmdzLCBjaGFyICk7XHJcbiAgJHNpemUgICA6IG1hcC1nZXQoICRzZXR0aW5ncywgc2l6ZSApO1xyXG4gICRjb2xvciAgOiBtYXAtZ2V0KCAkc2V0dGluZ3MsIGNvbG9yICk7XHJcblxyXG4gIC8vIENyZWF0aW5nIHBsYWNlaG9sZGVyIHNlbGVjdG9ycyBmb3IgcHNldWRvIGVsZW1lbnRzIHRvIGV4dGVuZFxyXG4gIC8vIC5teS1jbGFzczpiZWZvcmUgeyBAZXh0ZW5kICVpY29uLS1jbG9zZSB9XHJcbiAgJWljb24tLSN7ICRuYW1lIH0ge1xyXG4gICAgQGlmICRjb2xvciB7IGNvbG9yOiAkY29sb3I7IH1cclxuICAgIEBpbmNsdWRlIHNldC1pY29uKCAkbGV0dGVyICk7XHJcbiAgICBAaWYgJHNpemUge1xyXG4gICAgICBAaWYgdHlwZS1vZigkc2l6ZSkgPT0gXCJudW1iZXJcIiBhbmQgdW5pdCggJHNpemUgKSA9PSBcInB4XCIge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSggJHNpemUgKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gQ3JlYXRpbmcgY2xhc3NlcyBmb3IgdXNlIGluIHRoZSBET01cclxuICAvLyA8cCBjbGFzcz1cImljb24tLWNsb3NlXCI+Q2xvc2U8L3A+XHJcbiAgLmljb24tLSN7ICRuYW1lIH06YmVmb3JlIHsgQGV4dGVuZCAlaWNvbi0tI3sgJG5hbWUgfTsgfVxyXG59XHJcblxyXG4vLyBJY29ucyBmb3IgdXNlIHdpdGggZGF0YS1hdHRyaWJ1dGVcclxuLy8gPHAgY2xhc3M9XCJpY29uXCIgZGF0YS1pY29uPVwiXFxlNjAxXCI+Q2xvc2U8L3A+XHJcbi5pY29uIHtcclxuICAmOmJlZm9yZSB7XHJcbiAgICBAZXh0ZW5kICVpY29uO1xyXG4gICAgY29udGVudDogYXR0cihkYXRhLWljb24pO1xyXG4gIH1cclxufVxyXG4iLCJcclxuJGZvcm0tZmllbGQtaGVpZ2h0OiA1OHB4ICFkZWZhdWx0O1xyXG4kZm9ybS1maWVsZC1oZWlnaHQtc21hbGw6IDI4cHggIWRlZmF1bHQ7XHJcbiRmb3JtLWZpZWxkLXBhZGRpbmc6IDEwcHggMTBweCAhZGVmYXVsdDtcclxuJGZvcm0tZmllbGQtcGFkZGluZy1zbWFsbDogNHB4IDhweCAhZGVmYXVsdDtcclxuXHJcbiVmb3JtLWVsZW1lbnQtbWFyZ2luIHsgQGluY2x1ZGUgcmVtKCBtYXJnaW4sIDEwcHggMCAyMHB4ICk7IH1cclxuXHJcbiVmb3JtLXRleHQge1xyXG4gIEBleHRlbmQgJWZvcm0tZWxlbWVudC1tYXJnaW47XHJcbiAgQGV4dGVuZCAlYm9yZGVyLWJveDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1ib3JkZXItY29sb3I7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAkZm9ybS1maWVsZC1oZWlnaHQtc21hbGw7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMztcclxuICB3aWR0aDogMTAwJTtcclxuICBAaW5jbHVkZSBib3gtc2l6aW5nKCBib3JkZXItYm94ICk7XHJcbiAgQGluY2x1ZGUgZm9udC1zaXplKDE4cHgpO1xyXG4gIEBpbmNsdWRlIHJlbSggcGFkZGluZywgJGZvcm0tZmllbGQtcGFkZGluZy1zbWFsbCApO1xyXG4gIEBpbmNsdWRlIHVzZS10eXBlKCBsZWFkICk7XHJcblxyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkge1xyXG4gICAgaGVpZ2h0OiAkZm9ybS1maWVsZC1oZWlnaHQ7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTZweCk7XHJcbiAgICBAaW5jbHVkZSByZW0oIHBhZGRpbmcsICRmb3JtLWZpZWxkLXBhZGRpbmcgKTtcclxuICB9XHJcbn1cclxuXHJcbiVwbGFjZWhvbGRlci1sYWJlbCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgLmx0LWllMTAgJiB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbn1cclxuXHJcbiVmb3JtLWNoZWNrLWxhYmVsIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBsaW5lLWhlaWdodDogMjRweDtcclxuICBtaW4taGVpZ2h0OiAyNHB4O1xyXG4gIEBpbmNsdWRlIHJlbSggbWFyZ2luLCA1cHggMCApO1xyXG4gIEBpbmNsdWRlIHJlbSggcGFkZGluZywgMCAwIDAgMzBweCApO1xyXG59XHJcblxyXG4lZm9ybS1lbGVtZW50LWNvbnRhaW5lciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZpZWxkLWhlaWdodC1zbWFsbDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgQGluY2x1ZGUgcmVtKCBtYXJnaW4sIDEwcHggMCAyMHB4ICk7XHJcblxyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkgeyBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmllbGQtaGVpZ2h0OyB9XHJcbn1cclxuXHJcbi8vIElucHV0IC0gdGV4dFxyXG4lZm9ybS10ZXh0LWVsZW1lbnQge1xyXG4gIEBleHRlbmQgJWZvcm0tdGV4dDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWVsZC1iYWNrZ3JvdW5kO1xyXG5cclxuICAmOmZvY3VzLFxyXG4gICYuZm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWVsZC1iYWNrZ3JvdW5kLWZvY3VzOyB9XHJcbn1cclxuXHJcbmxhYmVsIHsgQGluY2x1ZGUgcmVtKCBtYXJnaW4tdG9wLCAxMHB4ICk7IH1cclxuXHJcblt0eXBlPXRlbF0sXHJcblt0eXBlPWVtYWlsXSxcclxuW3R5cGU9bnVtYmVyXSxcclxuW3R5cGU9dGV4dF0sXHJcblt0eXBlPXNlYXJjaF0ge1xyXG4gIEBleHRlbmQgJWZvcm0tdGV4dC1lbGVtZW50O1xyXG5cclxuICAmOjotbXMtY2xlYXIge1xyXG4gICAgLy8gZGlzcGxheTogbm9uZSBub3QgdXNlZCBpbnRlbnRpb25hbGx5XHJcbiAgICAvLyAgIGZvciBkZXRhaWxzIHNlZTogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNDAwNzY1NS9yZW1vdmUtaWUxMHMtY2xlYXItZmllbGQteC1idXR0b24tb24tY2VydGFpbi1pbnB1dHMjYW5zd2VyLTE0NzM5MDkyXHJcbiAgICB3aWR0aCA6IDA7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5bdHlwZT1zZWFyY2hdIHsgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTsgfVxyXG5cclxudGV4dGFyZWEge1xyXG4gIEBleHRlbmQgJWZvcm0tdGV4dC1lbGVtZW50O1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLy8gSW5wdXQgLSBzZWxlY3Rcclxuc2VsZWN0IHtcclxuICBAZXh0ZW5kICVuby1yb3VuZGluZztcclxuICBAZXh0ZW5kICVmb3JtLXRleHQ7XHJcbiAgYmFja2dyb3VuZDogJGZvcm0tZmllbGQtYmFja2dyb3VuZCB1cmwoJy4uL2ltYWdlcy8uLi9pbWFnZXMvZm9ybXMvc2VsZWN0LWFycm93LnBuZycpIHJpZ2h0IDEwcHggY2VudGVyIG5vLXJlcGVhdDtcclxuICBoZWlnaHQ6ICRmb3JtLWZpZWxkLWhlaWdodC1zbWFsbDtcclxuICBsaW5lLWhlaWdodDogMjJweDtcclxuICBwYWRkaW5nOiAwIDAgMCBudGgoICRmb3JtLWZpZWxkLXBhZGRpbmctc21hbGwsIDIgKTtcclxuICBAaW5jbHVkZSBhcHBlYXJhbmNlKG5vbmUpO1xyXG5cclxuICBAaW5jbHVkZSBhdC1yZXRpbmEge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvZm9ybXNAMngvc2VsZWN0LWFycm93LnBuZycpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBpbWFnZS13aWR0aCgnZm9ybXNAMngvc2VsZWN0LWFycm93LnBuZycpIC8gMiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7XHJcbiAgICBoZWlnaHQ6ICRmb3JtLWZpZWxkLWhlaWdodDtcclxuICAgIHBhZGRpbmc6IDAgMCAwIG50aCggJGZvcm0tZmllbGQtcGFkZGluZywgMiApO1xyXG4gIH1cclxuXHJcbiAgJjo6LW1zLWV4cGFuZCB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgQGF0LXJvb3Qge1xyXG4gICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcclxuICAgICAgc2VsZWN0IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuXHJcbiAgICAgICAgLy8gcmVtb3ZpbmcgYXJyb3cgaW4gRkZcclxuICAgICAgICAvLyAgIGZvciBkZXRhaWxzIHNlZTogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy82Nzg3NjY3L3doYXQtaXMtdGhlLWNvcnJlY3QtbW96LWFwcGVhcmFuY2UtdmFsdWUtdG8taGlkZS1kcm9wZG93bi1hcnJvdy1vZi1hLXNlbGVjdCNhbnN3ZXItMTgzMjc2NjZcclxuICAgICAgICB0ZXh0LWluZGVudDogMC4wMXB4O1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6ICcnO1xyXG4gICAgICAgIEBpbmNsdWRlIGFwcGVhcmFuY2Uobm9uZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaXMtcmVxdWlyZWQgeyBib3JkZXItY29sb3I6IHJlZDsgfVxyXG5cclxuICAmOmZvY3VzLFxyXG4gICYuZm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWVsZC1iYWNrZ3JvdW5kLWZvY3VzOyB9XHJcbn1cclxuXHJcbi8vIElucHV0IC0gcmFkaW9cclxuJGZvcm0tcmFkaW8taWNvbjogJy4uL2ltYWdlcy9mb3Jtcy9yYWRpby1idG4tbm9ybWFsLnBuZycgIWRlZmF1bHQ7XHJcbiRmb3JtLXJhZGlvLWljb24tY2hlY2tlZDogJy4uL2ltYWdlcy9mb3Jtcy9yYWRpby1idG4tY2hlY2tlZC5wbmcnICFkZWZhdWx0O1xyXG4kZm9ybS1yYWRpby1pY29uLXJldGluYTogJy4uL2ltYWdlcy9mb3Jtcy9yYWRpby1idG4tbm9ybWFsLnBuZycgIWRlZmF1bHQ7XHJcbiRmb3JtLXJhZGlvLWljb24tcmV0aW5hLWNoZWNrZWQ6ICcuLi9pbWFnZXMvZm9ybXMvcmFkaW8tYnRuLWNoZWNrZWQucG5nJyAhZGVmYXVsdDtcclxuJGZvcm0tcmFkaW8tZGFya2VuOiAyMCUgIWRlZmF1bHQ7XHJcbiRmb3JtLXJhZGlvLWxpZ2h0ZW46IDMlICFkZWZhdWx0O1xyXG5cclxuW3R5cGU9cmFkaW9dIHtcclxuICBAYXQtcm9vdCB7XHJcbiAgICAvLyB3ZSBjYW5ub3QgdXNlIFwiZGlzcGxheTogYmxvY2tcIiBvciBcInZpc2liaWxpdHk6IGhpZGRlblwiXHJcbiAgICAvLyBiZWNhdXNlIHRhYiB3aWxsIHN0b3Agd29ya2luZyBvbiByYWRpbyBidXR0b25cclxuICAgIC8vIGJlbG93IGlzIHdvcmsgYXJvdW5kIGZvciB0aGlzXHJcblxyXG4gICAgLy8gbW92ZSByYWRpbyBidXR0b24gb3V0c2lkZSBib3VuZGluZyBib3hcclxuICAgIC5yYWRpby1jb250YWluZXIgJiB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAtNTBweDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gYW5kIHVzZSBcIm92ZXJmbG93OiBoaWRkZW5cIlxyXG4gICAgLnJhZGlvLWNvbnRhaW5lciB7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYgKyBsYWJlbCB7XHJcbiAgICBAZXh0ZW5kICVmb3JtLWNoZWNrLWxhYmVsO1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCAkZm9ybS1yYWRpby1pY29uICkgbGVmdCBjZW50ZXIgbm8tcmVwZWF0O1xyXG5cclxuICAgIEBpbmNsdWRlIGF0LXJldGluYSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGZvcm0tcmFkaW8taWNvbi1yZXRpbmEgKTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBpbWFnZS13aWR0aCggJGZvcm0tcmFkaW8taWNvbi1yZXRpbmEgKSAvIDIgYXV0bztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYgKyBsYWJlbDpob3ZlcixcclxuICAmOmZvY3VzICsgbGFiZWwsXHJcbiAgJjpjaGVja2VkICsgbGFiZWwge1xyXG4gICAgY29sb3I6IGRhcmtlbihcclxuICAgICAgJGNvbG9yLXRleHQsXHJcbiAgICAgICRmb3JtLXJhZGlvLWRhcmtlblxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gICY6Y2hlY2tlZCArIGxhYmVsIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGZvcm0tcmFkaW8taWNvbi1jaGVja2VkICk7XHJcblxyXG4gICAgQGluY2x1ZGUgYXQtcmV0aW5hIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkZm9ybS1yYWRpby1pY29uLXJldGluYS1jaGVja2VkICk7IH1cclxuICB9XHJcblxyXG4gICY6ZGlzYWJsZWQgKyBsYWJlbCB7XHJcbiAgICBjb2xvcjogbGlnaHRlbihcclxuICAgICAgJGNvbG9yLXRleHQsXHJcbiAgICAgICRmb3JtLXJhZGlvLWxpZ2h0ZW5cclxuICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBJbnB1dCAtIGNoZWNrYm94XHJcbiRmb3JtLWNoZWNrYm94LWljb246ICcuLi9pbWFnZXMvZm9ybXMvY2hlY2tib3gtYnRuLW5vcm1hbC5wbmcnICFkZWZhdWx0O1xyXG4kZm9ybS1jaGVja2JveC1pY29uLWNoZWNrZWQ6ICcuLi9pbWFnZXMvZm9ybXMvY2hlY2tib3gtYnRuLWNoZWNrZWQucG5nJyAhZGVmYXVsdDtcclxuJGZvcm0tY2hlY2tib3gtaWNvbi1yZXRpbmE6ICcuLi9pbWFnZXMvZm9ybXMvY2hlY2tib3gtYnRuLW5vcm1hbC5wbmcnICFkZWZhdWx0O1xyXG4kZm9ybS1jaGVja2JveC1pY29uLXJldGluYS1jaGVja2VkOiAnLi4vaW1hZ2VzL2Zvcm1zL2NoZWNrYm94LWJ0bi1jaGVja2VkLnBuZycgIWRlZmF1bHQ7XHJcbiRmb3JtLWNoZWNrYm94LWRhcmtlbjogMjAlICFkZWZhdWx0O1xyXG4kZm9ybS1jaGVja2JveC1saWdodGVuOiAxMCUgIWRlZmF1bHQ7XHJcblxyXG5bdHlwZT1jaGVja2JveF0ge1xyXG4gIEBhdC1yb290IHtcclxuICAgIC8vIHdlIGNhbm5vdCB1c2UgXCJkaXNwbGF5OiBibG9ja1wiIG9yIFwidmlzaWJpbGl0eTogaGlkZGVuXCJcclxuICAgIC8vIGJlY2F1c2UgdGFiIHdpbGwgc3RvcCB3b3JraW5nIG9uIHJhZGlvIGJ1dHRvblxyXG4gICAgLy8gYmVsb3cgaXMgd29yayBhcm91bmQgZm9yIHRoaXNcclxuXHJcbiAgICAvLyBtb3ZlIHJhZGlvIGJ1dHRvbiBvdXRzaWRlIGJvdW5kaW5nIGJveFxyXG4gICAgLmNoZWNrYm94LWNvbnRhaW5lciAmIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IC01MHB4O1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBhbmQgdXNlIFwib3ZlcmZsb3c6IGhpZGRlblwiXHJcbiAgICAuY2hlY2tib3gtY29udGFpbmVyIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiArIGxhYmVsIHtcclxuICAgIEBleHRlbmQgJWZvcm0tY2hlY2stbGFiZWw7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoICRmb3JtLWNoZWNrYm94LWljb24gKSBsZWZ0IGNlbnRlciBuby1yZXBlYXQ7XHJcblxyXG4gICAgQGluY2x1ZGUgYXQtcmV0aW5hIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCAkZm9ybS1jaGVja2JveC1pY29uLXJldGluYSApO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGltYWdlLXdpZHRoKCAkZm9ybS1jaGVja2JveC1pY29uLXJldGluYSApIC8gMiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogZGFya2VuKFxyXG4gICAgICAgICRjb2xvci10ZXh0LFxyXG4gICAgICAgICRmb3JtLWNoZWNrYm94LWRhcmtlblxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyArIGxhYmVsLFxyXG4gICY6Y2hlY2tlZCArIGxhYmVsIHtcclxuICAgIGNvbG9yOiBkYXJrZW4oXHJcbiAgICAgICRjb2xvci10ZXh0LFxyXG4gICAgICAkZm9ybS1jaGVja2JveC1kYXJrZW5cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAmOmNoZWNrZWQgKyBsYWJlbCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICRmb3JtLWNoZWNrYm94LWljb24tY2hlY2tlZCApO1xyXG5cclxuICAgIEBpbmNsdWRlIGF0LXJldGluYSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCggJGZvcm0tY2hlY2tib3gtaWNvbi1yZXRpbmEtY2hlY2tlZCApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpkaXNhYmxlZCArIGxhYmVsIHtcclxuICAgIGNvbG9yOiBsaWdodGVuKFxyXG4gICAgICAkY29sb3ItdGV4dCxcclxuICAgICAgJGZvcm0tY2hlY2tib3gtbGlnaHRlblxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIE51bWJlclxyXG5bdHlwZT1udW1iZXJdIHtcclxuICBAZXh0ZW5kICVmb3JtLXRleHQtZWxlbWVudDtcclxuICAvLyBoaWRlcyB0aGUgc3Bpbi1idXR0b24gZm9yIGZpcmVmb3hcclxuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcclxuXHJcbiAgLy8gUmVtb3ZlIHdlYmtpdCBzcGluIGJ1dHRvbnNcclxuICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG4gICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xyXG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbiRudW1iZXItYnV0dG9uLXNpemU6ICRmb3JtLWZpZWxkLWhlaWdodCAhZGVmYXVsdDtcclxuJG51bWJlci1idXR0b24tc2l6ZS1zbWFsbDogJGZvcm0tZmllbGQtaGVpZ2h0LXNtYWxsICFkZWZhdWx0O1xyXG5cclxuLm51bWJlci1jb250YWluZXIge1xyXG4gIEBleHRlbmQgJWZvcm0tZWxlbWVudC1jb250YWluZXI7XHJcbiAgcGFkZGluZzoge1xyXG4gICAgbGVmdDogJG51bWJlci1idXR0b24tc2l6ZS1zbWFsbCArIDEwcHg7XHJcbiAgICByaWdodDogJG51bWJlci1idXR0b24tc2l6ZS1zbWFsbCArIDEwcHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbC4uLiApIHtcclxuICAgIHBhZGRpbmc6IHtcclxuICAgICAgbGVmdDogJG51bWJlci1idXR0b24tc2l6ZSArIDEwcHg7XHJcbiAgICAgIHJpZ2h0OiAkbnVtYmVyLWJ1dHRvbi1zaXplICsgMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5udW1iZXJfX2lucHV0IHtcclxuICAubnVtYmVyLWNvbnRhaW5lciAmIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuJW51bWJlci1idXR0b24ge1xyXG4gIEBleHRlbmQgJWJvcmRlci1jaXJjbGU7XHJcbiAgYmFja2dyb3VuZDogJGJyYW5kLWNvbG9yLXF1aW5hcnk7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGhlaWdodDogJG51bWJlci1idXR0b24tc2l6ZS1zbWFsbDtcclxuICBsaW5lLWhlaWdodDogJG51bWJlci1idXR0b24tc2l6ZS1zbWFsbDtcclxuICBvdXRsaW5lOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gIHdpZHRoOiAkbnVtYmVyLWJ1dHRvbi1zaXplLXNtYWxsO1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgdGV4dC1pbmRlbnQ6IDA7XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7IGZvbnQtc2l6ZTogMjBweDsgfVxyXG5cclxuICAgIC5udW1iZXItY29udGFpbmVyICYge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkge1xyXG4gICAgaGVpZ2h0OiAkbnVtYmVyLWJ1dHRvbi1zaXplO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRudW1iZXItYnV0dG9uLXNpemU7XHJcbiAgICB3aWR0aDogJG51bWJlci1idXR0b24tc2l6ZTtcclxuICB9XHJcbn1cclxuXHJcbi5udW1iZXJfX2luY3JlYXNlIHtcclxuICBAZXh0ZW5kICVudW1iZXItYnV0dG9uO1xyXG4gIEBleHRlbmQgJWljb24tb25seTtcclxuICByaWdodDogMDtcclxuXHJcbiAgJjphZnRlciB7IEBleHRlbmQgJWljb24tLXBsdXM7IH1cclxufVxyXG5cclxuLm51bWJlcl9fZGVjcmVhc2Uge1xyXG4gIEBleHRlbmQgJW51bWJlci1idXR0b247XHJcbiAgQGV4dGVuZCAlaWNvbi1vbmx5O1xyXG4gIGxlZnQ6IDA7XHJcblxyXG4gICY6YWZ0ZXIgeyBAZXh0ZW5kICVpY29uLS1taW51czsgfVxyXG59XHJcblxyXG4vLyBSYW5nZSBzdHlsZXMgaW5zcGlyZWQgYnlcclxuLy8gaHR0cDovL2JyZW5uYW9icmllbi5jb20vYmxvZy8yMDE0LzA1L3N0eWxlLWlucHV0LXR5cGUtcmFuZ2UtaW4tZXZlcnktYnJvd3Nlci5odG1sXHJcbiRyYW5nZS13aWR0aDogMjAwcHggIWRlZmF1bHQ7XHJcbiRyYW5nZS10aHVtYi1zaXplOiAxNnB4ICFkZWZhdWx0O1xyXG4kcmFuZ2UtdGh1bWItY29sb3I6ICMxQ0U2MDAgIWRlZmF1bHQ7XHJcbiRyYW5nZS10cmFjay1zaXplOiA1cHggIWRlZmF1bHQ7XHJcbiRyYW5nZS10cmFjay1jb2xvcjogI2RkZCAhZGVmYXVsdDtcclxuJHJhbmdlLXRyYWNrLWNvbG9yLWZvY3VzOiAjY2NjICFkZWZhdWx0O1xyXG4kcmFuZ2UtdHJhY2stY29sb3ItbG93ZXI6ICRyYW5nZS10cmFjay1jb2xvciAhZGVmYXVsdDtcclxuJHJhbmdlLXRyYWNrLWNvbG9yLWxvd2VyLWZvY3VzOiAkcmFuZ2UtdHJhY2stY29sb3ItZm9jdXMgIWRlZmF1bHQ7XHJcblxyXG5bdHlwZT1yYW5nZV0ge1xyXG4gIC8qcmVtb3ZlcyBkZWZhdWx0IHdlYmtpdCBzdHlsZXMqL1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHJcbiAgLypmaXggZm9yIEZGIHVuYWJsZSB0byBhcHBseSBmb2N1cyBzdHlsZSBidWcgKi9cclxuICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcclxuICBwYWRkaW5nOiAwO1xyXG5cclxuICAvKnJlcXVpcmVkIGZvciBwcm9wZXIgdHJhY2sgc2l6aW5nIGluIEZGKi9cclxuICB3aWR0aDogJHJhbmdlLXdpZHRoO1xyXG5cclxuICAvLyBMaXR0bGUgaGFjayBmb3Igc2FtZSBvZmZzZXQgeC1icm93c2VyXHJcbiAgaGVpZ2h0OiAkcmFuZ2UtdGh1bWItc2l6ZTtcclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbS1kb3duLi4uICkgeyB3aWR0aDogMTAwJTsgfVxyXG5cclxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XHJcbiAgICBoZWlnaHQ6ICRyYW5nZS10cmFjay1zaXplO1xyXG4gICAgYmFja2dyb3VuZDogJHJhbmdlLXRyYWNrLWNvbG9yO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJHJhbmdlLXRyYWNrLXNpemU7XHJcbiAgICB3aWR0aDogJHJhbmdlLXdpZHRoO1xyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LW0tZG93bi4uLiApIHsgd2lkdGg6IDEwMCU7IH1cclxuICB9XHJcbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgaGVpZ2h0OiAkcmFuZ2UtdGh1bWItc2l6ZTtcclxuICAgIHdpZHRoOiAkcmFuZ2UtdGh1bWItc2l6ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJhY2tncm91bmQ6ICRyYW5nZS10aHVtYi1jb2xvcjtcclxuICAgIG1hcmdpbi10b3A6IC0oICRyYW5nZS10aHVtYi1zaXplIC0gJHJhbmdlLXRyYWNrLXNpemUgKS8yO1xyXG4gIH1cclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgfVxyXG4gICY6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcclxuICAgIGJhY2tncm91bmQ6ICRyYW5nZS10cmFjay1jb2xvci1mb2N1cztcclxuICB9XHJcbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XHJcbiAgICBoZWlnaHQ6ICRyYW5nZS10cmFjay1zaXplO1xyXG4gICAgYmFja2dyb3VuZDogJHJhbmdlLXRyYWNrLWNvbG9yO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJHJhbmdlLXRyYWNrLXNpemU7XHJcbiAgICB3aWR0aDogJHJhbmdlLXdpZHRoO1xyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LW0tZG93bi4uLiApIHsgd2lkdGg6IDEwMCU7IH1cclxuICB9XHJcbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBoZWlnaHQ6ICRyYW5nZS10aHVtYi1zaXplO1xyXG4gICAgd2lkdGg6ICRyYW5nZS10aHVtYi1zaXplO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYmFja2dyb3VuZDogJHJhbmdlLXRodW1iLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLypoaWRlIHRoZSBvdXRsaW5lIGJlaGluZCB0aGUgYm9yZGVyKi9cclxuICAmOi1tb3otZm9jdXNyaW5ne1xyXG4gICAgb3V0bGluZTogMXB4IHNvbGlkIHdoaXRlO1xyXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XHJcbiAgfVxyXG4gICY6Oi1tcy10cmFjayB7XHJcbiAgICBoZWlnaHQ6ICRyYW5nZS10cmFjay1zaXplO1xyXG4gICAgYmFja2dyb3VuZDogJHJhbmdlLXRyYWNrLWNvbG9yO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJHJhbmdlLXRyYWNrLXNpemU7XHJcbiAgICAvKnJlbW92ZSBkZWZhdWx0IHRpY2sgbWFya3MqL1xyXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgd2lkdGg6ICRyYW5nZS13aWR0aDtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1tLWRvd24uLi4gKSB7IHdpZHRoOiAxMDAlOyB9XHJcbiAgfVxyXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiAkcmFuZ2UtdHJhY2stY29sb3ItbG93ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkcmFuZ2UtdHJhY2stc2l6ZSAwIDAgJHJhbmdlLXRyYWNrLXNpemU7XHJcbiAgfVxyXG4gICY6Oi1tcy10aHVtYiB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBoZWlnaHQ6ICRyYW5nZS10aHVtYi1zaXplO1xyXG4gICAgd2lkdGg6ICRyYW5nZS10aHVtYi1zaXplO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYmFja2dyb3VuZDogJHJhbmdlLXRodW1iLWNvbG9yO1xyXG4gIH1cclxuICAmOmZvY3VzOjotbXMtdHJhY2sge1xyXG4gICAgYmFja2dyb3VuZDogJHJhbmdlLXRyYWNrLWNvbG9yLWZvY3VzO1xyXG4gIH1cclxuICAmOmZvY3VzOjotbXMtZmlsbC1sb3dlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkcmFuZ2UtdHJhY2stY29sb3ItbG93ZXItZm9jdXM7XHJcbiAgfVxyXG59XHJcbiIsImh0bWwgeyBmb250LXNpemU6ICRmb250LWJhc2Utc2l6ZTsgfVxyXG5cclxuYm9keSB7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgLy8gU2V0dGluZyBkZWZhdWx0IHRleHQgYmVoYXZpb3JcclxuICBAaW5jbHVkZSB1c2UtdHlwZSggdGV4dC1kZWZhdWx0LCB0cnVlICk7XHJcbiAgLy8gTWFudWFsIHVzZSBvZiBlbXNcclxuICBmb250LXNpemU6IHB4LXRvLWVtKCRmb250LXNpemUtc21hbGwsICRmb250LWJhc2Utc2l6ZS1weCk7XHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXlvdXQtbC4uLikgeyBmb250LXNpemU6IHB4LXRvLWVtKCRmb250LXNpemUtbGFyZ2UsICRmb250LWJhc2Utc2l6ZS1weCk7IH1cclxuXHJcbiAgLy8gU2hvdyBsYXlvdXQgbGFiZWxzIHdoZW4gaW4gZGV2ZWxvcG1lbnQgbW9kZVxyXG4gIEBpZiAkZGV2ZWxvcG1lbnQgPT0gdHJ1ZSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygxMHB4KTtcclxuICAgICAgYmFja2dyb3VuZDogcmdiYSgjMDAwLCAuMik7XHJcbiAgICAgIGNvbnRlbnQ6ICdsYXlvdXQteHMgKGltcGxpY2l0KSc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDAgcmdiYSgjZmZmLCAwLjc1KTtcclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXlvdXQtcy4uLikgeyAgIGNvbnRlbnQ6IFwibGF5b3V0LXNcIjsgfVxyXG4gICAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxheW91dC1tLi4uKSB7ICAgY29udGVudDogXCJsYXlvdXQtbVwiOyB9XHJcbiAgICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGF5b3V0LWwuLi4pIHsgICBjb250ZW50OiBcImxheW91dC1sXCI7IH1cclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXlvdXQteGwuLi4pIHsgIGNvbnRlbnQ6IFwibGF5b3V0LXhsICh3aXRoIElFIGZhbGxiYWNrKVwiOyB9XHJcbiAgICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGF5b3V0LXh4bC4uLikgeyBjb250ZW50OiBcImxheW91dC14eGxcIjsgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJcclxuJXNwbGF0LXRleHQge1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcblxyXG5cclxuJXNwbGF0LWljb24ge1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBBdm9pZCBpY29uIG92ZXJsYXlpbmcgY29udGVudFxyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICY6YmVmb3JlIHtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdCAhaW1wb3J0YW50OyAvLyBuZWVkZWQgZm9yIG92ZXJyaWRpbmcgc3BlY2lmaWNpdHkgZnJvbSBpY29uIG1peGluXHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIG1hcmdpbi10b3A6IC0wLjVlbTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbiRzcGxhdC1iYXNlLWZvbnQ6ICRmb250LXNpemUtbGFyZ2UgIWRlZmF1bHQ7XHJcbiRzcGxhdC1zaXplOiBweC10by1lbSg2NXB4LCAkc3BsYXQtYmFzZS1mb250KSAhZGVmYXVsdDtcclxuJHNwbGF0LXNpemUtbGFyZ2U6IHB4LXRvLWVtKDE0MHB4LCAkc3BsYXQtYmFzZS1mb250KSAhZGVmYXVsdDtcclxuJHNwbGF0LXNpemUteGxhcmdlOiBweC10by1lbSgxNjBweCwgJHNwbGF0LWJhc2UtZm9udCkgIWRlZmF1bHQ7XHJcblxyXG4uc3BsYXQge1xyXG4gIEBleHRlbmQgJWJvcmRlci1jaXJjbGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgY29sb3I6ICRjb2xvci10ZXh0LWludmVyc2U7XHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgaGVpZ2h0OiAkc3BsYXQtc2l6ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAkc3BsYXQtc2l6ZTtcclxuXHJcbiAgJl9faW5uZXIge1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIC8vIEVsZW1lbnQgbmVlZGVkIGZvciBoYXZpbmcgYm90aCBib3JkZXItcmFkaXVzIGFuZCBib3JkZXIgb24gaU9TIChidWcpXHJcbiAgJl9fYm9yZGVyIHtcclxuICAgIEBleHRlbmQgJWJvcmRlci1jaXJjbGU7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGhlaWdodDogJHNwbGF0LXNpemU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAkc3BsYXQtc2l6ZTtcclxuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgfVxyXG5cclxuICAmX190ZXh0IHtcclxuICAgIEBleHRlbmQgJXNwbGF0LXRleHQ7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIEBpbmNsdWRlIHJlbSggbWFyZ2luLCAycHggMCApO1xyXG4gICAgJi0tcHJpbWFyeSB7XHJcbiAgICAgIEBleHRlbmQgLnNwbGF0X190ZXh0O1xyXG4gICAgICBmb250LXNpemU6IHB4LXRvLWVtKDE4cHgsICRzcGxhdC1iYXNlLWZvbnQpO1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG4gICAgJi0tc2Vjb25kYXJ5IHtcclxuICAgICAgQGV4dGVuZCAuc3BsYXRfX3RleHQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogcHgtdG8tZW0oMTJweCwgJHNwbGF0LWJhc2UtZm9udCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19pbWFnZSB7XHJcbiAgICB3aWR0aDogNjUlO1xyXG5cclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkgeyB3aWR0aDogYXV0bzsgfVxyXG4gIH1cclxuXHJcbiAgJi0tc2Vjb25kYXJ5IHtcclxuICAgIEBleHRlbmQgLnNwbGF0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXF1YXRlcm5hcnk7XHJcbiAgICBjb2xvcjogJGNvbG9yLXRleHQtaW52ZXJzZTtcclxuICB9XHJcblxyXG4gICYtLXRlcnRpYXJ5IHtcclxuICAgIEBleHRlbmQgLnNwbGF0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXNlbmFyeTtcclxuICAgIGNvbG9yOiAkY29sb3ItZGlzcGxheTtcclxuICB9XHJcblxyXG4gICYtLWxhcmdlIHtcclxuICAgIEBleHRlbmQgLnNwbGF0O1xyXG4gICAgaGVpZ2h0OiAkc3BsYXQtc2l6ZS1sYXJnZTtcclxuICAgIHdpZHRoOiAkc3BsYXQtc2l6ZS1sYXJnZTtcclxuXHJcbiAgICAvLyBTZXR0aW5nIHNpemUgb24gZGlmZmVyZW50IGxheW91dHNcclxuICAgIGZvbnQtc2l6ZTogcHgtdG8tZW0oOHB4LCAkZm9udC1zaXplLXNtYWxsKTtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkgeyBmb250LXNpemU6IHB4LXRvLWVtKDEycHgsICRmb250LXNpemUtbGFyZ2UpOyB9XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7IGZvbnQtc2l6ZTogcHgtdG8tZW0oMTBweCwgJGZvbnQtc2l6ZS1sYXJnZSk7IH1cclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14eGwuLi4gKSB7IGZvbnQtc2l6ZTogcHgtdG8tZW0oJHNwbGF0LWJhc2UtZm9udCwgJGZvbnQtc2l6ZS1sYXJnZSk7IH1cclxuXHJcbiAgICAuc3BsYXRfX3RleHQge1xyXG4gICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgQGluY2x1ZGUgcmVtKCBtYXJnaW4sIDZweCAwICk7XHJcbiAgICAgICYtLXByaW1hcnkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcHgtdG8tZW0oMjRweCwgJHNwbGF0LWJhc2UtZm9udCk7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgfVxyXG4gICAgICAmLS1zZWNvbmRhcnkgeyBmb250LXNpemU6IHB4LXRvLWVtKDE2cHgsICRzcGxhdC1iYXNlLWZvbnQpOyB9XHJcbiAgICAgICYtLXRlcnRpYXJ5IHtcclxuICAgICAgICBAZXh0ZW5kIC5zcGxhdF9fdGV4dDtcclxuICAgICAgICBmb250LXNpemU6IHB4LXRvLWVtKDExcHgsICRzcGxhdC1iYXNlLWZvbnQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLS1sYXJnZS1hbHQge1xyXG4gICAgQGV4dGVuZCAuc3BsYXQtLWxhcmdlO1xyXG4gICAgQGV4dGVuZCAuc3BsYXQtLXRlcnRpYXJ5O1xyXG4gICAgLnNwbGF0X190ZXh0IHtcclxuICAgICAgJi0tcHJpbWFyeSB7XHJcbiAgICAgICAgZm9udC1zaXplOiBweC10by1lbSg0MHB4LCAkc3BsYXQtYmFzZS1mb250KTtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgICAgJi0tc2Vjb25kYXJ5IHtcclxuICAgICAgICBmb250LXNpemU6IHB4LXRvLWVtKDI1cHgsICRzcGxhdC1iYXNlLWZvbnQpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHB4LXRvLWVtKDJweCwgMjVweCk7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgfVxyXG4gICAgICAmLS10ZXJ0aWFyeSB7XHJcbiAgICAgICAgZm9udC1zaXplOiBweC10by1lbSgxM3B4LCAkc3BsYXQtYmFzZS1mb250KTtcclxuICAgICAgICBtYXJnaW4tdG9wOiBweC10by1lbSgycHgsIDEzcHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBCZXN0c2VsbGVyXHJcbiAgJi0tYmVzdHNlbGxlciB7XHJcbiAgICBAZXh0ZW5kIC5zcGxhdDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIGNvbG9yOiAkYnJhbmQtY29sb3ItcHJpbWFyeTtcclxuICAgIGhlaWdodDogcHgtdG8tZW0oNzhweCwgJHNwbGF0LWJhc2UtZm9udCk7IC8vIE1ha2luZyBzcGFjZSBmb3IgbGVhdmVzXHJcbiAgICBwYWRkaW5nOiBweC10by1lbSgxMHB4LCAkc3BsYXQtYmFzZS1mb250KTsgLy8gcHVzaCB0ZXh0XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogcHgtdG8tZW0oNzhweCwgJHNwbGF0LWJhc2UtZm9udCk7IC8vIE1ha2luZyBzcGFjZSBmb3IgbGVhdmVzXHJcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gIH1cclxuXHJcbiAgJl9faWNvbi0tYmVzdHNlbGxlciB7XHJcbiAgICBAZXh0ZW5kICVzcGxhdC1pY29uO1xyXG4gICAgZm9udC1zaXplOiBweC10by1lbSg2OXB4LCAkc3BsYXQtYmFzZS1mb250KTtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLXF1YXRlcm5hcnk7XHJcbiAgICAgIEBpbmNsdWRlIHVzZS1pY29uKGxlYXZlcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBUZXh0XHJcbiAgJl9fdGV4dC0tYmVzdHNlbGxlciB7XHJcbiAgICBAZXh0ZW5kIC5zcGxhdF9fdGV4dC0tcHJpbWFyeTtcclxuICAgIGZvbnQtc2l6ZTogcHgtdG8tZW0oMTJweCwgJHNwbGF0LWJhc2UtZm9udCk7XHJcbiAgfVxyXG5cclxuICAvLyBCZXN0c2VsbGVyIC0gbGFyZ2VcclxuICAmLS1iZXN0c2VsbGVyLS1sYXJnZSB7XHJcbiAgICBAZXh0ZW5kIC5zcGxhdC0tbGFyZ2U7XHJcbiAgICBAZXh0ZW5kIC5zcGxhdC0tYmVzdHNlbGxlcjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAkc3BsYXQtc2l6ZS14bGFyZ2U7XHJcbiAgICB3aWR0aDogJHNwbGF0LXNpemUteGxhcmdlO1xyXG5cclxuICAgIC5zcGxhdF9fYm9yZGVyIHtcclxuICAgICAgYm9yZGVyOiAycHggZG90dGVkICRicmFuZC1jb2xvci1wcmltYXJ5O1xyXG4gICAgICBoZWlnaHQ6ICRzcGxhdC1zaXplLXhsYXJnZTtcclxuICAgICAgd2lkdGg6ICRzcGxhdC1zaXplLXhsYXJnZTtcclxuICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDAgMjBweCk7IC8vIHB1c2ggdGV4dFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faWNvbi0tYmVzdHNlbGxlci0tbGFyZ2Uge1xyXG4gICAgQGV4dGVuZCAlc3BsYXQtaWNvbjtcclxuICAgIGZvbnQtc2l6ZTogcHgtdG8tZW0oMTIzcHgsICRzcGxhdC1iYXNlLWZvbnQpO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29sb3I6ICRicmFuZC1jb2xvci1xdWF0ZXJuYXJ5O1xyXG4gICAgICBAaW5jbHVkZSB1c2UtaWNvbihsZWF2ZXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gQmVkc3QgaSB0ZXN0XHJcbiAgJi0tYml0IHtcclxuICAgIEBleHRlbmQgLnNwbGF0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXF1YXRlcm5hcnk7XHJcbiAgICBoZWlnaHQ6ICRzcGxhdC1zaXplO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6ICRzcGxhdC1zaXplO1xyXG4gIH1cclxuXHJcbiAgJi0tanVsIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gIH1cclxuXHJcbiAgJl9faWNvbi0tYml0IHtcclxuICAgIEBleHRlbmQgJXNwbGF0LWljb247XHJcbiAgICBmb250LXNpemU6IHB4LXRvLWVtKDU3cHgsICRzcGxhdC1iYXNlLWZvbnQpO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgQGluY2x1ZGUgdXNlLWljb24oc3RhcnMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVGV4dFxyXG4gICZfX3RleHQtLWJpdCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogcHgtdG8tZW0oMTFweCwgJHNwbGF0LWJhc2UtZm9udCk7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIC8vIFB1c2ggdGV4dFxyXG4gICAgcGFkZGluZzogcHgtdG8tZW0oM3B4LCAkc3BsYXQtYmFzZS1mb250KSBweC10by1lbSg2cHgsICRzcGxhdC1iYXNlLWZvbnQpIDA7XHJcbiAgfVxyXG5cclxuICAvLyBCZWRzdCBpIHRlc3QgLSBsYXJnZVxyXG4gICYtLWJpdC0tbGFyZ2Uge1xyXG4gICAgQGV4dGVuZCAuc3BsYXQtLWxhcmdlO1xyXG4gICAgQGV4dGVuZCAuc3BsYXQtLWJpdDtcclxuICAgIGhlaWdodDogJHNwbGF0LXNpemUteGxhcmdlO1xyXG4gICAgd2lkdGg6ICRzcGxhdC1zaXplLXhsYXJnZTtcclxuXHJcbiAgICAuc3BsYXRfX3RleHQtLWJpdCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcHgtdG8tZW0oMjRweCwgJHNwbGF0LWJhc2UtZm9udCk7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19pY29uLS1iaXQtLWxhcmdlIHtcclxuICAgIEBleHRlbmQgJXNwbGF0LWljb247XHJcbiAgICBmb250LXNpemU6IHB4LXRvLWVtKDEzMHB4LCAkc3BsYXQtYmFzZS1mb250KTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIEBpbmNsdWRlIHVzZS1pY29uKHN0YXJzKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gTGlzdHNcclxudWwgeyBsaXN0LXN0eWxlOiBkaXNjOyB9XHJcbm9sIHsgbGlzdC1zdHlsZTogZGVjaW1hbDsgfVxyXG5cclxubmF2IHVsIHsgbGlzdC1zdHlsZTogbm9uZTsgfVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gSWNvbiBsaXN0XHJcblxyXG4lbGlzdC1pY29uIHtcclxuICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm90dG9tOiBweC10by1lbSgtMnB4LCAkZm9udC1zaXplLWxhcmdlKTtcclxuICBAaW5jbHVkZSByZW0oIG1hcmdpbi1yaWdodCwgMTBweCApO1xyXG59XHJcblxyXG4laWNvbi1saXN0IHsgQGV4dGVuZCAlbGlzdC1jbGVhbjsgfVxyXG5cclxuJWljb24tbGlzdC1pdGVtIHtcclxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBvdmVycmlkaW5nIGhlYWRlciBtYXJnaW5cclxuICBAaW5jbHVkZSB1c2UtdHlwZShzdWJqZWN0KTtcclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbC4uLiApIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbi1yaWdodDogcHgtdG8tZW0oNDBweCwgMTZweCk7IC8vIDE2cHggaXMgaGVhZGVyLWxhcmdlLTMgb24gZGVza3RvcFxyXG4gICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XHJcbiAgfVxyXG4gICY6YmVmb3JlIHsgQGV4dGVuZCAlbGlzdC1pY29uOyB9XHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFRpY2sgbGlzdFxyXG5cclxuLnRpY2stbGlzdCB7XHJcbiAgQGV4dGVuZCAlaWNvbi1saXN0O1xyXG4gICZfX2l0ZW0ge1xyXG4gICAgQGV4dGVuZCAlaWNvbi1saXN0LWl0ZW07XHJcbiAgICAmOmJlZm9yZSB7IEBleHRlbmQgJWljb24tLXRpY2s7IH1cclxuICB9XHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEZlYXR1cmUgbGlzdFxyXG5cclxuLmZlYXR1cmUtbGlzdCB7XHJcbiAgQGV4dGVuZCAlaWNvbi1saXN0O1xyXG4gICZfX2l0ZW0ge1xyXG5cclxuICAgICYuZGVhY3RpdmUge1xyXG4gICAgICAmLFxyXG4gICAgICAmOmJlZm9yZSB7IGNvbG9yOiAkY29sb3ItbGlnaHQ7IH1cclxuICAgICAgLmZlYXR1cmUtbGlzdF9faXRlbS10ZXh0IHsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7IH1cclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIEBleHRlbmQgJWxpc3QtaWNvbjtcclxuICAgICAgY29sb3I6ICRjb2xvci1kaXNwbGF5O1xyXG4gICAgICBmb250LXNpemU6IHB4LXRvLWVtKDI1cHgsICRmb250LXNpemUtbGFyZ2UpO1xyXG4gICAgfVxyXG4gICAgLy8gRXh0ZW5kaW5nIGljb25zXHJcbiAgICBAZWFjaCAkbmFtZSwgJHNldHRpbmdzIGluICRpY29ucy1mZWF0dXJlcyB7XHJcbiAgICAgICYtLSN7ICRuYW1lIH0ge1xyXG4gICAgICAgIEBleHRlbmQgLmZlYXR1cmUtbGlzdF9faXRlbSAhb3B0aW9uYWw7XHJcbiAgICAgICAgQGV4dGVuZCAuaWNvbi0tI3sgJG5hbWUgfTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBVc2VyIEludGVyZmFjZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoaXMgZmlsZSBjYW4gYmUgZXhwYW5kZWQgdG8gaGFuZGxlIGFsbCB0aGUgdXNlciBpbnRlcmZhY2UgcHJvcGVydGllcyBhc1xuLy8gdGhleSBiZWNvbWUgYXZhaWxhYmxlIGluIGJyb3dzZXJzOlxuLy8gaHR0cDovL3d3dy53My5vcmcvVFIvMjAwMC9XRC1jc3MzLXVzZXJpbnQtMjAwMDAyMTZcbkBpbXBvcnQgXCJzaGFyZWRcIjtcblxuXG4vLyBUaGlzIHByb3BlcnR5IGNvbnRyb2xzIHRoZSBzZWxlY3Rpb24gbW9kZWwgYW5kIGdyYW51bGFyaXR5IG9mIGFuIGVsZW1lbnQuXG4vL1xuLy8gQHBhcmFtICRzZWxlY3Rcbi8vICAgWyBub25lIHwgdGV4dCB8IHRvZ2dsZSB8IGVsZW1lbnQgfCBlbGVtZW50cyB8IGFsbCB8IGluaGVyaXQgXVxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgJHNlbGVjdDogdW5xdW90ZSgkc2VsZWN0KTtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHVzZXItc2VsZWN0LCAkc2VsZWN0LFxuICAgIC1tb3osIC13ZWJraXQsIG5vdCgtbyksIC1tcywgLWtodG1sLCBvZmZpY2lhbFxuICApO1xufVxuXG4vLyBTdHlsZSB0aGUgaHRtbDUgaW5wdXQgcGxhY2Vob2xkZXIgaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IGl0LlxuLy9cbi8vIFRoZSBzdHlsZXMgZm9yIHRoZSBpbnB1dCBwbGFjZWhvbGRlciBhcmUgcGFzc2VkIGFzIG1peGluIGNvbnRlbnRcbi8vIGFuZCB0aGUgc2VsZWN0b3IgY29tZXMgZnJvbSB0aGUgbWl4aW4ncyBjb250ZXh0LlxuLy9cbi8vIEZvciBleGFtcGxlOlxuLy9cbi8vICAgICAje2VsZW1lbnRzLW9mLXR5cGUodGV4dC1pbnB1dCl9IHtcbi8vICAgICAgIEBpbmNsdWRlIGlucHV0LXBsYWNlaG9sZGVyIHtcbi8vICAgICAgICAgY29sb3I6ICNiZmJmYmY7XG4vLyAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbi8vICAgICAgIH1cbi8vICAgICB9XG4vL1xuLy8gaWYgeW91IHdhbnQgdG8gYXBwbHkgdGhlIHBsYWNlaG9sZGVyIHN0eWxlcyB0byBhbGwgZWxlbWVudHMgc3VwcG9ydGluZ1xuLy8gdGhlIGBpbnB1dC1wbGFjZWhvbGRlcmAgcHNldWRvIGNsYXNzIChiZXdhcmUgb2YgcGVyZm9ybWFuY2UgaW1wYWN0cyk6XG4vL1xuLy8gICAgICoge1xuLy8gICAgICAgQGluY2x1ZGUgaW5wdXQtcGxhY2Vob2xkZXIge1xuLy8gICAgICAgICBjb2xvcjogI2JmYmZiZjtcbi8vICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuLy8gICAgICAgfVxuLy8gICAgIH1cbkBtaXhpbiBpbnB1dC1wbGFjZWhvbGRlciB7XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgJjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxufVxuIixudWxsLCJAaW1wb3J0IFwic2hhcmVkXCI7XG5cbi8vIENoYW5nZSB0aGUgYXBwZWFyYW5jZSBmb3IgTW96aWxsYSwgV2Via2l0IGFuZCBwb3NzaWJseSB0aGUgZnV0dXJlLlxuLy8gVGhlIGFwcGVhcmFuY2UgcHJvcGVydHkgaXMgY3VycmVudGx5IG5vdCBwcmVzZW50IGluIGFueSBuZXdlciBDU1Mgc3BlY2lmaWNhdGlvbi5cbi8vXG4vLyBUaGVyZSBpcyBubyBvZmZpY2lhbCBsaXN0IG9mIGFjY2VwdGVkIHZhbHVlcywgYnV0IHlvdSBtaWdodCBjaGVjayB0aGVzZSBzb3VyY2U6XG4vLyAgIE1vemlsbGEgOiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi9DU1MvLW1vei1hcHBlYXJhbmNlXG4vLyAgIFdlYmtpdCAgOiBodHRwOi8vY29kZS5nb29nbGUuY29tL3Avd2Via2l0LW1pcnJvci9zb3VyY2UvYnJvd3NlL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluP3NwZWM9c3ZuZjFhZWE1NTlkY2QwMjVhODk0NmFhN2RhNmU0ZTgzMDZmNWMxYjYwNCZyPTYzYzdkMWFmNDQ0MzBiMzE0MjMzZmVhMzQyYzNkZGIyYTA1MmUzNjVcbi8vICAgKHNlYXJjaCBmb3IgJ2FwcGVhcmFuY2UnIHdpdGhpbiB0aGUgcGFnZSlcblxuQG1peGluIGFwcGVhcmFuY2UoJGFwKSB7XG4gICRhcDogdW5xdW90ZSgkYXApO1xuICBAaW5jbHVkZSBleHBlcmltZW50YWwoYXBwZWFyYW5jZSwgJGFwLFxuICAgIC1tb3osIC13ZWJraXQsIG5vdCgtbyksIG5vdCgtbXMpLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgKTtcbn1cbiIsImJsb2NrcXVvdGUge1xyXG4gIEBleHRlbmQgJWJvcmRlci1ib3g7XHJcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkY29sb3ItYm9yZGVyO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIG1hcmdpbjogMDtcclxuICB3aWR0aDogNTAlO1xyXG5cclxuICBAaW5jbHVkZSByZW0oIHBhZGRpbmcsIDAgMCAwIDIwcHggKTtcclxuICBAaW5jbHVkZSB1c2UtdHlwZSggaGVhZGVyLWxhcmdlLTMgKTtcclxuXHJcbiAgcDpiZWZvcmUgeyBjb250ZW50OiAn4oCcJzsgfVxyXG5cclxuICBwOmFmdGVyIHsgY29udGVudDogJ+KAnSc7IH1cclxuXHJcbiAgY2l0ZSB7XHJcbiAgICBAaW5jbHVkZSB1c2UtdHlwZSggdGV4dC1kZWZhdWx0LCB0cnVlICk7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuIiwidGFibGUgeyB3aWR0aDogMTAwJTsgfVxyXG5cclxudHIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctYmFja2dyb3VuZDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxufVxyXG5cclxudHI6bnRoLWNoaWxkKDJuKSxcclxudGhlYWQgdHIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxyXG5cclxudGgge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICBAaW5jbHVkZSB1c2UtdHlwZShoZWFkZXItc21hbGwtMSk7XHJcbn1cclxuXHJcbnRoLCB0ZCB7IHBhZGRpbmc6IDE1cHggMjBweDsgfVxyXG4iLCJcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQnVsbGV0c1xyXG5cclxuJWJ1bGxldHMge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcGFkZGluZzogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbiVidWxsZXQtaXRlbSB7XHJcbiAgQGV4dGVuZCAlYm9yZGVyLWNpcmNsZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnVsbGV0cy1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gIGJvcmRlcjogJGJ1bGxldHMtYm9yZGVyLXdpZHRoIHNvbGlkICRidWxsZXRzLWJvcmRlci1jb2xvcjtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGhlaWdodDogJGJ1bGxldHMtc2l6ZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6ICRidWxsZXRzLXNpemU7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgJG9mZnNldDogKCRidWxsZXRzLXNpemUgLSAkYnVsbGV0cy1kb3Qtc2l6ZSkgLyAyO1xyXG4gICAgQGV4dGVuZCAlYm9yZGVyLWNpcmNsZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRidWxsZXRzLXNlbGVjdGVkLWNvbG9yO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogJG9mZnNldDtcclxuICAgICAgbGVmdDogJG9mZnNldDtcclxuICAgICAgcmlnaHQ6ICRvZmZzZXQ7XHJcbiAgICAgIHRvcDogJG9mZnNldDtcclxuICB9XHJcblxyXG4gICYuc2VsZWN0ZWQge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYnVsbGV0cy1zZWxlY3RlZC1jb2xvcjtcclxuXHJcbiAgICAmOmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBWYXJpYW50IDFcclxuLmJ1bGxldHMge1xyXG4gIEBleHRlbmQgJWJ1bGxldHM7XHJcblxyXG4gIGEgeyBAZXh0ZW5kICVidWxsZXQtaXRlbTsgfVxyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBUaHVtYm5haWwgYnVsbGV0c1xyXG5cclxuJXRodW1ibmFpbC1idWxsZXRzIHsgQGV4dGVuZCAlYnVsbGV0czsgfVxyXG5cclxuJXRodW1ibmFpbC1idWxsZXQtaXRlbSB7XHJcbiAgQGV4dGVuZCAlYnVsbGV0LWl0ZW07XHJcblxyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14bC4uLiApIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xyXG5cclxuICAgICYuc2VsZWN0ZWQ6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgfVxyXG59XHJcblxyXG4ldGh1bWJuYWlsLWJ1bGxldC1pbWFnZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cclxufVxyXG5cclxuLnRodW1ibmFpbC1idWxsZXRzIHtcclxuICBAZXh0ZW5kICV0aHVtYm5haWwtYnVsbGV0cztcclxuXHJcbiAgYSB7IEBleHRlbmQgJXRodW1ibmFpbC1idWxsZXQtaXRlbTsgfVxyXG5cclxuICBpbWcgeyBAZXh0ZW5kICV0aHVtYm5haWwtYnVsbGV0LWltYWdlOyB9XHJcbn1cclxuIiwiLy8gTGF5b3V0IHJ1bGVzIGRpdmlkZSB0aGUgcGFnZSBpbnRvIHNlY3Rpb25zLiBMYXlvdXRzIGhvbGQgb25lIG9yIG1vcmUgY29tcG9uZW50cyB0b2dldGhlci5cclxuLy8gTGF5b3V0IHJ1bGVzIGFyZSBhbnl0aGluZyByZWxhdGVkIHRvIHRoZSBwb3NpdGlvbiBvZiB0aGUgZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQuXHJcbi8vIGUuZy46IGNvbHVtbnMgc3BhbiwgZGlzcGxheSwgcG9zaXRpb25pbmcgYW5kIG1vcmVcclxuLy8gVmlzdWFsIHN0eWxpbmcgc2hvdWxkIGJlIGluIF9nbG9iYWwsIF9jb21wb25lbnRzIG9yIF90ZW1wbGF0ZXNcclxuLy8gTGF5b3V0IHJ1bGVzIGFyZSBhbHNvIHJlc3BvbnNpYmxlIGZvciBsYXlvdXQgY2hhbmdlcyBkdWUgdG8gYnJvd3NlciBzaXplIChyZXNwb25zaXZlKVxyXG5cclxuLy8gR3JpZCBzdHVmZlxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuYm9keSB7IEBleHRlbmQgJWNvbnRhaW5lci1pZS1mYWxsYmFjazsgfVxyXG5cclxuJWNvbnRhaW5lci1pZS1mYWxsYmFjayB7XHJcbiAgI3sgJGxheW91dC1pZS1mYWxsYmFjayB9ICYgeyBtaW4td2lkdGg6IHB4LXRvLWVtKCRicC1sLXhsKTsgfVxyXG59XHJcblxyXG5AbWl4aW4gY3VzdG9tLWNvbnRhaW5lciB7XHJcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xyXG4gIEBpbmNsdWRlIHJlbSggcGFkZGluZywgMCAkZ3JpZC1wYWRkaW5nIC8gMiApO1xyXG5cclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbC4uLiApIHtcclxuICAgIEBpbmNsdWRlIHJlbSggcGFkZGluZywgMCAkZ3JpZC1wYWRkaW5nICk7XHJcbiAgfVxyXG59XHJcblxyXG4lY29udGFpbmVyIHsgQGluY2x1ZGUgY3VzdG9tLWNvbnRhaW5lcjsgfVxyXG5cclxuQGZ1bmN0aW9uIGNvbHVtbi1wYWRkaW5nKCAkY29udGV4dDogJGJwLXhsLXh4bCApIHtcclxuICBAcmV0dXJuIHBlcmNlbnRhZ2UoICRndXR0ZXItd2lkdGggLyAkY29udGV4dCApO1xyXG59XHJcblxyXG4lY29sdW1uLXBhZGRpbmcgeyBwYWRkaW5nOiBjb2x1bW4tcGFkZGluZygpOyB9XHJcblxyXG4lY29sdW1uLWd1dHRlciB7XHJcbiAgcGFkZGluZy1sZWZ0OiBjb2x1bW4tcGFkZGluZygpIC8gMjtcclxuICBwYWRkaW5nLXJpZ2h0OiBjb2x1bW4tcGFkZGluZygpIC8gMjtcclxufVxyXG5cclxuJWJsb2NrLWVsZW1lbnQtbWFyZ2luIHsgQGluY2x1ZGUgcmVtKCBtYXJnaW4tYm90dG9tLCAyMHB4ICk7IH1cclxuXHJcbi5yb3cge1xyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1tLi4uICkgeyBtYXJnaW46IDAgLTIwcHg7IH1cclxufVxyXG5cclxuLmltZy1mbHVpZCB7IHdpZHRoOiAxMDAlOyB9XHJcblxyXG4ucHQtMSB7IHBhZGRpbmctdG9wOiAxMHB4ICFpbXBvcnRhbnQ7IH1cclxuLnB0LTIgeyBwYWRkaW5nLXRvcDogMjBweCAhaW1wb3J0YW50OyB9XHJcbi5wdC0zIHsgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDsgfVxyXG4ucHQtNCB7IHBhZGRpbmctdG9wOiA0MHB4ICFpbXBvcnRhbnQ7IH1cclxuLnB0LTUgeyBwYWRkaW5nLXRvcDogNTBweCAhaW1wb3J0YW50OyB9XHJcbi5wdC01IHsgcGFkZGluZy10b3A6IDUwcHggIWltcG9ydGFudDsgfVxyXG4ucHQtNiB7IHBhZGRpbmctdG9wOiA2MHB4ICFpbXBvcnRhbnQ7IH1cclxuLnB0LTcgeyBwYWRkaW5nLXRvcDogNzBweCAhaW1wb3J0YW50OyB9XHJcbi5wdC04IHsgcGFkZGluZy10b3A6IDgwcHggIWltcG9ydGFudDsgfVxyXG4ucHQtOSB7IHBhZGRpbmctdG9wOiA5MHB4ICFpbXBvcnRhbnQ7IH1cclxuXHJcbi5wYi0xIHsgcGFkZGluZy1ib3R0b206IDEwcHggIWltcG9ydGFudDsgfVxyXG4ucGItMiB7IHBhZGRpbmctYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7IH1cclxuLnBiLTMgeyBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XHJcbi5wYi00IHsgcGFkZGluZy1ib3R0b206IDQwcHggIWltcG9ydGFudDsgfVxyXG4ucGItNSB7IHBhZGRpbmctYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7IH1cclxuLnBiLTUgeyBwYWRkaW5nLWJvdHRvbTogNTBweCAhaW1wb3J0YW50OyB9XHJcbi5wYi02IHsgcGFkZGluZy1ib3R0b206IDYwcHggIWltcG9ydGFudDsgfVxyXG4ucGItNyB7IHBhZGRpbmctYm90dG9tOiA3MHB4ICFpbXBvcnRhbnQ7IH1cclxuLnBiLTggeyBwYWRkaW5nLWJvdHRvbTogODBweCAhaW1wb3J0YW50OyB9XHJcbi5wYi05IHsgcGFkZGluZy1ib3R0b206IDkwcHggIWltcG9ydGFudDsgfVxyXG5cclxuLnB0LWxnLTkge1xyXG4gIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkgeyBwYWRkaW5nLXRvcDogOTBweCAhaW1wb3J0YW50OyB9XHJcbn0iLCIvLyByZW0gU3VwcG9ydFxuLy8gPT09PT09PT09PT1cblxuLy8gcmVtXG4vLyAtLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBvdXRwdXQgZGlyZWN0bHkuXG4vLyAtICRwcm9wICA6IDxjc3MgcHJvcGVydHk+XG4vLyAtICR2YWwgICA6IDxjc3MgdmFsdWU+XG5AbWl4aW4gc3VzeS1yZW0oXG4gICRwcm9wLFxuICAkdmFsXG4pIHtcbiAgJF9yZXFzOiAoXG4gICAgdmFyaWFibGU6IHJoeXRobS11bml0IHJlbS13aXRoLXB4LWZhbGxiYWNrLFxuICAgIG1peGluOiByZW0sXG4gICk7XG4gIEBpZiBzdXN5LXN1cHBvcnQocmVtLCAkX3JlcXMsICR3YXJuOiBmYWxzZSkgYW5kICRyaHl0aG0tdW5pdCA9PSByZW0ge1xuICAgIEBpbmNsdWRlIHJlbSgkcHJvcCwgJHZhbCk7XG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3B9OiAkdmFsO1xuICB9XG59XG4iLCIvLyBDb250YWluZXIgU3ludGF4XG4vLyA9PT09PT09PT09PT09PT09XG5cbi8vIENvbnRhaW5lciBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2V0IGEgY29udGFpbmVyIGVsZW1lbnRcbi8vIC0gWyRsYXlvdXRdICA6IDxzZXR0aW5ncz5cbkBtaXhpbiBjb250YWluZXIoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgICAgOiAkbGF5b3V0O1xuICAkbGF5b3V0ICAgICA6IHBhcnNlLWdyaWQoJGxheW91dCk7XG5cbiAgJF93aWR0aCAgICAgOiBnZXQtY29udGFpbmVyLXdpZHRoKCRsYXlvdXQpO1xuICAkX2p1c3RpZnkgICA6IHBhcnNlLWNvbnRhaW5lci1wb3NpdGlvbihzdXN5LWdldChjb250YWluZXItcG9zaXRpb24sICRsYXlvdXQpKTtcbiAgJF9wcm9wZXJ0eSAgOiBpZihzdXN5LWdldChtYXRoLCAkbGF5b3V0KSA9PSBzdGF0aWMsIHdpZHRoLCBtYXgtd2lkdGgpO1xuXG4gICRfYm94ICAgICAgIDogc3VzeS1nZXQoYm94LXNpemluZywgJGxheW91dCk7XG5cbiAgQGlmICRfYm94IHtcbiAgICBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6ICRfYm94KSk7XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoY29udGFpbmVyLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIGZsb2F0LWNvbnRhaW5lcigkX3dpZHRoLCAkX2p1c3RpZnksICRfcHJvcGVydHkpO1xuICBAaW5jbHVkZSBzaG93LWdyaWQoJGxheW91dCk7XG59XG5cbi8vIENvbnRhaW5lciBbZnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGNvbnRhaW5lciB3aWR0aFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0OiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICBAcmV0dXJuIGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG59XG5cbi8vIEdldCBDb250YWluZXIgV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSB0aGUgY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XTogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGdldC1jb250YWluZXItd2lkdGgoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgJGxheW91dCAgICAgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcbiAgJF93aWR0aCAgICAgICAgIDogc3VzeS1nZXQoY29udGFpbmVyLCAkbGF5b3V0KTtcbiAgJF9jb2x1bW4td2lkdGggIDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkbGF5b3V0KTtcbiAgJF9tYXRoICAgICAgICAgIDogc3VzeS1nZXQobWF0aCwgJGxheW91dCk7XG5cbiAgQGlmIG5vdCgkX3dpZHRoKSBvciAkX3dpZHRoID09IGF1dG8ge1xuICAgIEBpZiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKSB7XG4gICAgICAkX2NvbHVtbnMgICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRsYXlvdXQpO1xuICAgICAgJF9ndXR0ZXJzICAgOiBzdXN5LWdldChndXR0ZXJzLCAkbGF5b3V0KTtcbiAgICAgICRfc3ByZWFkICAgIDogaWYoaXMtc3BsaXQoJGxheW91dCksIHdpZGUsIG5hcnJvdyk7XG4gICAgICAkX3dpZHRoICAgICA6IHN1c3ktc3VtKCRfY29sdW1ucywgJF9ndXR0ZXJzLCAkX3NwcmVhZCkgKiAkX2NvbHVtbi13aWR0aDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRfd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkX3dpZHRoO1xufVxuXG4vLyBQYXJzZSBDb250YWluZXIgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFyc2UgdGhlICRjb250YWluZXItcG9zaXRpb24gaW50byBtYXJnaW4gdmFsdWVzLlxuLy8gLSBbJGp1c3RpZnldICAgOiBsZWZ0IHwgY2VudGVyIHwgcmlnaHQgfCA8bGVuZ3RoPiBbPGxlbmd0aD5dXG5AZnVuY3Rpb24gcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKFxuICAkanVzdGlmeTogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgY29udGFpbmVyLXBvc2l0aW9uKVxuKSB7XG4gICRfcmV0dXJuOiBpZigkanVzdGlmeSA9PSBsZWZ0LCAwLCBhdXRvKSBpZigkanVzdGlmeSA9PSByaWdodCwgMCwgYXV0byk7XG5cbiAgQGlmIG5vdChpbmRleChsZWZ0IHJpZ2h0IGNlbnRlciwgJGp1c3RpZnkpKSB7XG4gICAgJF9yZXR1cm46IG50aCgkanVzdGlmeSwgMSk7XG4gICAgJF9yZXR1cm46ICRfcmV0dXJuIGlmKGxlbmd0aCgkanVzdGlmeSkgPiAxLCBudGgoJGp1c3RpZnksIDIpLCAkX3JldHVybik7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuIiwiLy8gU3VzeSBGYWxsYmFjayBDbGVhcmZpeFxuLy8gPT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENsZWFyZml4XG4vLyAtLS0tLS0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIHByb3ZpZGUgYSBzaW1wbGUgZmFsbGJhY2suXG5AbWl4aW4gc3VzeS1jbGVhcmZpeCB7XG4gIEBpZiBzdXN5LXN1cHBvcnQoY2xlYXJmaXgsIChtaXhpbjogY2xlYXJmaXgpKSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH0gQGVsc2Uge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxufVxuIiwiLyogdjEuMC42ICovXHJcbi8qIENvcmUgUlMgQ1NTIGZpbGUuIDk1JSBvZiB0aW1lIHlvdSBzaG91bGRuJ3QgY2hhbmdlIGFueXRoaW5nIGhlcmUuICovXHJcbi5yb3lhbFNsaWRlciB7XHJcblx0d2lkdGg6IDYwMHB4O1xyXG5cdGhlaWdodDogNDAwcHg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpcmVjdGlvbjogbHRyO1xyXG59XHJcbi5yb3lhbFNsaWRlciA+ICoge1xyXG5cdGZsb2F0OiBsZWZ0O1xyXG59XHJcblxyXG4ucnNXZWJraXQzZCAucnNTbGlkZSxcclxuLnJzV2Via2l0M2QgLnJzQ29udGFpbmVyLFxyXG4ucnNXZWJraXQzZCAucnNUaHVtYnMsXHJcbi5yc1dlYmtpdDNkIC5yc1ByZWxvYWRlcixcclxuLnJzV2Via2l0M2QgaW1nLFxyXG4ucnNXZWJraXQzZCAucnNPdmVyZmxvdyxcclxuLnJzV2Via2l0M2QgLnJzQnRuQ2VudGVyZXIsXHJcbi5yc1dlYmtpdDNkIC5yc0Fic29sdXRlRWwsXHJcbi5yc1dlYmtpdDNkIC5yc0FCbG9jayxcclxuLnJzV2Via2l0M2QgLnJzTGluayB7XHJcblx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuLnJzRmFkZS5yc1dlYmtpdDNkIC5yc1NsaWRlLFxyXG4ucnNGYWRlLnJzV2Via2l0M2QgaW1nLFxyXG4ucnNGYWRlLnJzV2Via2l0M2QgLnJzQ29udGFpbmVyIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG59XHJcbi5yc092ZXJmbG93IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7XHJcbn1cclxuLnJzVmlzaWJsZU5lYXJieVdyYXAge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTtcclxufVxyXG4ucnNWaXNpYmxlTmVhcmJ5V3JhcCAucnNPdmVyZmxvdyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cclxufVxyXG4ucnNDb250YWluZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7XHJcbn1cclxuXHJcbi5yc0Fycm93LFxyXG4ucnNUaHVtYnNBcnJvdyB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ucnNUaHVtYiB7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5cclxuLnJzQXJyb3csXHJcbi5yc05hdixcclxuLnJzVGh1bWJzQXJyb3cge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgMC4zcyBsaW5lYXI7XHJcblx0LW1vei10cmFuc2l0aW9uOm9wYWNpdHkgMC4zcyBsaW5lYXI7XHJcblx0LW8tdHJhbnNpdGlvbjpvcGFjaXR5IDAuM3MgbGluZWFyO1xyXG5cdHRyYW5zaXRpb246b3BhY2l0eSAwLjNzIGxpbmVhcjtcclxufVxyXG4ucnNIaWRkZW4ge1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjNzLG9wYWNpdHkgMC4zcyBsaW5lYXI7XHJcblx0LW1vei10cmFuc2l0aW9uOnZpc2liaWxpdHkgMHMgbGluZWFyIDAuM3Msb3BhY2l0eSAwLjNzIGxpbmVhcjtcclxuXHQtby10cmFuc2l0aW9uOnZpc2liaWxpdHkgMHMgbGluZWFyIDAuM3Msb3BhY2l0eSAwLjNzIGxpbmVhcjtcclxuXHR0cmFuc2l0aW9uOnZpc2liaWxpdHkgMHMgbGluZWFyIDAuM3Msb3BhY2l0eSAwLjNzIGxpbmVhcjtcclxufVxyXG5cclxuXHJcbi5yc0dDYXB0aW9uIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRmbG9hdDogbGVmdDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEZ1bGxzY3JlZW4gb3B0aW9ucywgdmVyeSBpbXBvcnRhbnQgXl4gKi9cclxuLnJveWFsU2xpZGVyLnJzRnVsbHNjcmVlbiB7XHJcblx0cG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XHJcblx0aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcblx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxuXHRtYXJnaW46IDAgIWltcG9ydGFudDtcclxuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcblx0ei1pbmRleDogMjE0NzQ4MzY0NyAhaW1wb3J0YW50O1xyXG5cdHRvcDogMCAhaW1wb3J0YW50O1xyXG5cdGxlZnQ6IDAgIWltcG9ydGFudDtcclxuXHRib3R0b206IDAgIWltcG9ydGFudDtcclxuXHRyaWdodDogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucm95YWxTbGlkZXIgLnJzU2xpZGUucnNGYWtlUHJlbG9hZGVyIHtcclxuXHRvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiAwcztcclxuXHQtbW96LXRyYW5zaXRpb246IDBzO1xyXG5cdC1vLXRyYW5zaXRpb246ICAwcztcclxuXHR0cmFuc2l0aW9uOiAgMHM7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnJzU2xpZGUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucm95YWxTbGlkZXIucnNBdXRvSGVpZ2h0LFxyXG4ucnNBdXRvSGVpZ2h0IC5yc1NsaWRlIHtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5yc0NvbnRlbnQge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5yc1ByZWxvYWRlciB7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0ei1pbmRleDogMDtcclxufVxyXG5cclxuLnJzTmF2IHtcclxuXHQtbW96LXVzZXItc2VsZWN0OiAtbW96LW5vbmU7XHJcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG4ucnNOYXZJdGVtIHtcclxuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwLjI1KTtcclxufVxyXG5cclxuLnJzVGh1bWJzIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0ei1pbmRleDogMjtcclxufVxyXG4ucnNUYWJzIHtcclxuXHRmbG9hdDogbGVmdDtcclxuXHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuLnJzVGFicyxcclxuLnJzVGh1bWJzIHtcclxuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTtcclxuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTtcclxufVxyXG5cclxuXHJcbi5yc1ZpZGVvQ29udGFpbmVyIHtcclxuXHR3aWR0aDogYXV0bztcclxuXHRoZWlnaHQ6IGF1dG87XHJcblx0bGluZS1oZWlnaHQ6IDA7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5yc1ZpZGVvRnJhbWVIb2xkZXIge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRiYWNrZ3JvdW5kOiAjMTQxNDE0O1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiAuM3M7XHJcbn1cclxuLnJzVmlkZW9GcmFtZUhvbGRlci5yc1ZpZGVvQWN0aXZlIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcbi5yc1ZpZGVvQ29udGFpbmVyIGlmcmFtZSxcclxuLnJzVmlkZW9Db250YWluZXIgdmlkZW8sXHJcbi5yc1ZpZGVvQ29udGFpbmVyIGVtYmVkLFxyXG4ucnNWaWRlb0NvbnRhaW5lciAucnNWaWRlb09iaiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHotaW5kZXg6IDUwO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxufVxyXG4vKiBpb3MgY29udHJvbHMgb3ZlciB2aWRlbyBidWcsIHNoaWZ0aW5nIHZpZGVvICovXHJcbi5yc1ZpZGVvQ29udGFpbmVyLnJzSU9TVmlkZW8gaWZyYW1lLFxyXG4ucnNWaWRlb0NvbnRhaW5lci5yc0lPU1ZpZGVvIHZpZGVvLFxyXG4ucnNWaWRlb0NvbnRhaW5lci5yc0lPU1ZpZGVvIGVtYmVkIHtcclxuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0cGFkZGluZy1yaWdodDogNDRweDtcclxufVxyXG5cclxuLnJzQUJsb2NrIHtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ei1pbmRleDogMTU7XHJcblxyXG59XHJcblxyXG5pbWcucnNJbWcge1xyXG5cdG1heC13aWR0aDogbm9uZTtcclxufVxyXG5cclxuLmdyYWItY3Vyc29yIHtcclxuXHRjdXJzb3I6dXJsKGdyYWIucG5nKSA4IDgsIG1vdmU7XHJcbn1cclxuXHJcbi5ncmFiYmluZy1jdXJzb3J7XHJcblx0Y3Vyc29yOnVybChncmFiYmluZy5wbmcpIDggOCwgbW92ZTtcclxufVxyXG5cclxuLnJzTm9EcmFnIHtcclxuXHRjdXJzb3I6IGF1dG87XHJcbn1cclxuXHJcbi5yc0xpbmsge1xyXG5cdGxlZnQ6MDtcclxuXHR0b3A6MDtcclxuXHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHR3aWR0aDoxMDAlO1xyXG5cdGhlaWdodDoxMDAlO1xyXG5cdGRpc3BsYXk6YmxvY2s7XHJcblx0ei1pbmRleDogMjA7XHJcblx0YmFja2dyb3VuZDogdXJsKGJsYW5rLmdpZik7XHJcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbipcclxuKiAgUm95YWxTbGlkZXIgVW5pdmVyc2FsIFNraW5cclxuKlxyXG4qICAgIDEuIEFycm93c1xyXG4qICAgIDIuIEJ1bGxldHNcclxuKiAgICAzLiBUaHVtYm5haWxzXHJcbiogICAgNC4gVGFic1xyXG4qICAgIDUuIEZ1bGxzY3JlZW4gYnV0dG9uXHJcbiogICAgNi4gUGxheS9jbG9zZSB2aWRlbyBidXR0b25cclxuKiAgICA3LiBQcmVsb2FkZXJcclxuKiAgICA4LiBDYXB0aW9uXHJcbipcclxuKiAgU3ByaXRlOiAnLi4vaW1hZ2VzL3JveWFsLXNsaWRlci11bmktdGhlbWUucG5nJ1xyXG4qICBGZWVsIGZyZWUgdG8gZWRpdCBhbnl0aGluZ1xyXG4qICBJZiB5b3UgZG9uJ3Qgc29tZSBwYXJ0IC0ganVzdCBkZWxldGUgaXRcclxuKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG5cclxuLyogQmFja2dyb3VuZCAqL1xyXG4ucnNVbmksXHJcbi5yc1VuaSAucnNPdmVyZmxvdyxcclxuLnJzVW5pIC5yc1NsaWRlLFxyXG4ucnNVbmkgLnJzVmlkZW9GcmFtZUhvbGRlcixcclxuLnJzVW5pIC5yc1RodW1icyB7XHJcblx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRjb2xvcjogI0ZGRjtcclxufVxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKipcclxuKlxyXG4qICAxLiBBcnJvd3NcclxuKlxyXG4qKioqKioqKioqKioqKioqL1xyXG5cclxuLnJzVW5pIC5yc0Fycm93IHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDYwcHg7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcbi5yc1VuaS5yc1ZlciAucnNBcnJvdyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA2MHB4O1xyXG5cclxufVxyXG4ucnNVbmkucnNWZXIgLnJzQXJyb3dMZWZ0IHsgdG9wOiAwOyBsZWZ0OiAwOyB9XHJcbi5yc1VuaS5yc1ZlciAucnNBcnJvd1JpZ2h0IHsgYm90dG9tOiAwOyAgbGVmdDogMDsgfVxyXG5cclxuLnJzVW5pLnJzSG9yIC5yc0Fycm93TGVmdCB7IGxlZnQ6IDA7IHRvcDogMDsgfVxyXG4ucnNVbmkucnNIb3IgLnJzQXJyb3dSaWdodCB7IHJpZ2h0OiAwOyB0b3A6MDsgfVxyXG5cclxuLnJzVW5pIC5yc0Fycm93SWNuIHtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0dG9wOiA1MCU7XHJcblx0bGVmdDogNTAlO1xyXG5cdG1hcmdpbi10b3A6LTE2cHg7XHJcblx0bWFyZ2luLWxlZnQ6IC0xNnB4O1xyXG5cclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL3JveWFsLXNsaWRlci11bmktdGhlbWUucG5nJyk7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxufVxyXG4ucnNVbmkgLnJzQXJyb3c6aG92ZXIgLnJzQXJyb3dJY24ge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5yc1VuaS5yc0hvciAucnNBcnJvd0xlZnQgLnJzQXJyb3dJY24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMzJweDsgfVxyXG4ucnNVbmkucnNIb3IgLnJzQXJyb3dSaWdodCAucnNBcnJvd0ljbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC02NHB4OyB9XHJcblxyXG4ucnNVbmkucnNWZXIgLnJzQXJyb3dMZWZ0IC5yc0Fycm93SWNuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTMycHg7IH1cclxuLnJzVW5pLnJzVmVyIC5yc0Fycm93UmlnaHQgLnJzQXJyb3dJY24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtNjRweDsgfVxyXG5cclxuLnJzVW5pIC5yc0Fycm93RGlzYWJsZWQgLnJzQXJyb3dJY24geyBvcGFjaXR5OiAuMSAhaW1wb3J0YW50OyBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MjApOyAgKmRpc3BsYXk6IG5vbmU7IH1cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqXHJcbipcclxuKiAgMi4gQnVsbGV0c1xyXG4qXHJcbioqKioqKioqKioqKioqKiovXHJcblxyXG4ucnNVbmkgLnJzQnVsbGV0cyB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IDI7XHJcblx0cGFkZGluZy10b3A6IDRweDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IGF1dG87XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblxyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRsaW5lLWhlaWdodDogNXB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuLnJzVW5pIC5yc0J1bGxldCB7XHJcblx0d2lkdGg6IDhweDtcclxuXHRoZWlnaHQ6IDhweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0KmRpc3BsYXk6aW5saW5lO1xyXG5cdCp6b29tOjE7XHJcblx0cGFkZGluZzogNXB4O1xyXG59XHJcbi5yc1VuaSAucnNCdWxsZXQgc3BhbiB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IDhweDtcclxuXHRoZWlnaHQ6IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0YmFja2dyb3VuZDogI0JCQjtcclxufVxyXG4ucnNVbmkgLnJzQnVsbGV0LnJzTmF2U2VsZWN0ZWQgc3BhbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogIzM4MzgzODtcclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKipcclxuKlxyXG4qICAzLiBUaHVtYm5haWxzXHJcbipcclxuKioqKioqKioqKioqKioqKi9cclxuXHJcbi5yc1VuaSAucnNUaHVtYnNIb3Ige1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogNzJweDtcclxufVxyXG4ucnNVbmkgLnJzVGh1bWJzVmVyIHtcclxuXHR3aWR0aDogOTZweDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxufVxyXG4ucnNVbmkucnNXaXRoVGh1bWJzSG9yIC5yc1RodW1ic0NvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGhlaWdodDogMTAwJTtcclxufVxyXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0NvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcbi5yc1VuaSAucnNUaHVtYiB7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR3aWR0aDogOTZweDtcclxuXHRoZWlnaHQ6IDcycHg7XHJcbn1cclxuLnJzVW5pIC5yc1RodW1iIGltZyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuLnJzVW5pIC5yc1RodW1iLnJzTmF2U2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQ6ICMzMzM7XHJcbn1cclxuLnJzVW5pIC5yc1RodW1iLnJzTmF2U2VsZWN0ZWQgaW1nIHtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTMwKTtcclxufVxyXG4ucnNVbmkgLnJzVGh1bWIucnNOYXZTZWxlY3RlZCAudGh1bWJJY28ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym9yZGVyOiAycHggc29saWQgI0ZGRjtcclxuXHRib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuOSk7XHJcblx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuXHJcbi5yc1VuaSAucnNUbWIge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKiBUaHVtYm5haWxzIHdpdGggdGV4dCAqL1xyXG4ucnNVbmkgLnJzVG1iIGg1IHtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bGluZS1oZWlnaHQ6IDIwcHg7XHJcblx0Y29sb3I6ICNGRkY7XHJcbn1cclxuLnJzVW5pIC5yc1RtYiBzcGFuIHtcclxuXHRjb2xvcjogI0RERDtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRmb250LXNpemU6IDEzcHg7XHJcblx0bGluZS1oZWlnaHQ6IDE4cHg7XHJcbn1cclxuXHJcblxyXG5cclxuLyogVGh1bWJuYWlscyBhcnJvdyBpY29ucyAqL1xyXG4ucnNVbmkgLnJzVGh1bWJzQXJyb3cge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMjBweDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHotaW5kZXg6IDE7XHJcbn1cclxuLnJzVW5pIC5yc1RodW1ic0Fycm93OmhvdmVyIHtcclxuXHJcbn1cclxuLnJzVW5pLnJzV2l0aFRodW1ic1ZlciAucnNUaHVtYnNBcnJvdyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG59XHJcbi5yc1VuaS5yc1dpdGhUaHVtYnNWZXIgLnJzVGh1bWJzQXJyb3dMZWZ0IHsgdG9wOiAwOyBsZWZ0OiAwOyB9XHJcbi5yc1VuaS5yc1dpdGhUaHVtYnNWZXIgLnJzVGh1bWJzQXJyb3dSaWdodCB7IGJvdHRvbTogMDsgIGxlZnQ6IDA7IH1cclxuXHJcbi5yc1VuaS5yc1dpdGhUaHVtYnNIb3IgLnJzVGh1bWJzQXJyb3dMZWZ0IHsgbGVmdDogMDsgdG9wOiAwOyB9XHJcbi5yc1VuaS5yc1dpdGhUaHVtYnNIb3IgLnJzVGh1bWJzQXJyb3dSaWdodCB7IHJpZ2h0OiAwOyB0b3A6MDsgfVxyXG5cclxuLnJzVW5pIC5yc1RodW1ic0Fycm93SWNuIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcblx0dG9wOiA1MCU7XHJcblx0bGVmdDogNTAlO1xyXG5cdG1hcmdpbi10b3A6LThweDtcclxuXHRtYXJnaW4tbGVmdDogLThweDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJhY2tncm91bmQ6IHVybCgnLi4vc3R5bGVzaGVldHMvcm95YWxzbGlkZXIvcnMtZGVmYXVsdC1pbnZlcnRlZC5wbmcnKSB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnJzVW5pLnJzV2l0aFRodW1ic0hvciAucnNUaHVtYnNBcnJvd0xlZnQgLnJzVGh1bWJzQXJyb3dJY24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTMycHg7IH1cclxuLnJzVW5pLnJzV2l0aFRodW1ic0hvciAucnNUaHVtYnNBcnJvd1JpZ2h0IC5yc1RodW1ic0Fycm93SWNuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC00OHB4OyB9XHJcblxyXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0Fycm93TGVmdCAucnNUaHVtYnNBcnJvd0ljbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMzJweDsgfVxyXG4ucnNVbmkucnNXaXRoVGh1bWJzVmVyIC5yc1RodW1ic0Fycm93UmlnaHQgLnJzVGh1bWJzQXJyb3dJY24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTQ4cHg7IH1cclxuXHJcbi5yc1VuaSAucnNUaHVtYnNBcnJvd0Rpc2FibGVkIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcblxyXG4vKiBUaHVtYm5haWxzIHJlc2l6aW5nIG9uIHNtYWxsZXIgc2NyZWVucyAqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwcHgpIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG5cdC5yc1VuaSAucnNUaHVtYiB7XHJcblx0XHR3aWR0aDogNTlweDtcclxuXHRcdGhlaWdodDogNDRweDtcclxuXHR9XHJcblx0LnJzVW5pIC5yc1RodW1ic0hvciB7XHJcblx0XHRoZWlnaHQ6IDQ0cHg7XHJcblx0fVxyXG5cdC5yc1VuaSAucnNUaHVtYnNWZXIge1xyXG5cdFx0d2lkdGg6IDU5cHg7XHJcblx0fVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqXHJcbipcclxuKiAgNC4gVGFic1xyXG4qXHJcbioqKioqKioqKioqKioqKiovXHJcblxyXG4ucnNVbmkgLnJzVGFicyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47IHBhZGRpbmctdG9wOiAxMnB4OyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLnJzVW5pIC5yc1RhYiB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdGNvbG9yOiAjMzMzO1xyXG5cdHBhZGRpbmc6IDVweCAxM3B4IDZweDtcclxuXHRtaW4td2lkdGg6IDcycHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI0Q5RDlERDtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG5cdGJhY2tncm91bmQ6ICNGRkY7XHJcblx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG5cdCpkaXNwbGF5OmlubGluZTtcclxuXHQqem9vbToxO1xyXG5cdCpib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDlkOWQ5O1xyXG5cclxufVxyXG4ucnNVbmkgLnJzVGFiOmZpcnN0LWNoaWxkIHtcclxuXHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNnB4O1xyXG5cdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE2cHg7XHJcbn1cclxuLnJzVW5pIC5yc1RhYjpsYXN0LWNoaWxkIHtcclxuXHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTZweDtcclxuXHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTZweDtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRDlEOUREO1xyXG59XHJcbi5yc1VuaSAucnNUYWI6YWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xyXG59XHJcbi5yc1VuaSAucnNUYWIucnNOYXZTZWxlY3RlZCB7XHJcblx0Y29sb3I6ICNGRkY7XHJcblx0YmFja2dyb3VuZDogIzM4MzgzODtcclxuXHRib3JkZXItY29sb3I6ICMzODM4Mzg7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqXHJcbipcclxuKiAgNS4gRnVsbHNjcmVlbiBidXR0b25cclxuKlxyXG4qKioqKioqKioqKioqKioqL1xyXG5cclxuLnJzVW5pIC5yc0Z1bGxzY3JlZW5CdG4ge1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHRvcDogMDtcclxuXHR3aWR0aDogNDRweDtcclxuXHRoZWlnaHQ6IDQ0cHg7XHJcblx0ei1pbmRleDogMjtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cclxufVxyXG4ucnNVbmkgLnJzRnVsbHNjcmVlbkljbiB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luOiA2cHg7XHJcblx0d2lkdGg6IDMycHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cclxuXHRiYWNrZ3JvdW5kOiB1cmwoJy4uL3N0eWxlc2hlZXRzL3JveWFsc2xpZGVyL3JzLWRlZmF1bHQtaW52ZXJ0ZWQucG5nJykgMCAwIHRyYW5zcGFyZW50O1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblxyXG59XHJcbi5yc1VuaSAucnNGdWxsc2NyZWVuQnRuOmhvdmVyIC5yc0Z1bGxzY3JlZW5JY24ge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuLnJzVW5pLnJzRnVsbHNjcmVlbiAucnNGdWxsc2NyZWVuSWNuIHtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAwO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKlxyXG4qXHJcbiogIDYuIFBsYXkvY2xvc2UgdmlkZW8gYnV0dG9uXHJcbipcclxuKioqKioqKioqKioqKioqKi9cclxuXHJcbi5yc1VuaSAucnNQbGF5QnRuIHtcclxuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG5cdHdpZHRoOjY0cHg7XHJcblx0aGVpZ2h0OjY0cHg7XHJcblx0bWFyZ2luLWxlZnQ6LTMycHg7XHJcblx0bWFyZ2luLXRvcDotMzJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuLnJzVW5pIC5yc1BsYXlCdG5JY29uIHtcclxuXHR3aWR0aDo2NHB4O1xyXG5cdGRpc3BsYXk6YmxvY2s7XHJcblx0aGVpZ2h0OjY0cHg7XHJcblx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cclxuXHQtd2Via2l0LXRyYW5zaXRpb246IC4zcztcclxuXHQtbW96LXRyYW5zaXRpb246IC4zcztcclxuXHR0cmFuc2l0aW9uOiAuM3M7XHJcblxyXG5cdGJhY2tncm91bmQ6dXJsKCcuLi9zdHlsZXNoZWV0cy9yb3lhbHNsaWRlci9ycy1kZWZhdWx0LWludmVydGVkLnBuZycpIG5vLXJlcGVhdCAwIC0zMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICMzODM4Mzg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcclxuXHQqYmFja2dyb3VuZC1jb2xvcjogIzM4MzgzODtcclxufVxyXG4ucnNVbmkgLnJzUGxheUJ0bjpob3ZlciAucnNQbGF5QnRuSWNvbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xyXG59XHJcbi5yc1VuaSAucnNCdG5DZW50ZXJlciB7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0bGVmdDo1MCU7XHJcblx0dG9wOjUwJTtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcbn1cclxuLnJzVW5pIC5yc0Nsb3NlVmlkZW9CdG4ge1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHRvcDogMDtcclxuXHR3aWR0aDogNDRweDtcclxuXHRoZWlnaHQ6IDQ0cHg7XHJcbiAgei1pbmRleDogNTA7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuXHJcbn1cclxuLnJzVW5pIC5yc0Nsb3NlVmlkZW9CdG4ucnNpT1NCdG4ge1xyXG5cdHRvcDogLTM4cHg7XHJcblx0cmlnaHQ6IC02cHg7XHJcbn1cclxuXHJcbi5yc1VuaSAucnNDbG9zZVZpZGVvSWNuIHtcclxuXHRtYXJnaW46IDZweDtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0YmFja2dyb3VuZDogdXJsKCcuLi9zdHlsZXNoZWV0cy9yb3lhbHNsaWRlci9ycy1kZWZhdWx0LWludmVydGVkLnBuZycpIC02NHB4IDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogIzM4MzgzODtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xyXG5cdCpiYWNrZ3JvdW5kLWNvbG9yOiAjMzgzODM4O1xyXG59XHJcbi5yc1VuaSAucnNDbG9zZVZpZGVvSWNuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcbn1cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKlxyXG4qXHJcbiogIDcuIFByZWxvYWRlclxyXG4qXHJcbioqKioqKioqKioqKioqKiovXHJcblxyXG4ucnNVbmkgLnJzUHJlbG9hZGVyIHtcclxuXHR3aWR0aDoyMHB4O1xyXG5cdGhlaWdodDoyMHB4O1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9zdHlsZXNoZWV0cy9yb3lhbHNsaWRlci9wcmVsb2FkZXItd2hpdGUuZ2lmJyk7XHJcblxyXG5cdGxlZnQ6NTAlO1xyXG5cdHRvcDo1MCU7XHJcblx0bWFyZ2luLWxlZnQ6LTEwcHg7XHJcblx0bWFyZ2luLXRvcDotMTBweDtcclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKlxyXG4qXHJcbiogIDguIEdsb2JhbCBjYXB0aW9uXHJcbipcclxuKioqKioqKioqKioqKioqKi9cclxuLnJzVW5pIC5yc0dDYXB0aW9uIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ZmxvYXQ6IG5vbmU7XHJcblx0Ym90dG9tOiA2cHg7XHJcblx0bGVmdDogNnB4O1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG5cdGJhY2tncm91bmQ6ICMyMjI7XHJcblxyXG5cdGNvbG9yOiAjRkZGO1xyXG5cdHBhZGRpbmc6IDJweCA4cHg7XHJcblx0d2lkdGg6IGF1dG87XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxufSIsIkBpbXBvcnQgXCJzaGFyZWRcIjtcblxuLy8gQ1NTIFRyYW5zaXRpb25zXG4vLyBDdXJyZW50bHkgb25seSB3b3JrcyBpbiBXZWJraXQuXG4vL1xuLy8gKiBleHBlY3RlZCBpbiBDU1MzLCBGaXJlRm94IDMuNi83IGFuZCBPcGVyYSBQcmVzdG8gMi4zXG4vLyAqIFdlJ2xsIGJlIHByZXBhcmVkLlxuLy9cbi8vIEluY2x1ZGluZyB0aGlzIHN1Ym1vZHVsZSBzZXRzIGZvbGxvd2luZyBkZWZhdWx0cyBmb3IgdGhlIG1peGluczpcbi8vXG4vLyAgICAgJGRlZmF1bHQtdHJhbnNpdGlvbi1wcm9wZXJ0eSA6IGFsbFxuLy8gICAgICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24gOiAxc1xuLy8gICAgICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb24gOiBmYWxzZVxuLy8gICAgICRkZWZhdWx0LXRyYW5zaXRpb24tZGVsYXkgICAgOiBmYWxzZVxuLy9cbi8vIE92ZXJyaWRlIHRoZW0gaWYgeW91IGxpa2UuIFRpbWluZy1mdW5jdGlvbiBhbmQgZGVsYXkgYXJlIHNldCB0byBmYWxzZSBmb3IgYnJvd3NlciBkZWZhdWx0cyAoZWFzZSwgMHMpLlxuXG4kZGVmYXVsdC10cmFuc2l0aW9uLXByb3BlcnR5OiBhbGwgIWRlZmF1bHQ7XG5cbiRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb246IDFzICFkZWZhdWx0O1xuXG4kZGVmYXVsdC10cmFuc2l0aW9uLWZ1bmN0aW9uOiBmYWxzZSAhZGVmYXVsdDtcblxuJGRlZmF1bHQtdHJhbnNpdGlvbi1kZWxheTogZmFsc2UgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uYWJsZS1wcmVmaXhlZC12YWx1ZXM6IHRyYW5zZm9ybSwgdHJhbnNmb3JtLW9yaWdpbiAhZGVmYXVsdDtcblxuLy8gT25lIG9yIG1vcmUgcHJvcGVydGllcyB0byB0cmFuc2l0aW9uXG4vL1xuLy8gKiBmb3IgbXVsdGlwbGUsIHVzZSBhIGNvbW1hLWRlbGltaXRlZCBsaXN0XG4vLyAqIGFsc28gYWNjZXB0cyBcImFsbFwiIG9yIFwibm9uZVwiXG5cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCRwcm9wZXJ0eS0xOiAkZGVmYXVsdC10cmFuc2l0aW9uLXByb3BlcnR5LFxuICAkcHJvcGVydHktMiA6IGZhbHNlLFxuICAkcHJvcGVydHktMyA6IGZhbHNlLFxuICAkcHJvcGVydHktNCA6IGZhbHNlLFxuICAkcHJvcGVydHktNSA6IGZhbHNlLFxuICAkcHJvcGVydHktNiA6IGZhbHNlLFxuICAkcHJvcGVydHktNyA6IGZhbHNlLFxuICAkcHJvcGVydHktOCA6IGZhbHNlLFxuICAkcHJvcGVydHktOSA6IGZhbHNlLFxuICAkcHJvcGVydHktMTA6IGZhbHNlXG4pIHtcbiAgQGlmIHR5cGUtb2YoJHByb3BlcnR5LTEpID09IHN0cmluZyB7ICRwcm9wZXJ0eS0xOiB1bnF1b3RlKCRwcm9wZXJ0eS0xKTsgfVxuICAkcHJvcGVydGllczogY29tcGFjdCgkcHJvcGVydHktMSwgJHByb3BlcnR5LTIsICRwcm9wZXJ0eS0zLCAkcHJvcGVydHktNCwgJHByb3BlcnR5LTUsICRwcm9wZXJ0eS02LCAkcHJvcGVydHktNywgJHByb3BlcnR5LTgsICRwcm9wZXJ0eS05LCAkcHJvcGVydHktMTApO1xuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQgICAgeyAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHkgOiBwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigtd2Via2l0LCAkcHJvcGVydGllcyk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSAgIHsgICAgICAgICAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5IDogcHJlZml4ZWQtZm9yLXRyYW5zaXRpb24oLW1veiwgICAgJHByb3BlcnRpZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhICAgICB7ICAgICAgICAgICAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eSA6IHByZWZpeGVkLWZvci10cmFuc2l0aW9uKC1vLCAgICAgICRwcm9wZXJ0aWVzKTsgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHkgOiAkcHJvcGVydGllcztcbn1cblxuLy8gT25lIG9yIG1vcmUgZHVyYXRpb25zIGluIHNlY29uZHNcbi8vXG4vLyAqIGZvciBtdWx0aXBsZSwgdXNlIGEgY29tbWEtZGVsaW1pdGVkIGxpc3Rcbi8vICogdGhlc2UgZHVyYXRpb25zIHdpbGwgYWZmZWN0IHRoZSBwcm9wZXJ0aWVzIGluIHRoZSBzYW1lIGxpc3QgcG9zaXRpb25cblxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJGR1cmF0aW9uLTE6ICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24sXG4gICRkdXJhdGlvbi0yIDogZmFsc2UsXG4gICRkdXJhdGlvbi0zIDogZmFsc2UsXG4gICRkdXJhdGlvbi00IDogZmFsc2UsXG4gICRkdXJhdGlvbi01IDogZmFsc2UsXG4gICRkdXJhdGlvbi02IDogZmFsc2UsXG4gICRkdXJhdGlvbi03IDogZmFsc2UsXG4gICRkdXJhdGlvbi04IDogZmFsc2UsXG4gICRkdXJhdGlvbi05IDogZmFsc2UsXG4gICRkdXJhdGlvbi0xMDogZmFsc2Vcbikge1xuICBAaWYgdHlwZS1vZigkZHVyYXRpb24tMSkgPT0gc3RyaW5nIHsgJGR1cmF0aW9uLTE6IHVucXVvdGUoJGR1cmF0aW9uLTEpOyB9XG4gICRkdXJhdGlvbnM6IGNvbXBhY3QoJGR1cmF0aW9uLTEsICRkdXJhdGlvbi0yLCAkZHVyYXRpb24tMywgJGR1cmF0aW9uLTQsICRkdXJhdGlvbi01LCAkZHVyYXRpb24tNiwgJGR1cmF0aW9uLTcsICRkdXJhdGlvbi04LCAkZHVyYXRpb24tOSwgJGR1cmF0aW9uLTEwKTtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbnMsXG4gICAgLW1veiwgLXdlYmtpdCwgLW8sIG5vdCgtbXMpLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgKTtcbn1cblxuLy8gT25lIG9yIG1vcmUgdGltaW5nIGZ1bmN0aW9uc1xuLy9cbi8vICogWyBlYXNlIHwgbGluZWFyIHwgZWFzZS1pbiB8IGVhc2Utb3V0IHwgZWFzZS1pbi1vdXQgfCBjdWJpYy1iZXppZXIoeDEsIHkxLCB4MiwgeTIpXVxuLy8gKiBGb3IgbXVsdGlwbGUsIHVzZSBhIGNvbW1hLWRlbGltaXRlZCBsaXN0XG4vLyAqIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIGVmZmVjdCB0aGUgcHJvcGVydGllcyBpbiB0aGUgc2FtZSBsaXN0IHBvc2l0aW9uXG5cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkZnVuY3Rpb24tMTogJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbixcbiAgJGZ1bmN0aW9uLTIgOiBmYWxzZSxcbiAgJGZ1bmN0aW9uLTMgOiBmYWxzZSxcbiAgJGZ1bmN0aW9uLTQgOiBmYWxzZSxcbiAgJGZ1bmN0aW9uLTUgOiBmYWxzZSxcbiAgJGZ1bmN0aW9uLTYgOiBmYWxzZSxcbiAgJGZ1bmN0aW9uLTcgOiBmYWxzZSxcbiAgJGZ1bmN0aW9uLTggOiBmYWxzZSxcbiAgJGZ1bmN0aW9uLTkgOiBmYWxzZSxcbiAgJGZ1bmN0aW9uLTEwOiBmYWxzZVxuKSB7XG4gICRmdW5jdGlvbi0xOiB1bnF1b3RlKCRmdW5jdGlvbi0xKTtcbiAgJGZ1bmN0aW9uczogY29tcGFjdCgkZnVuY3Rpb24tMSwgJGZ1bmN0aW9uLTIsICRmdW5jdGlvbi0zLCAkZnVuY3Rpb24tNCwgJGZ1bmN0aW9uLTUsICRmdW5jdGlvbi02LCAkZnVuY3Rpb24tNywgJGZ1bmN0aW9uLTgsICRmdW5jdGlvbi05LCAkZnVuY3Rpb24tMTApO1xuICBAaW5jbHVkZSBleHBlcmltZW50YWwodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sICRmdW5jdGlvbnMsXG4gICAgLW1veiwgLXdlYmtpdCwgLW8sIG5vdCgtbXMpLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgKTtcbn1cblxuLy8gT25lIG9yIG1vcmUgdHJhbnNpdGlvbi1kZWxheXMgaW4gc2Vjb25kc1xuLy9cbi8vICogZm9yIG11bHRpcGxlLCB1c2UgYSBjb21tYS1kZWxpbWl0ZWQgbGlzdFxuLy8gKiB0aGVzZSBkZWxheXMgd2lsbCBlZmZlY3QgdGhlIHByb3BlcnRpZXMgaW4gdGhlIHNhbWUgbGlzdCBwb3NpdGlvblxuXG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkZGVsYXktMTogJGRlZmF1bHQtdHJhbnNpdGlvbi1kZWxheSxcbiAgJGRlbGF5LTIgOiBmYWxzZSxcbiAgJGRlbGF5LTMgOiBmYWxzZSxcbiAgJGRlbGF5LTQgOiBmYWxzZSxcbiAgJGRlbGF5LTUgOiBmYWxzZSxcbiAgJGRlbGF5LTYgOiBmYWxzZSxcbiAgJGRlbGF5LTcgOiBmYWxzZSxcbiAgJGRlbGF5LTggOiBmYWxzZSxcbiAgJGRlbGF5LTkgOiBmYWxzZSxcbiAgJGRlbGF5LTEwOiBmYWxzZVxuKSB7XG4gIEBpZiB0eXBlLW9mKCRkZWxheS0xKSA9PSBzdHJpbmcgeyAkZGVsYXktMTogdW5xdW90ZSgkZGVsYXktMSk7IH1cbiAgJGRlbGF5czogY29tcGFjdCgkZGVsYXktMSwgJGRlbGF5LTIsICRkZWxheS0zLCAkZGVsYXktNCwgJGRlbGF5LTUsICRkZWxheS02LCAkZGVsYXktNywgJGRlbGF5LTgsICRkZWxheS05LCAkZGVsYXktMTApO1xuICBAaW5jbHVkZSBleHBlcmltZW50YWwodHJhbnNpdGlvbi1kZWxheSwgJGRlbGF5cyxcbiAgICAtbW96LCAtd2Via2l0LCAtbywgbm90KC1tcyksIG5vdCgta2h0bWwpLCBvZmZpY2lhbFxuICApO1xufVxuXG4vLyBUcmFuc2l0aW9uIGFsbC1pbi1vbmUgc2hvcnRoYW5kXG5cbkBtaXhpbiBzaW5nbGUtdHJhbnNpdGlvbihcbiAgJHByb3BlcnR5OiAkZGVmYXVsdC10cmFuc2l0aW9uLXByb3BlcnR5LFxuICAkZHVyYXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24sXG4gICRmdW5jdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbixcbiAgJGRlbGF5OiAkZGVmYXVsdC10cmFuc2l0aW9uLWRlbGF5XG4pIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb21wYWN0KCRwcm9wZXJ0eSAkZHVyYXRpb24gJGZ1bmN0aW9uICRkZWxheSkpO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbihcbiAgJHRyYW5zaXRpb24tMSA6IGRlZmF1bHQsXG4gICR0cmFuc2l0aW9uLTIgOiBmYWxzZSxcbiAgJHRyYW5zaXRpb24tMyA6IGZhbHNlLFxuICAkdHJhbnNpdGlvbi00IDogZmFsc2UsXG4gICR0cmFuc2l0aW9uLTUgOiBmYWxzZSxcbiAgJHRyYW5zaXRpb24tNiA6IGZhbHNlLFxuICAkdHJhbnNpdGlvbi03IDogZmFsc2UsXG4gICR0cmFuc2l0aW9uLTggOiBmYWxzZSxcbiAgJHRyYW5zaXRpb24tOSA6IGZhbHNlLFxuICAkdHJhbnNpdGlvbi0xMDogZmFsc2Vcbikge1xuICBAaWYgJHRyYW5zaXRpb24tMSA9PSBkZWZhdWx0IHtcbiAgICAkdHJhbnNpdGlvbi0xIDogY29tcGFjdCgkZGVmYXVsdC10cmFuc2l0aW9uLXByb3BlcnR5ICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24gJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbiAkZGVmYXVsdC10cmFuc2l0aW9uLWRlbGF5KTtcbiAgfVxuICAkdHJhbnNpdGlvbnM6IGZhbHNlO1xuICBAaWYgdHlwZS1vZigkdHJhbnNpdGlvbi0xKSA9PSBsaXN0IGFuZCB0eXBlLW9mKG50aCgkdHJhbnNpdGlvbi0xLDEpKSA9PSBsaXN0IHtcbiAgICAkdHJhbnNpdGlvbnM6IGpvaW4oJHRyYW5zaXRpb24tMSwgY29tcGFjdCgkdHJhbnNpdGlvbi0yLCAkdHJhbnNpdGlvbi0zLCAkdHJhbnNpdGlvbi00LCAkdHJhbnNpdGlvbi01LCAkdHJhbnNpdGlvbi02LCAkdHJhbnNpdGlvbi03LCAkdHJhbnNpdGlvbi04LCAkdHJhbnNpdGlvbi05LCAkdHJhbnNpdGlvbi0xMCksIGNvbW1hKTtcbiAgfSBAZWxzZSB7XG4gICAgJHRyYW5zaXRpb25zIDogY29tcGFjdCgkdHJhbnNpdGlvbi0xLCAkdHJhbnNpdGlvbi0yLCAkdHJhbnNpdGlvbi0zLCAkdHJhbnNpdGlvbi00LCAkdHJhbnNpdGlvbi01LCAkdHJhbnNpdGlvbi02LCAkdHJhbnNpdGlvbi03LCAkdHJhbnNpdGlvbi04LCAkdHJhbnNpdGlvbi05LCAkdHJhbnNpdGlvbi0xMCk7XG4gIH1cbiAgJGRlbGF5czogY29tbWEtbGlzdCgpO1xuICAkaGFzLWRlbGF5czogZmFsc2U7XG4gICR3ZWJraXQtdmFsdWU6IGNvbW1hLWxpc3QoKTtcbiAgJG1vei12YWx1ZTogY29tbWEtbGlzdCgpO1xuICAkby12YWx1ZTogY29tbWEtbGlzdCgpO1xuXG4gIC8vIFRoaXMgYmxvY2sgY2FuIGJlIG1hZGUgY29uc2lkZXJhYmx5IHNpbXBsZXIgYXQgdGhlIHBvaW50IGluIHRpbWUgdGhhdFxuICAvLyB3ZSBubyBsb25nZXIgbmVlZCB0byBkZWFsIHdpdGggdGhlIGRpZmZlcmVuY2VzIGluIGhvdyBkZWxheXMgYXJlIHRyZWF0ZWQuXG4gIEBlYWNoICR0cmFuc2l0aW9uIGluICR0cmFuc2l0aW9ucyB7XG4gICAgLy8gRXh0cmFjdCB0aGUgdmFsdWVzIGZyb20gdGhlIGxpc3RcbiAgICAvLyAodGhpcyB3b3VsZCBiZSBjbGVhbmVyIGlmIG50aCB0b29rIGEgM3JkIGFyZ3VtZW50IHRvIHByb3ZpZGUgYSBkZWZhdWx0IHZhbHVlKS5cbiAgICAkcHJvcGVydHk6IG50aCgkdHJhbnNpdGlvbiwgMSk7XG4gICAgJGR1cmF0aW9uOiBmYWxzZTtcbiAgICAkdGltaW5nLWZ1bmN0aW9uOiBmYWxzZTtcbiAgICAkZGVsYXk6IGZhbHNlO1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7ICRkdXJhdGlvbjogICAgICAgIG50aCgkdHJhbnNpdGlvbiwgMik7IH1cbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDIgeyAkdGltaW5nLWZ1bmN0aW9uOiBudGgoJHRyYW5zaXRpb24sIDMpOyB9XG4gICAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAzIHsgJGRlbGF5OiAgICAgICAgICAgbnRoKCR0cmFuc2l0aW9uLCA0KTsgJGhhcy1kZWxheXM6IHRydWU7IH1cblxuICAgIC8vIElmIGEgZGVsYXkgaXMgcHJvdmlkZWQgd2l0aG91dCBhIHRpbWluZyBmdW5jdGlvblxuICAgIEBpZiBpcy10aW1lKCR0aW1pbmctZnVuY3Rpb24pIGFuZCBub3QoJGRlbGF5KSB7ICRkZWxheTogJHRpbWluZy1mdW5jdGlvbjsgJHRpbWluZy1mdW5jdGlvbjogZmFsc2U7ICRoYXMtZGVsYXlzOiB0cnVlOyB9XG5cbiAgICAvLyBLZWVwIGEgbGlzdCBvZiBkZWxheXMgaW4gY2FzZSBvbmUgaXMgc3BlY2lmaWVkXG4gICAgJGRlbGF5czogYXBwZW5kKCRkZWxheXMsIGlmKCRkZWxheSwgJGRlbGF5LCAwcykpO1xuXG4gICAgJHdlYmtpdC12YWx1ZTogYXBwZW5kKCR3ZWJraXQtdmFsdWUsIGNvbXBhY3QoKHByZWZpeGVkLWZvci10cmFuc2l0aW9uKC13ZWJraXQsICRwcm9wZXJ0eSkgJGR1cmF0aW9uICR0aW1pbmctZnVuY3Rpb24pLi4uKSk7XG4gICAgICAgJG1vei12YWx1ZTogYXBwZW5kKCAgICRtb3otdmFsdWUsIGNvbXBhY3QoKHByZWZpeGVkLWZvci10cmFuc2l0aW9uKCAgIC1tb3osICRwcm9wZXJ0eSkgJGR1cmF0aW9uICR0aW1pbmctZnVuY3Rpb24gJGRlbGF5KS4uLikpO1xuICAgICAgICAgJG8tdmFsdWU6IGFwcGVuZCggICAgICRvLXZhbHVlLCBjb21wYWN0KChwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbiggICAgIC1vLCAkcHJvcGVydHkpICRkdXJhdGlvbiAkdGltaW5nLWZ1bmN0aW9uICRkZWxheSkuLi4pKTtcbiAgfVxuXG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCAgICB7ICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbiA6ICR3ZWJraXQtdmFsdWU7XG4gICAgLy8gb2xkIHdlYmtpdCBkb2Vzbid0IHN1cHBvcnQgdGhlIGRlbGF5IHBhcmFtZXRlciBpbiB0aGUgc2hvcnRoYW5kIHNvIHdlIHByb2dyZXNzaXZlbHkgZW5oYW5jZSBpdC5cbiAgICBAaWYgJGhhcy1kZWxheXMgICAgICAgICAgICAgICAgICAgICAgIHsgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5IDogJGRlbGF5czsgICAgICAgfSB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEgICB7ICAgICAgICAgIC1tb3otdHJhbnNpdGlvbiA6ICRtb3otdmFsdWU7ICAgIH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEgICAgIHsgICAgICAgICAgICAtby10cmFuc2l0aW9uIDogJG8tdmFsdWU7ICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24gOiAkdHJhbnNpdGlvbnM7XG59XG5cbi8vIGNvZXJjZSBhIGxpc3QgdG8gYmUgY29tbWEgZGVsaW1pdGVkIG9yIG1ha2UgYSBuZXcsIGVtcHR5IGNvbW1hIGRlbGltaXRlZCBsaXN0LlxuQGZ1bmN0aW9uIGNvbW1hLWxpc3QoJGxpc3Q6ICgpKSB7XG4gIEByZXR1cm4gam9pbigoKSwgJGxpc3QsIGNvbW1hKTtcbn1cblxuLy8gUmV0dXJucyBgJHByb3BlcnR5YCB3aXRoIHRoZSBnaXZlbiBwcmVmaXggaWYgaXQgaXMgZm91bmQgaW4gYCR0cmFuc2l0aW9uYWJsZS1wcmVmaXhlZC12YWx1ZXNgLlxuQGZ1bmN0aW9uIHByZWZpeGVkLWZvci10cmFuc2l0aW9uKCRwcmVmaXgsICRwcm9wZXJ0eSkge1xuICBAaWYgdHlwZS1vZigkcHJvcGVydHkpID09IGxpc3Qge1xuICAgICRuZXctbGlzdDogY29tbWEtbGlzdCgpO1xuICAgIEBlYWNoICR2IGluICRwcm9wZXJ0eSB7XG4gICAgICAkbmV3LWxpc3Q6IGFwcGVuZCgkbmV3LWxpc3QsIHByZWZpeGVkLWZvci10cmFuc2l0aW9uKCRwcmVmaXgsICR2KSk7XG4gICAgfVxuICAgIEByZXR1cm4gJG5ldy1saXN0O1xuICB9IEBlbHNlIHtcbiAgICBAaWYgaW5kZXgoJHRyYW5zaXRpb25hYmxlLXByZWZpeGVkLXZhbHVlcywgJHByb3BlcnR5KSB7XG4gICAgICBAcmV0dXJuICN7JHByZWZpeH0tI3skcHJvcGVydHl9O1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiAkcHJvcGVydHk7XG4gICAgfVxuICB9XG59XG5cbi8vIENoZWNrcyBpZiB0aGUgdmFsdWUgZ2l2ZW4gaXMgYSB1bml0IG9mIHRpbWUuXG5AZnVuY3Rpb24gaXMtdGltZSgkdmFsdWUpIHtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgIEByZXR1cm4gbm90KG5vdChpbmRleChzIG1zLCB1bml0KCR2YWx1ZSkpKSk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiIsIi8vIFNwYW4gU3ludGF4XG4vLyA9PT09PT09PT09PVxuXG4vLyBTcGFuIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLVxuLy8gU2V0IGEgc3Bhbm5pbmcgZWxlbWVudCB1c2luZyBzaG9ydGhhbmQgc3ludGF4LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBzcGFuKFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0OiAkc3BhbjtcbiAgJHNwYW46IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkb3V0cHV0OiBzcGFuLW1hdGgoJHNwYW4pO1xuICAkbmVzdGluZzogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkY2xlYXI6IHN1c3ktZ2V0KGNsZWFyLCAkc3Bhbik7XG5cbiAgJGJveDogc3VzeS1nZXQoYm94LXNpemluZywgJHNwYW4pO1xuICAkY29udGVudC1ib3g6IGlmKHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSAhPSAnYm9yZGVyLWJveCcsIHRydWUsIGZhbHNlKTtcbiAgJGJveDogJGJveCBvciBpZihpcy1pbnNpZGUoJHNwYW4pIGFuZCAkY29udGVudC1ib3gsIGJvcmRlci1ib3gsIG51bGwpO1xuXG4gIEBpZiAkY2xlYXIgPT0gYnJlYWsge1xuICAgIEBpbmNsdWRlIGJyZWFrO1xuICB9IEBlbHNlIGlmICRjbGVhciA9PSBub2JyZWFrIHtcbiAgICBAaW5jbHVkZSBub2JyZWFrO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHNwYW4sICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkYm94KSk7XG4gIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gIEBpZiB2YWxpZC1jb2x1bW5zKCRuZXN0aW5nLCBzaWxlbnQpIHtcbiAgICBAaW5jbHVkZSBuZXN0ZWQoJHNwYW4pIHsgQGNvbnRlbnQ7IH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gU3BhbiBbZnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgd2lkdGggb2YgYSBzcGFuLlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBmdW5jdGlvbiBzcGFuKFxuICAkc3BhblxuKSB7XG4gIEByZXR1cm4gZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xufVxuXG4vLyBTcGFuIE1hdGhcbi8vIC0tLS0tLS0tLVxuLy8gR2V0IGFsbCB0aGUgc3BhbiByZXN1bHRzLlxuLy8gLSAkc3BhbjogPG1hcD5cbkBmdW5jdGlvbiBzcGFuLW1hdGgoXG4gICRzcGFuXG4pIHtcbiAgJG5lc3QgICAgICAgICAgICAgOiBpZihzdXN5LWdldChyb2xlLCAkc3BhbikgPT0gbmVzdCwgdHJ1ZSwgZmFsc2UpO1xuICAkc3BsaXQtbmVzdCAgICAgICA6IGlmKGlzLXNwbGl0KCRzcGFuKSBhbmQgJG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJGVkZ2UgICAgICAgICAgICAgOiBnZXQtZWRnZSgkc3Bhbik7XG4gICRsb2NhdGlvbiAgICAgICAgIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcblxuICAkZmxvYXQgICAgICAgICAgICA6IGZyb207XG4gICRwYWRkaW5nLWJlZm9yZSAgIDogbnVsbDtcbiAgJHBhZGRpbmctYWZ0ZXIgICAgOiBudWxsO1xuICAkbWFyZ2luLWJlZm9yZSAgICA6IG51bGw7XG4gICRtYXJnaW4tYWZ0ZXIgICAgIDogbnVsbDtcblxuICAvLyBjYWxjdWxhdGUgd2lkdGhzXG4gICRzcHJlYWQ6IGluZGV4KG1hcC12YWx1ZXMoJHNwYW4pLCBzcHJlYWQpO1xuICAkc3BhbjogaWYoJHNwbGl0LW5lc3QgYW5kIG5vdCgkc3ByZWFkKSwgbWFwLW1lcmdlKCRzcGFuLCAoc3ByZWFkOiB3aWRlKSksICRzcGFuKTtcbiAgJHdpZHRoOiBnZXQtc3Bhbi13aWR0aCgkc3Bhbik7XG4gICRndXR0ZXJzOiBnZXQtZ3V0dGVycygkc3Bhbik7XG5cbiAgLy8gYXBwbHkgZ3V0dGVyc1xuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgQGlmIG5vdChzdXN5LWdldChyb2xlLCAkc3BhbikpIHtcbiAgICAgICRwYWRkaW5nLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKTtcbiAgICAgICRwYWRkaW5nLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAaWYgbm90KCRzcGxpdC1uZXN0KSB7XG4gICAgICAkbWFyZ2luLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKTtcbiAgICAgICRtYXJnaW4tYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBzcGVjaWFsIG1hcmdpbiBoYW5kbGluZ1xuICBAaWYgc3VzeS1nZXQob3V0cHV0LCAkc3BhbikgPT0gaXNvbGF0ZSBhbmQgJGxvY2F0aW9uIHtcbiAgICAkbWFyZ2luLWJlZm9yZTogZ2V0LWlzb2xhdGlvbigkc3Bhbik7XG4gICAgJG1hcmdpbi1hZnRlcjogLTEwMCU7XG4gIH0gQGVsc2UgaWYgJGVkZ2Uge1xuICAgICRpcy1zcGxpdDogaXMtc3BsaXQoJHNwYW4pO1xuICAgICRwb3M6IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pO1xuXG4gICAgQGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGZsb2F0OiBzdXN5LWdldChsYXN0LWZsb3csICRzcGFuKTtcbiAgICB9XG5cbiAgICBAaWYgbm90KCRpcy1zcGxpdCkge1xuICAgICAgQGlmICRlZGdlID09IGZ1bGwgb3IgKCRlZGdlID09IGZpcnN0IGFuZCAkcG9zID09IGJlZm9yZSkge1xuICAgICAgICAkbWFyZ2luLWJlZm9yZTogMDtcbiAgICAgIH1cbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBsYXN0IGFuZCAkcG9zID09IGFmdGVyKSB7XG4gICAgICAgICRtYXJnaW4tYWZ0ZXI6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBAcmV0dXJuIChcbiAgICB3aWR0aCAgICAgICAgICAgOiAkd2lkdGgsXG4gICAgZmxvYXQgICAgICAgICAgIDogJGZsb2F0LFxuICAgIG1hcmdpbi1iZWZvcmUgICA6ICRtYXJnaW4tYmVmb3JlLFxuICAgIG1hcmdpbi1hZnRlciAgICA6ICRtYXJnaW4tYWZ0ZXIsXG4gICAgcGFkZGluZy1iZWZvcmUgIDogJHBhZGRpbmctYmVmb3JlLFxuICAgIHBhZGRpbmctYWZ0ZXIgICA6ICRwYWRkaW5nLWFmdGVyLFxuICAgIGZsb3cgICAgICAgICAgICA6IHN1c3ktZ2V0KGZsb3csICRzcGFuKSxcbiAgKTtcbn1cblxuLy8gR2V0IFNwYW4gV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gc3BhbiB3aWR0aC5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gZ2V0LXNwYW4td2lkdGgoXG4gICRzcGFuXG4pIHtcbiAgJHNwYW4gICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG5cbiAgJG4gICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkbG9jYXRpb24gOiBnZXQtbG9jYXRpb24oJHNwYW4pO1xuICAkY29sdW1ucyAgOiBzdXN5LWdldChjb2x1bW5zLCAkc3Bhbik7XG4gICRndXR0ZXJzICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRzcGFuKTtcbiAgJHNwcmVhZCAgIDogc3VzeS1nZXQoc3ByZWFkLCAkc3Bhbik7XG5cbiAgJGNvbnRleHQgIDogbnVsbDtcbiAgJHNwYW4tc3VtIDogbnVsbDtcbiAgJHdpZHRoICAgIDogbnVsbDtcblxuICBAaWYgJG4gPT0gJ2Z1bGwnIHtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcbiAgICAkcm9sZTogc3VzeS1nZXQocm9sZSwgJHNwYW4pO1xuICAgICRuOiBpZigkcG9zID09IHNwbGl0IGFuZCAkcm9sZSAhPSBuZXN0LCBzdXN5LWNvdW50KCRjb2x1bW5zKSwgMTAwJSk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkbikgIT0gbnVtYmVyIHtcbiAgICBAd2FybiBcIigje3R5cGUtb2YoJG4pfSkgI3skbn0gaXMgbm90IGEgdmFsaWQgc3Bhbi5cIjtcbiAgfSBAZWxzZSBpZiB1bml0bGVzcygkbikge1xuICAgICRjb250ZXh0OiBzdXN5LXN1bSgkY29sdW1ucywgJGd1dHRlcnMsIGlmKGlzLXNwbGl0KCRzcGFuKSwgd2lkZSwgbmFycm93KSk7XG4gICAgJHNwcmVhZDogaWYoaXMtaW5zaWRlKCRzcGFuKSwgJHNwcmVhZCBvciB3aWRlLCAkc3ByZWFkKTtcbiAgICAkc3Bhbi1zdW06IHN1c3koJG4sICRsb2NhdGlvbiwgJGNvbHVtbnMsICRndXR0ZXJzLCAkc3ByZWFkKTtcblxuICAgICRfbWF0aDogc3VzeS1nZXQobWF0aCwgJHNwYW4pO1xuICAgICRfY29sdW1uLXdpZHRoOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRzcGFuKTtcbiAgICBAaWYgJF9tYXRoID09IHN0YXRpYyB7XG4gICAgICAkd2lkdGg6ICRzcGFuLXN1bSAqIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRzcGFuLXN1bSAvICRjb250ZXh0KTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICR3aWR0aDogJG47XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aDtcbn1cbiIsIi8vIERpcmVjdGlvbiBIZWxwZXJzXG4vLyA9PT09PT09PT09PT09PT09PVxuXG4vLyBTdXN5IEZsb3cgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgZmxvdzogbHRyLFxuKSk7XG5cbi8vIEdldCBEaXJlY3Rpb25cbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgJ2Zyb20nIG9yICd0bycgZGlyZWN0aW9uIG9mIGEgbHRyIG9yIHJ0bCBmbG93LlxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuLy8gLSBbJGtleV0gICA6IGZyb20gfCB0b1xuQGZ1bmN0aW9uIGdldC1kaXJlY3Rpb24oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KSxcbiAgJGtleTogZnJvbVxuKSB7XG4gICRyZXR1cm46IGlmKCRmbG93ID09IHJ0bCwgKGZyb206IHJpZ2h0LCB0bzogbGVmdCksIChmcm9tOiBsZWZ0LCB0bzogcmlnaHQpKTtcbiAgQHJldHVybiBtYXAtZ2V0KCRyZXR1cm4sICRrZXkpO1xufVxuXG4vLyBUb1xuLy8gLS1cbi8vIFJldHVybiB0aGUgJ3RvJyBkaXJlY3Rpb24gb2YgYSBmbG93XG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AZnVuY3Rpb24gdG8oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gIEByZXR1cm4gZ2V0LWRpcmVjdGlvbigkZmxvdywgdG8pO1xufVxuXG4vLyBGcm9tXG4vLyAtLS0tXG4vLyBSZXR1cm4gdGhlICdmcm9tJyBkaXJlY3Rpb24gb2YgYSBmbG93XG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AZnVuY3Rpb24gZnJvbShcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgQHJldHVybiBnZXQtZGlyZWN0aW9uKCRmbG93LCBmcm9tKTtcbn1cbiIsIi8vIEFsbCBlbGVtZW50cywgd2hpY2ggYXJlIGV4Y2x1c2l2ZSBhbmQgbmF0aXZlIHRvIHRoZSBuYXZpZ2F0aW9uLCBiZWxvbmcgaGVyZS5cclxuLy8gSXQgY2FuIGJlIHRoZSBtYWluLSwgdG91Y2gtLCBzdWItIG9yIGZvb3RlciBuYXZpZ2F0aW9uLlxyXG4vLyBJdCdzIHZlcnkgZWFzeSB0byBsYWJlbCBhbiBlbGVtZW50IGFzIGEgbmF2aWdhdGlvbi1lbGVtZW50LlxyXG4vLyBZb3UgYXJlIGVuY291cmFnZWQgdG8gY3JlYXRlIHNpbWlsYXIgcGFydGlhbHMgd2hpY2ggbWFrZSBzZW5zZSBmb3IgeW91ciBwcm9qZWN0LlxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQWNjb3JkaW9uIGJlaGF2aW9yXHJcblxyXG4lYWNjb3JkaW9uLXRhcmdldCB7XHJcbiAgbWF4LWhlaWdodDogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAmLmFjdGl2ZSB7XHJcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGRpc2FibGUtYWNjb3JkaW9uIHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE1vYmlsZSBmdWxsc2NyZWVuIGNhcmRcclxuXHJcbiVmdWxsc2NyZWVuLWNhcmQge1xyXG4gIG92ZXJmbG93OiBzY3JvbGw7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogJGhlYWRlci1oZWlnaHQtbW9iaWxlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gUGFnZSBvdmVybGF5XHJcblxyXG5ib2R5IHtcclxuICAvLyBQcmV2ZW50aW5nIHNjcm9sbGJhcnMgb24gbW9iaWxlXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LW0tZG93bi4uLiApIHtcclxuICAgIC5uby1qcyNzY2FucGFuOnRhcmdldCAmLFxyXG4gICAgLm5vLWpzICY6dGFyZ2V0LFxyXG4gICAgJi5zaG93LW1lbnUsXHJcbiAgICAmLnNob3ctYmFza2V0IHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wYWdlLW92ZXJsYXkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMCwgMC41KTtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiAzO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxuICAubm8tanMjc2NhbnBhbjp0YXJnZXQgJixcclxuICAubm8tanMgI3Nob3A6dGFyZ2V0ICYsXHJcbiAgLnNob3ctbWVudSAmLFxyXG4gIC5zaG93LWJhc2tldCAmIHsgZGlzcGxheTogYmxvY2s7IH1cclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7XHJcbiAgICAubm8tanMjc2NhbnBhbjp0YXJnZXQgLFxyXG4gICAgLnNob3ctbWVudSAmIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gR2VuZXJhbCBuYXZcclxuXHJcbkBtaXhpbiBuYXYtbGluay1tb2JpbGUge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LWJvcmRlci1jb2xvcjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAwLjhlbSA4JTtcclxuICBAaW5jbHVkZSBmb250LXNpemUoMTZweCk7XHJcbn1cclxuXHJcbkBtaXhpbiBuYXYtbGluay1tb2JpbGUtYXJyb3cge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgJjpob3ZlcjphZnRlciB7IGNvbG9yOiBpbmhlcml0OyB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29sb3I6ICRjb2xvci1saWdodDtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIG1hcmdpbi10b3A6IC02cHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMXB4KTtcclxuICAgIEBpbmNsdWRlIHVzZS1pY29uKGFycm93LWRvd24sIHRydWUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG4ubmF2IHtcclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbC4uLiApIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XHJcblxyXG4gICZfX2xpc3Qge1xyXG4gICAgQGV4dGVuZCAlbGlzdC1jbGVhbjtcclxuICAgICYgJiB7XHJcbiAgICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtYmFja2dyb3VuZDtcclxuICAgICAgICBtaW4td2lkdGg6IDI1NnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICAgICAubmF2X19pdGVtIHtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbmF2LWJvcmRlci1jb2xvcjtcclxuXHJcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogbm9uZTsgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1tLWRvd24uLi4gKSB7XHJcbiAgICAgIC5uYXZfX2l0ZW0uYWN0aXZlID4gJiB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbC4uLiApIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICAgLm5vLWpzIC5uYXZfX2l0ZW06aG92ZXIgPiAmLFxyXG4gICAgICAubmF2X19pdGVtLmhvdmVyID4gJiB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19pdGVtIHtcclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgJiAmIHsgZmxvYXQ6IG5vbmU7IH1cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2l0ZW0tLWhhcy1jaGlsZHJlbiB7XHJcbiAgICBAZXh0ZW5kIC5uYXZfX2l0ZW0gIW9wdGlvbmFsO1xyXG4gICAgPiAubmF2X19saXN0IHtcclxuICAgICAgQGV4dGVuZCAlYWNjb3JkaW9uLXRhcmdldDtcclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBAaW5jbHVkZSBkaXNhYmxlLWFjY29yZGlvbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fbGluayB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG5cclxuICAgICYsXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgY29sb3I6ICRuYXYtbGluay1jb2xvcjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC1sLi4uICkge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIE5lY2Vzc2FyeSB0byBzaG93IGljb25zIGNvcnJlY3RseSBpbiBJRVxyXG5cclxuICAgICAgLm5vLWpzIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbjpob3ZlciA+ICYsXHJcbiAgICAgIC5uYXZfX2l0ZW0tLWhhcy1jaGlsZHJlbi5ob3ZlciA+ICYge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtYmFja2dyb3VuZDtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWNvbG9yLXNlY29uZGFyeTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7IGNvbG9yOiBpbmhlcml0OyB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubmF2X19pdGVtLS1oYXMtY2hpbGRyZW4gPiAmIHtcclxuICAgICAgQGluY2x1ZGUgbmF2LWxpbmstbW9iaWxlLWFycm93O1xyXG5cclxuICAgICAgJi5hY3RpdmU6YWZ0ZXIgeyBAaW5jbHVkZSByb3RhdGVaKDBkZWcpOyB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LW0tZG93bi4uLiApIHtcclxuICAgICAgQGluY2x1ZGUgbmF2LWxpbmstbW9iaWxlO1xyXG5cclxuICAgICAgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuIC5uYXZfX2xpc3QgJiB7XHJcbiAgICAgICAgY29sb3I6ICRuYXYtbGluay1jb2xvci1zZWNvbmRhcnk7XHJcbiAgICAgICAgcGFkZGluZzogMC44ZW0gMTIlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7XHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMsXHJcbiAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWJhY2tncm91bmQ7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1jb2xvci1zZWNvbmRhcnk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIgeyBjb2xvcjogaW5oZXJpdDsgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAubmF2X19pdGVtLmFjdGl2ZSA+ICYge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3Itc2Vjb25kYXJ5O1xyXG5cclxuICAgICAgICAmLmhpZ2hsaWdodC0tc2Vjb25kYXJ5IHsgY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5OyB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7XHJcbiAgICAgIHBhZGRpbmc6IDE5cHggMjNweDtcclxuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE2cHgpO1xyXG5cclxuICAgICAgLm5hdl9faXRlbS0taGFzLWNoaWxkcmVuIC5uYXZfX2xpc3QgJiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgxNnB4KTsgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgdG9wOiAtMnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19oaWdobGlnaHQge1xyXG4gICAgJi0tc2VuYXJ5IHtcclxuICAgICAgY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3Itc2VuYXJ5O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSGVhZGVyIE5hdiAoTGF5b3V0IFBhcnRpYWwpXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uaGVhZGVyLW5hdiB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIC8vcGFkZGluZzogOXB4IDAgMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2X19saXN0IHtcclxuICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xyXG4gIG1hcmdpbjogMDtcclxuXHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXh4bC4uLiApIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG5cclxuICAmLmhhcy1sZXZlbC0xIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luOiA2MHB4IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gICYuaGFzLWxldmVsLTIge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLW5hdl9fY29udGFpbmVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XHJcblxyXG4uaGVhZGVyLW5hdl9faXRlbSB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcblxyXG4gICYubGFzdC1jaGlsZCB7XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwtZG93bi4uLiApIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMjBweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14eGwuLi4gKSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIC5oZWFkZXItbmF2X19saW5rIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgIH1cclxuXHJcbiAgLmhhcy1jb2x1bW4tY291bnQtNCAmIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoMS80KTtcclxuXHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbC4uLiApIHtcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7XHJcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvNCk7XHJcblxyXG4gICAgICAmOm50aC1jaGlsZCg1bisxKSB7IGNsZWFyOiBub25lOyB9XHJcbiAgICAgICY6bnRoLWNoaWxkKDNuKzEpIHsgY2xlYXI6IG5vbmU7IH1cclxuICAgICAgJjpudGgtY2hpbGQoNG4rMSkgeyBjbGVhcjogbGVmdDsgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhhcy1sZXZlbC0xID4gJiB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbjogMCAwIDMwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpudGgtY2hpbGQoLW4rMik6OmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXhsLi4uICkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkd2hpdGUsIDExJSk7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBoZWlnaHQ6IDExMCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgcmlnaHQ6IDIwJTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaGFzLWxldmVsLTIgJiB7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHdpZHRoOiA3NSU7XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCAuaGVhZGVyLW5hdl9fbGluayB7IG1hcmdpbjogMDsgfVxyXG4gIH1cclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuXHJcbiAgICAuaGVhZGVyLW5hdl9fbGluayB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuXHJcbiAgICAgICYuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZWNvbmRhcnksXHJcbiAgICAgICYuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZW5hcnkgeyBwYWRkaW5nLWxlZnQ6IDEwcHg7fVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi5oZWFkZXItbmF2X190b3AtbGV2ZWwge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIHRvcDogMjJweDtcclxuXHJcbiAgJi5pcy1hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgfVxyXG5cclxuICAuaGVhZGVyLW5hdl9fdG9wLWxldmVsLS1saW5rIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcclxuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xyXG4gICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLW5hdl9fbGluayB7XHJcbiAgY29sb3I6ICR3aGl0ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LWZhbWlseTogJGZvbnQ7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBwYWRkaW5nOiAyMHB4IDEwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcblxyXG4gIC5pcy1hY3RpdmUgPiAmIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICNBRTlDNTc7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBhZGRpbmc6IDAgNnB4O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IC0xMXB4O1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmlzLWFjdGl2ZSA+ICYsXHJcbiAgJi5pcy1hY3RpdmUsXHJcbiAgJi5pcy1pbnBhdGggeyBjb2xvcjogbGlnaHRlbigkd2hpdGUsIDIwJSk7IH1cclxuXHJcbiAgLmlzLWN1cnJlbnQgPiAmLFxyXG4gIC5pcy1pbnBhdGggPiAmIHsgY29sb3I6ICR3aGl0ZTsgfVxyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMsXHJcbiAgJjphY3RpdmUge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gIC5oYXMtbGV2ZWwtMSAmIHtcclxuICAgIGZvbnQtc2l6ZTogMjFweDtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGNvbG9yOiAkYmxhY2s7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICB9XHJcblxyXG4gIC5oYXMtbGV2ZWwtMiAmIHtcclxuICAgIGNvbG9yOiBsaWdodGVuKCRibGFjaywgNDAlKTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIG1hcmdpbjogMTBweCAwIDA7XHJcblxyXG4gICAgJjo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gICAgJjpob3ZlciB7IGNvbG9yOiAkYmxhY2s7IH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuLmhlYWRlci1uYXZfX2hpZ2hsaWdodC0tc2Vjb25kYXJ5LFxyXG4uaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZW5hcnkge1xyXG4gIGNvbG9yOiAkYnJhbmQtY29sb3ItcHJpbWFyeTtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAmOjphZnRlcnsgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxyXG59XHJcblxyXG4uaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZWNvbmRhcnkgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3Itc2Vjb25kYXJ5OyB9XHJcblxyXG4uaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZW5hcnkgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3Itc2VuYXJ5OyB9XHJcblxyXG4uaGVhZGVyLW5hdl9fbGluay5oZWFkZXItbmF2X19oaWdobGlnaHQtLXNlY29uZGFyeTpob3ZlcixcclxuLmhlYWRlci1uYXZfX2xpbmsuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZW5hcnk6aG92ZXIgeyBjb2xvcjogJGJyYW5kLWNvbG9yLXByaW1hcnk7IH1cclxuXHJcbi5oZWFkZXItbmF2X19pdGVtLmlzLWFjdGl2ZSB7XHJcbiAgLmhlYWRlci1uYXZfX2hpZ2hsaWdodC0tc2Vjb25kYXJ5LFxyXG4gIC5oZWFkZXItbmF2X19oaWdobGlnaHQtLXNlbmFyeSB7XHJcbiAgICBjb2xvcjogJGJyYW5kLWNvbG9yLXByaW1hcnk7XHJcblxyXG4gICAgJjo6YWZ0ZXIgeyBib3JkZXItYm90dG9tOiBub25lOyB9XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyLW5hdl9faGlnaGxpZ2h0LS1zZWNvbmRhcnkgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRicmFuZC1jb2xvci1zZWNvbmRhcnksIDUlKTsgfVxyXG4gIC5oZWFkZXItbmF2X19oaWdobGlnaHQtLXNlbmFyeSB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLWNvbG9yLXNlbmFyeSwgNSUpOyB9XHJcbn1cclxuXHJcbi5uYXYtZHJvcGRvd24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICBib3gtc2hhZG93OiAwIDdweCA0OXB4IDAgcmdiYSgkYmxhY2ssMC4yNSk7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG1pbi1oZWlnaHQ6IDM1MHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwbXMgbGluZWFyIDI1MG1zLCBvcGFjaXR5IDI1MG1zIGVhc2U7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDk7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgLy8gU2hvdyBtZWdhIG1lbnUgd2hlbiBob3ZlcmluZyBvdmVyIG5hdiBpdGVtIChkZXNrdG9wL25vLXRvdWNoKVxyXG4gIC5pcy1hY3RpdmUgKyAmLFxyXG4gIC5pcy1hY3RpdmUgPiAmIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDAgbGluZWFyLCBvcGFjaXR5IDI1MG1zIGVhc2U7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgLy8gU2hvdyBzdWIgbWVudSB3aGVuIHRhcHBpbmcgb24gbWVudSBpdGVtIChtb2JpbGUvdG91Y2gpXHJcbiAgLmlzLWFjdGl2ZSArICYgeyBkaXNwbGF5OiBibG9jazsgfVxyXG59XHJcblxyXG4uaGVhZGVyLW5hdl9fY3RhIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zIGVhc2U7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgbWFyZ2luLXRvcDogLTMwcHg7XHJcblxyXG4gIC5zcGxhdCB7XHJcbiAgICAkc3BsYXQtb2Zmc2V0OiAkZ3V0dGVyLXdpZHRoIC0gMTA7XHJcbiAgICBiYWNrZ3JvdW5kOiAjQUU5QzU3O1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICB3aWR0aDogNTBweDtcclxuICAgIGhlaWdodDogNDRweDtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIHBhZGRpbmc6IDE4cHggMTVweDtcclxuXHJcbiAgICAuZnJvbSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICBmb250LWZhbWlseTogJ1RpbWVzIE5ldyBSb21hbicsIFRpbWVzLCBzZXJpZjtcclxuICAgICAgbGluZS1oZWlnaHQ6IDAuODtcclxuICAgIH1cclxuXHJcbiAgICAucHJpY2Uge1xyXG4gICAgICBmb250LXNpemU6IDIxcHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LWwuLi4gKSB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGxheW91dC14bC4uLiApIHtcclxuICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB0b3A6IC01MHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmhlYWRlci1uYXZfX2N0YS1pbWFnZSB7XHJcbiAgbWF4LXdpZHRoOiA4MCU7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2X190b3AtYnV0dG9uIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0b3A6IDczcHg7XHJcbiAgbWluLXdpZHRoOiAyMjVweDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcclxuICBwYWRkaW5nOiAwIDEwcHggMTFweCAzMHB4O1xyXG4gIG1hcmdpbjogMDtcclxuICB6LWluZGV4OiAxMDtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRibGFjaywgMTAlKTtcclxuICB9XHJcblxyXG4gIC5pY29uLW5leHQtY2lyY2xlIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGhlaWdodDogMjZweDtcclxuICAgICAgd2lkdGg6IDI2cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQtbC4uLiApIHtcclxuICAgIHRvcDogMTE1cHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteGwuLi4gKSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IGF1dG87XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogNDtcclxuICAgIGhlaWdodDogNjRweDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIGRhcmtlbigkY29sb3Itc2VsZWN0aW9uLCAxMCUpO1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLW5leHQtY2lyY2xlIHtcclxuICAgICAgdG9wOiAwLjc1ZW07XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGhlaWdodDogMzVweDtcclxuICAgICAgICB3aWR0aDogMzVweDtcclxuICAgICAgICBmb250LXNpemU6IDM1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCBcInNoYXJlZFwiO1xuXG4vLyBAZG9jIG9mZlxuLy8gTm90ZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTYWZhcmksIENocm9tZSwgYW5kIEZpcmVmb3ggYWxsIHN1cHBvcnQgM0QgdHJhbnNmb3Jtcy4gSG93ZXZlcixcbi8vIG9ubHkgaW4gdGhlIG1vc3QgcmVjZW50IGJ1aWxkcy4gWW91IHNob3VsZCBhbHNvIHByb3ZpZGUgZmFsbGJhY2sgMmQgc3VwcG9ydCBmb3Jcbi8vIE9wZXJhIGFuZCBJRS4gSUUxMCBpcyBzbGF0ZWQgdG8gaGF2ZSAzZCBlbmFibGVkLCBidXQgaXMgY3VycmVudGx5IHVucmVsZWFzZWQuXG4vLyBUbyBtYWtlIHRoYXQgZWFzeSwgYWxsIDJEIHRyYW5zZm9ybXMgaW5jbHVkZSBhbiBicm93c2VyLXRhcmdldGluZyB0b2dnbGUgKCRvbmx5M2QpXG4vLyB0byBzd2l0Y2ggYmV0d2VlbiB0aGUgdHdvIHN1cHBvcnQgbGlzdHMuIFRoZSB0b2dnbGUgZGVmYXVsdHMgdG8gJ2ZhbHNlJyAoMkQpLFxuLy8gYW5kIGFsc28gYWNjZXB0cyAndHJ1ZScgKDNEKS4gQ3VycmVudGx5IHRoZSBsaXN0cyBhcmUgYXMgZm9sbG93czpcbi8vIDJEOiBNb3ppbGxhLCBXZWJraXQsIE9wZXJhLCBPZmZpY2lhbFxuLy8gM0Q6IFdlYmtpdCwgRmlyZWZveC5cblxuLy8gQXZhaWxhYmxlIFRyYW5zZm9ybXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFNjYWxlICgyZCBhbmQgM2QpXG4vLyAtIFJvdGF0ZSAoMmQgYW5kIDNkKVxuLy8gLSBUcmFuc2xhdGUgKDJkIGFuZCAzZClcbi8vIC0gU2tldyAoMmQgb25seSlcblxuLy8gVHJhbnNmb3JtIFBhcmFtZXRlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFRyYW5zZm9ybSBPcmlnaW4gKDJkIGFuZCAzZClcbi8vIC0gUGVyc3BlY3RpdmUgKDNkKVxuLy8gLSBQZXJzcGVjdGl2ZSBPcmlnaW4gKDNkKVxuLy8gLSBUcmFuc2Zvcm0gU3R5bGUgKDNkKVxuLy8gLSBCYWNrZmFjZSBWaXNpYmlsaXR5ICgzZClcblxuLy8gTWl4aW5zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyB0cmFuc2Zvcm0tb3JpZ2luXG4vLyAgLSBzaG9ydGN1dHM6ICB0cmFuc2Zvcm0tb3JpZ2luMmQsIHRyYW5zZm9ybS1vcmlnaW4zZFxuLy8gIC0gaGVscGVyczogICAgYXBwbHktb3JpZ2luXG4vLyB0cmFuc2Zvcm1cbi8vICAtIHNob3J0Y3V0czogIHRyYW5zZm9ybTJkLCB0cmFuc2Zvcm0zZFxuLy8gIC0gaGVscGVyczogICAgc2ltcGxlLXRyYW5zZm9ybSwgY3JlYXRlLXRyYW5zZm9ybVxuLy8gcGVyc3BlY3RpdmVcbi8vICAtIGhlbHBlcnM6ICAgIHBlcnNwZWN0aXZlLW9yaWdpblxuLy8gdHJhbnNmb3JtLXN0eWxlXG4vLyBiYWNrZmFjZS12aXNpYmlsaXR5XG4vLyBzY2FsZVxuLy8gIC0gc2hvcnRjdXRzOiAgc2NhbGVYLCBzY2FsZVksIHNjYWxlWiwgc2NhbGUzZFxuLy8gcm90YXRlXG4vLyAgLSBzaG9ydGN1dHM6ICByb3RhdGVYLCByb3RhdGVZLCByb3RhdGUzZFxuLy8gdHJhbnNsYXRlXG4vLyAgLSBzaG9ydGN1dHM6ICB0cmFuc2xhdGVYLCB0cmFuc2xhdGVZLCB0cmFuc2xhdGVaLCB0cmFuc2xhdGUzZFxuLy8gc2tld1xuLy8gIC0gc2hvcnRjdXRzOiAgc2tld1gsIHNrZXdZXG5cbi8vIERlZmF1bHRzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQGRvYyBvblxuXG4vLyBUaGUgZGVmYXVsdCB4LW9yaWdpbiBmb3IgdHJhbnNmb3Jtc1xuJGRlZmF1bHQtb3JpZ2luLXggICAgOiA1MCUgICAgICAgICAgICAgICAgICAgIWRlZmF1bHQ7XG4vLyBUaGUgZGVmYXVsdCB5LW9yaWdpbiBmb3IgdHJhbnNmb3Jtc1xuJGRlZmF1bHQtb3JpZ2luLXkgICAgOiA1MCUgICAgICAgICAgICAgICAgICAgIWRlZmF1bHQ7XG4vLyBUaGUgZGVmYXVsdCB6LW9yaWdpbiBmb3IgdHJhbnNmb3Jtc1xuJGRlZmF1bHQtb3JpZ2luLXogICAgOiA1MCUgICAgICAgICAgICAgICAgICAgIWRlZmF1bHQ7XG5cblxuLy8gVGhlIGRlZmF1bHQgeC1tdWx0aXBsaWVyIGZvciBzY2FsaW5nXG4kZGVmYXVsdC1zY2FsZS14ICAgICA6IDEuMjUgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcbi8vIFRoZSBkZWZhdWx0IHktbXVsdGlwbGllciBmb3Igc2NhbGluZ1xuJGRlZmF1bHQtc2NhbGUteSAgICAgOiAkZGVmYXVsdC1zY2FsZS14ICAgICAgIWRlZmF1bHQ7XG4vLyBUaGUgZGVmYXVsdCB6LW11bHRpcGxpZXIgZm9yIHNjYWxpbmdcbiRkZWZhdWx0LXNjYWxlLXogICAgIDogJGRlZmF1bHQtc2NhbGUteCAgICAgICFkZWZhdWx0O1xuXG5cbi8vIFRoZSBkZWZhdWx0IGFuZ2xlIGZvciByb3RhdGlvbnNcbiRkZWZhdWx0LXJvdGF0ZSAgICAgIDogNDVkZWcgICAgICAgICAgICAgICAgICFkZWZhdWx0O1xuXG5cbi8vIFRoZSBkZWZhdWx0IHgtdmVjdG9yIGZvciB0aGUgYXhpcyBvZiAzZCByb3RhdGlvbnNcbiRkZWZhdWx0LXZlY3Rvci14ICAgIDogMSAgICAgICAgICAgICAgICAgICAgICFkZWZhdWx0O1xuLy8gVGhlIGRlZmF1bHQgeS12ZWN0b3IgZm9yIHRoZSBheGlzIG9mIDNkIHJvdGF0aW9uc1xuJGRlZmF1bHQtdmVjdG9yLXkgICAgOiAxICAgICAgICAgICAgICAgICAgICAgIWRlZmF1bHQ7XG4vLyBUaGUgZGVmYXVsdCB6LXZlY3RvciBmb3IgdGhlIGF4aXMgb2YgM2Qgcm90YXRpb25zXG4kZGVmYXVsdC12ZWN0b3IteiAgICA6IDEgICAgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcblxuXG4vLyBUaGUgZGVmYXVsdCB4LWxlbmd0aCBmb3IgdHJhbnNsYXRpb25zXG4kZGVmYXVsdC10cmFuc2xhdGUteCA6IDFlbSAgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcbi8vIFRoZSBkZWZhdWx0IHktbGVuZ3RoIGZvciB0cmFuc2xhdGlvbnNcbiRkZWZhdWx0LXRyYW5zbGF0ZS15IDogJGRlZmF1bHQtdHJhbnNsYXRlLXggICFkZWZhdWx0O1xuLy8gVGhlIGRlZmF1bHQgei1sZW5ndGggZm9yIHRyYW5zbGF0aW9uc1xuJGRlZmF1bHQtdHJhbnNsYXRlLXogOiAkZGVmYXVsdC10cmFuc2xhdGUteCAgIWRlZmF1bHQ7XG5cblxuLy8gVGhlIGRlZmF1bHQgeC1hbmdsZSBmb3Igc2tld2luZ1xuJGRlZmF1bHQtc2tldy14ICAgICAgOiA1ZGVnICAgICAgICAgICAgICAgICAgIWRlZmF1bHQ7XG4vLyBUaGUgZGVmYXVsdCB5LWFuZ2xlIGZvciBza2V3aW5nXG4kZGVmYXVsdC1za2V3LXkgICAgICA6IDVkZWcgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcblxuXG4vLyAqKlRyYW5zZm9ybS1vcmlnaW4qKlxuLy8gVHJhbnNmb3JtLW9yaWdpbiBzZW50IGFzIGEgY29tcGxldGUgc3RyaW5nXG4vL1xuLy8gICAgIEBpbmNsdWRlIGFwcGx5LW9yaWdpbiggb3JpZ2luIFssIDNELW9ubHkgXSApXG4vL1xuLy8gd2hlcmUgJ29yaWdpbicgaXMgYSBzcGFjZSBzZXBhcmF0ZWQgbGlzdCBjb250YWluaW5nIDEtMyAoeC95L3opIGNvb3JkaW5hdGVzXG4vLyBpbiBwZXJjZW50YWdlcywgYWJzb2x1dGUgKHB4LCBjbSwgaW4sIGVtIGV0Yy4uKSBvciByZWxhdGl2ZVxuLy8gKGxlZnQsIHRvcCwgcmlnaHQsIGJvdHRvbSwgY2VudGVyKSB1bml0c1xuLy9cbi8vIEBwYXJhbSBvbmx5M2QgU2V0IHRoaXMgdG8gdHJ1ZSB0byBvbmx5IGFwcGx5IHRoaXNcbi8vIG1peGluIHdoZXJlIGJyb3dzZXJzIGhhdmUgM0Qgc3VwcG9ydC5cbkBtaXhpbiBhcHBseS1vcmlnaW4oJG9yaWdpbiwgJG9ubHkzZCkge1xuICAkb25seTNkOiAkb25seTNkIG9yIC1jb21wYXNzLWxpc3Qtc2l6ZSgtY29tcGFzcy1saXN0KCRvcmlnaW4pKSA+IDI7XG4gIEBpZiAkb25seTNkIHtcbiAgICBAaW5jbHVkZSBleHBlcmltZW50YWwodHJhbnNmb3JtLW9yaWdpbiwgJG9yaWdpbixcbiAgICAgIC1tb3osIC13ZWJraXQsIC1vLCAtbXMsIG5vdCgta2h0bWwpLCBvZmZpY2lhbFxuICAgICk7XG4gIH0gQGVsc2Uge1xuICAgIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh0cmFuc2Zvcm0tb3JpZ2luLCAkb3JpZ2luLFxuICAgICAgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICAgKTtcbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm0tb3JpZ2luIHNlbnQgYXMgaW5kaXZpZHVhbCBhcmd1bWVudHM6XG4vL1xuLy8gICAgIEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oIFsgb3JpZ2luLXgsIG9yaWdpbi15LCBvcmlnaW4teiwgM0Qtb25seSBdIClcbi8vXG4vLyB3aGVyZSB0aGUgMyAnb3JpZ2luLScgYXJndW1lbnRzIHJlcHJlc2VudCB4L3kveiBjb29yZGluYXRlcy5cbi8vXG4vLyAqKk5PVEU6Kiogc2V0dGluZyB6IGNvb3JkaW5hdGVzIHRyaWdnZXJzIDNEIHN1cHBvcnQgbGlzdCwgbGVhdmUgZmFsc2UgZm9yIDJEIHN1cHBvcnRcbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKFxuICAkb3JpZ2luLXg6ICRkZWZhdWx0LW9yaWdpbi14LFxuICAkb3JpZ2luLXk6ICRkZWZhdWx0LW9yaWdpbi15LFxuICAkb3JpZ2luLXo6IGZhbHNlLFxuICAkb25seTNkOiAgIGlmKCRvcmlnaW4teiwgdHJ1ZSwgZmFsc2UpXG4pIHtcbiAgJG9yaWdpbjogdW5xdW90ZSgnJyk7XG4gIEBpZiAkb3JpZ2luLXggb3IgJG9yaWdpbi15IG9yICRvcmlnaW4teiB7XG4gICAgQGlmICRvcmlnaW4teCB7ICRvcmlnaW46ICRvcmlnaW4teDsgfSBAZWxzZSB7ICRvcmlnaW46IDUwJTsgfVxuICAgIEBpZiAkb3JpZ2luLXkgeyAkb3JpZ2luOiAkb3JpZ2luICRvcmlnaW4teTsgfSBAZWxzZSB7IEBpZiAkb3JpZ2luLXogeyAkb3JpZ2luOiAkb3JpZ2luIDUwJTsgfX1cbiAgICBAaWYgJG9yaWdpbi16IHsgJG9yaWdpbjogJG9yaWdpbiAkb3JpZ2luLXo7IH1cbiAgICBAaW5jbHVkZSBhcHBseS1vcmlnaW4oJG9yaWdpbiwgJG9ubHkzZCk7XG4gIH1cbn1cblxuXG4vLyBUcmFuc2Zvcm0gc2VudCBhcyBhIGNvbXBsZXRlIHN0cmluZzpcbi8vXG4vLyAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2Zvcm1zIFssIDNELW9ubHkgXSApXG4vL1xuLy8gd2hlcmUgJ3RyYW5zZm9ybXMnIGlzIGEgc3BhY2Ugc2VwYXJhdGVkIGxpc3Qgb2YgYWxsIHRoZSB0cmFuc2Zvcm1zIHRvIGJlIGFwcGxpZWQuXG5AbWl4aW4gdHJhbnNmb3JtKFxuICAkdHJhbnNmb3JtLFxuICAkb25seTNkOiBmYWxzZVxuKSB7XG4gIEBpZiAkb25seTNkIHtcbiAgICBAaW5jbHVkZSBleHBlcmltZW50YWwodHJhbnNmb3JtLCAkdHJhbnNmb3JtLFxuICAgICAgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICAgKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHRyYW5zZm9ybSwgJHRyYW5zZm9ybSxcbiAgICAgIC1tb3osIC13ZWJraXQsIC1vLCAtbXMsIG5vdCgta2h0bWwpLCBvZmZpY2lhbFxuICAgICk7XG4gIH1cbn1cblxuLy8gU2hvcnRjdXQgdG8gdGFyZ2V0IGFsbCBicm93c2VycyB3aXRoIDJEIHRyYW5zZm9ybSBzdXBwb3J0XG5AbWl4aW4gdHJhbnNmb3JtMmQoJHRyYW5zKSB7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsIGZhbHNlKTtcbn1cblxuLy8gU2hvcnRjdXQgdG8gdGFyZ2V0IG9ubHkgYnJvd3NlcnMgd2l0aCAzRCB0cmFuc2Zvcm0gc3VwcG9ydFxuQG1peGluIHRyYW5zZm9ybTNkKCR0cmFucykge1xuICBAaW5jbHVkZSB0cmFuc2Zvcm0oJHRyYW5zLCB0cnVlKTtcbn1cblxuLy8gQGRvYyBvZmZcbi8vIDNEIFBhcmFtZXRlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQGRvYyBvblxuXG4vLyBTZXQgdGhlIHBlcnNwZWN0aXZlIG9mIDNEIHRyYW5zZm9ybXMgb24gdGhlIGNoaWxkcmVuIG9mIGFuIGVsZW1lbnQ6XG4vL1xuLy8gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZSggcGVyc3BlY3RpdmUgKVxuLy9cbi8vIHdoZXJlICdwZXJzcGVjdGl2ZScgaXMgYSB1bml0bGVzcyBudW1iZXIgcmVwcmVzZW50aW5nIHRoZSBkZXB0aCBvZiB0aGVcbi8vIHotYXhpcy4gVGhlIGhpZ2hlciB0aGUgcGVyc3BlY3RpdmUsIHRoZSBtb3JlIGV4YWdnZXJhdGVkIHRoZSBmb3Jlc2hvcnRlbmluZy5cbi8vIHZhbHVlcyBmcm9tIDUwMCB0byAxMDAwIGFyZSBtb3JlLW9yLWxlc3MgXCJub3JtYWxcIiAtIGEgZ29vZCBzdGFydGluZy1wb2ludC5cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcCkge1xuICBAaW5jbHVkZSBleHBlcmltZW50YWwocGVyc3BlY3RpdmUsICRwLFxuICAgIC1tb3osIC13ZWJraXQsIC1vLCAtbXMsIG5vdCgta2h0bWwpLCBvZmZpY2lhbFxuICApO1xufVxuXG4vLyBTZXQgdGhlIG9yaWdpbiBwb3NpdGlvbiBmb3IgdGhlIHBlcnNwZWN0aXZlXG4vL1xuLy8gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZS1vcmlnaW4ob3JpZ2luLXggW29yaWdpbi15XSlcbi8vXG4vLyB3aGVyZSB0aGUgdHdvIGFyZ3VtZW50cyByZXByZXNlbnQgeC95IGNvb3JkaW5hdGVzXG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRvcmlnaW46IDUwJSkge1xuICBAaW5jbHVkZSBleHBlcmltZW50YWwocGVyc3BlY3RpdmUtb3JpZ2luLCAkb3JpZ2luLFxuICAgIC1tb3osIC13ZWJraXQsIC1vLCAtbXMsIG5vdCgta2h0bWwpLCBvZmZpY2lhbFxuICApO1xufVxuXG4vLyBEZXRlcm1pbmUgd2hldGhlciBhIDNEIG9iamVjdHMgY2hpbGRyZW4gYWxzbyBsaXZlIGluIHRoZSBnaXZlbiAzRCBzcGFjZVxuLy9cbi8vICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtLXN0eWxlKCBbIHN0eWxlIF0gKVxuLy9cbi8vIHdoZXJlIGBzdHlsZWAgY2FuIGJlIGVpdGhlciBgZmxhdGAgb3IgYHByZXNlcnZlLTNkYC5cbi8vIEJyb3dzZXJzIGRlZmF1bHQgdG8gYGZsYXRgLCBtaXhpbiBkZWZhdWx0cyB0byBgcHJlc2VydmUtM2RgLlxuQG1peGluIHRyYW5zZm9ybS1zdHlsZSgkc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh0cmFuc2Zvcm0tc3R5bGUsICRzdHlsZSxcbiAgICAtbW96LCAtd2Via2l0LCAtbywgLW1zLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgKTtcbn1cblxuLy8gRGV0ZXJtaW5lIHRoZSB2aXNpYmlsaXR5IG9mIGFuIGVsZW1lbnQgd2hlbiBpdCdzIGJhY2sgaXMgdHVybmVkXG4vL1xuLy8gICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoIFsgdmlzaWJpbGl0eSBdIClcbi8vXG4vLyB3aGVyZSBgdmlzaWJpbGl0eWAgY2FuIGJlIGVpdGhlciBgdmlzaWJsZWAgb3IgYGhpZGRlbmAuXG4vLyBCcm93c2VycyBkZWZhdWx0IHRvIHZpc2libGUsIG1peGluIGRlZmF1bHRzIHRvIGhpZGRlblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHk6IGhpZGRlbikge1xuICBAaW5jbHVkZSBleHBlcmltZW50YWwoYmFja2ZhY2UtdmlzaWJpbGl0eSwgJHZpc2liaWxpdHksXG4gICAgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICk7XG59XG5cbi8vIEBkb2Mgb2ZmXG4vLyBUcmFuc2Zvcm0gUGFydGlhbHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoZXNlIHdvcmsgd2VsbCBvbiB0aGVpciBvd24sIGJ1dCB0aGV5IGRvbid0IGFkZCB0byBlYWNoIG90aGVyLCB0aGV5IG92ZXJyaWRlLlxuLy8gVXNlIGFsb25nIHdpdGggdHJhbnNmb3JtIHBhcmFtZXRlciBtaXhpbnMgdG8gYWRqdXN0IG9yaWdpbiwgcGVyc3BlY3RpdmUgYW5kIHN0eWxlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBTY2FsZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBkb2Mgb25cblxuLy8gU2NhbGUgYW4gb2JqZWN0IGFsb25nIHRoZSB4IGFuZCB5IGF4aXM6XG4vL1xuLy8gICAgICBAaW5jbHVkZSBzY2FsZSggWyBzY2FsZS14LCBzY2FsZS15LCBwZXJzcGVjdGl2ZSwgM0Qtb25seSBdIClcbi8vXG4vLyB3aGVyZSB0aGUgJ3NjYWxlLScgYXJndW1lbnRzIGFyZSB1bml0bGVzcyBtdWx0aXBsaWVycyBvZiB0aGUgeCBhbmQgeSBkaW1lbnNpb25zXG4vLyBhbmQgcGVyc3BlY3RpdmUsIHdoaWNoIHdvcmtzIHRoZSBzYW1lIGFzIHRoZSBzdGFuZC1hbG9uZSBwZXJzcGVjdGl2ZSBwcm9wZXJ0eS9taXhpblxuLy8gYnV0IGFwcGxpZXMgdG8gdGhlIGluZGl2aWR1YWwgZWxlbWVudCAobXVsdGlwbGllZCB3aXRoIGFueSBwYXJlbnQgcGVyc3BlY3RpdmUpXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNjYWxlKFxuICAkc2NhbGUteDogICAgICRkZWZhdWx0LXNjYWxlLXgsXG4gICRzY2FsZS15OiAgICAgJHNjYWxlLXgsXG4gICRwZXJzcGVjdGl2ZTogZmFsc2UsXG4gICRvbmx5M2Q6ICAgICAgZmFsc2Vcbikge1xuICAkdHJhbnM6IHNjYWxlKCRzY2FsZS14LCAkc2NhbGUteSk7XG4gIEBpZiAkcGVyc3BlY3RpdmUgeyAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xufVxuXG4vLyBTY2FsZSBhbiBvYmplY3QgYWxvbmcgdGhlIHggYXhpc1xuLy8gQGluY2x1ZGUgc2NhbGVYKCBbIHNjYWxlLXgsIHBlcnNwZWN0aXZlLCAzRC1vbmx5IF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBzY2FsZVgoXG4gICRzY2FsZTogICAgICAgJGRlZmF1bHQtc2NhbGUteCxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gICR0cmFuczogc2NhbGVYKCRzY2FsZSk7XG4gIEBpZiAkcGVyc3BlY3RpdmUgeyAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xufVxuXG4vLyBTY2FsZSBhbiBvYmplY3QgYWxvbmcgdGhlIHkgYXhpc1xuLy8gQGluY2x1ZGUgc2NhbGVZKCBbIHNjYWxlLXksIHBlcnNwZWN0aXZlLCAzRC1vbmx5IF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBzY2FsZVkoXG4gICRzY2FsZTogICAgICAgJGRlZmF1bHQtc2NhbGUteSxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gICR0cmFuczogc2NhbGVZKCRzY2FsZSk7XG4gIEBpZiAkcGVyc3BlY3RpdmUgeyAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xufVxuXG4vLyBTY2FsZSBhbiBvYmplY3QgYWxvbmcgdGhlIHogYXhpc1xuLy8gQGluY2x1ZGUgc2NhbGVaKCBbIHNjYWxlLXosIHBlcnNwZWN0aXZlIF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBzY2FsZVooXG4gICRzY2FsZTogJGRlZmF1bHQtc2NhbGUteixcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZVxuKSB7XG4gICR0cmFuczogc2NhbGVaKCRzY2FsZSk7XG4gIEBpZiAkcGVyc3BlY3RpdmUgeyAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybTNkKCR0cmFucyk7XG59XG5cbi8vIFNjYWxlIGFuZCBvYmplY3QgYWxvbmcgYWxsIHRocmVlIGF4aXNcbi8vIEBpbmNsdWRlIHNjYWxlM2QoIFsgc2NhbGUteCwgc2NhbGUteSwgc2NhbGUteiwgcGVyc3BlY3RpdmUgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNjYWxlM2QoXG4gICRzY2FsZS14OiAgICAgJGRlZmF1bHQtc2NhbGUteCxcbiAgJHNjYWxlLXk6ICAgICAkZGVmYXVsdC1zY2FsZS15LFxuICAkc2NhbGUtejogICAgICRkZWZhdWx0LXNjYWxlLXosXG4gICRwZXJzcGVjdGl2ZTogZmFsc2Vcbikge1xuICAkdHJhbnM6IHNjYWxlM2QoJHNjYWxlLXgsICRzY2FsZS15LCAkc2NhbGUteik7XG4gIEBpZiAkcGVyc3BlY3RpdmUgeyAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybTNkKCR0cmFucyk7XG59XG5cbi8vIEBkb2Mgb2ZmXG4vLyBSb3RhdGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBkb2Mgb25cblxuLy8gUm90YXRlIGFuIG9iamVjdCBhcm91bmQgdGhlIHogYXhpcyAgKDJEKVxuLy8gQGluY2x1ZGUgcm90YXRlKCBbIHJvdGF0aW9uLCBwZXJzcGVjdGl2ZSwgM0Qtb25seSBdIClcbi8vIHdoZXJlICdyb3RhdGlvbicgaXMgYW4gYW5nbGUgc2V0IGluIGRlZ3JlZXMgKGRlZykgb3IgcmFkaWFuIChyYWQpIHVuaXRzXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHJvdGF0ZShcbiAgJHJvdGF0ZTogICAgICAkZGVmYXVsdC1yb3RhdGUsXG4gICRwZXJzcGVjdGl2ZTogZmFsc2UsXG4gICRvbmx5M2Q6ICAgICAgZmFsc2Vcbikge1xuICAkdHJhbnM6IHJvdGF0ZSgkcm90YXRlKTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG59XG5cbi8vIEEgbG9uZ2N1dCBmb3IgJ3JvdGF0ZScgaW4gY2FzZSB5b3UgZm9yZ2V0IHRoYXQgJ3onIGlzIGltcGxpZWRcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gcm90YXRlWihcbiAgJHJvdGF0ZTogICAgICAkZGVmYXVsdC1yb3RhdGUsXG4gICRwZXJzcGVjdGl2ZTogZmFsc2UsXG4gICRvbmx5M2Q6ICAgICAgZmFsc2Vcbikge1xuICBAaW5jbHVkZSByb3RhdGUoJHJvdGF0ZSwgJHBlcnNwZWN0aXZlLCAkb25seTNkKTtcbn1cblxuLy8gUm90YXRlIGFuIG9iamVjdCBhcm91bmQgdGhlIHggYXhpcyAoM0QpXG4vLyBAaW5jbHVkZSByb3RhdGVYKCBbIHJvdGF0aW9uLCBwZXJzcGVjdGl2ZSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gcm90YXRlWChcbiAgJHJvdGF0ZTogJGRlZmF1bHQtcm90YXRlLFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlXG4pIHtcbiAgJHRyYW5zOiByb3RhdGVYKCRyb3RhdGUpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0zZCgkdHJhbnMpO1xufVxuXG4vLyBSb3RhdGUgYW4gb2JqZWN0IGFyb3VuZCB0aGUgeSBheGlzICgzRClcbi8vIEBpbmNsdWRlIHJvdGF0ZSggWyByb3RhdGlvbiwgcGVyc3BlY3RpdmUgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHJvdGF0ZVkoXG4gICRyb3RhdGU6ICRkZWZhdWx0LXJvdGF0ZSxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZVxuKSB7XG4gICR0cmFuczogcm90YXRlWSgkcm90YXRlKTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtM2QoJHRyYW5zKTtcbn1cblxuLy8gUm90YXRlIGFuIG9iamVjdCBhcm91bmQgYW4gYXJiaXRyYXJ5IGF4aXMgKDNEKVxuLy8gQGluY2x1ZGUgcm90YXRlKCBbIHZlY3Rvci14LCB2ZWN0b3IteSwgdmVjdG9yLXosIHJvdGF0aW9uLCBwZXJzcGVjdGl2ZSBdIClcbi8vIHdoZXJlIHRoZSAndmVjdG9yLScgYXJndW1lbnRzIGFjY2VwdCB1bml0bGVzcyBudW1iZXJzLlxuLy8gVGhlc2UgbnVtYmVycyBhcmUgbm90IGltcG9ydGFudCBvbiB0aGVpciBvd24sIGJ1dCBpbiByZWxhdGlvbiB0byBvbmUgYW5vdGhlclxuLy8gY3JlYXRpbmcgYW4gYXhpcyBmcm9tIHlvdXIgdHJhbnNmb3JtLW9yaWdpbiwgYWxvbmcgdGhlIGF4aXMgb2YgWHggPSBZeSA9IFp6LlxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiByb3RhdGUzZChcbiAgJHZlY3Rvci14OiAkZGVmYXVsdC12ZWN0b3IteCxcbiAgJHZlY3Rvci15OiAkZGVmYXVsdC12ZWN0b3IteSxcbiAgJHZlY3Rvci16OiAkZGVmYXVsdC12ZWN0b3IteixcbiAgJHJvdGF0ZTogJGRlZmF1bHQtcm90YXRlLFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlXG4pIHtcbiAgJHRyYW5zOiByb3RhdGUzZCgkdmVjdG9yLXgsICR2ZWN0b3IteSwgJHZlY3Rvci16LCAkcm90YXRlKTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtM2QoJHRyYW5zKTtcbn1cblxuLy8gQGRvYyBvZmZcbi8vIFRyYW5zbGF0ZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQGRvYyBvblxuXG4vLyBNb3ZlIGFuIG9iamVjdCBhbG9uZyB0aGUgeCBvciB5IGF4aXMgKDJEKVxuLy8gQGluY2x1ZGUgdHJhbnNsYXRlKCBbIHRyYW5zbGF0ZS14LCB0cmFuc2xhdGUteSwgcGVyc3BlY3RpdmUsIDNELW9ubHkgXSApXG4vLyB3aGVyZSB0aGUgJ3RyYW5zbGF0ZS0nIGFyZ3VtZW50cyBhY2NlcHQgYW55IGRpc3RhbmNlIGluIHBlcmNlbnRhZ2VzIG9yIGFic29sdXRlIChweCwgY20sIGluLCBlbSBldGMuLikgdW5pdHMuXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHRyYW5zbGF0ZShcbiAgJHRyYW5zbGF0ZS14OiAkZGVmYXVsdC10cmFuc2xhdGUteCxcbiAgJHRyYW5zbGF0ZS15OiAkZGVmYXVsdC10cmFuc2xhdGUteSxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gICR0cmFuczogdHJhbnNsYXRlKCR0cmFuc2xhdGUteCwgJHRyYW5zbGF0ZS15KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG59XG5cbi8vIE1vdmUgYW4gb2JqZWN0IGFsb25nIHRoZSB4IGF4aXMgKDJEKVxuLy8gQGluY2x1ZGUgdHJhbnNsYXRlKCBbIHRyYW5zbGF0ZS14LCBwZXJzcGVjdGl2ZSwgM0Qtb25seSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gdHJhbnNsYXRlWChcbiAgJHRyYW5zLXg6ICAgICAkZGVmYXVsdC10cmFuc2xhdGUteCxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gICR0cmFuczogdHJhbnNsYXRlWCgkdHJhbnMteCk7XG4gIEBpZiAkcGVyc3BlY3RpdmUgeyAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xufVxuXG4vLyBNb3ZlIGFuIG9iamVjdCBhbG9uZyB0aGUgeSBheGlzICgyRClcbi8vIEBpbmNsdWRlIHRyYW5zbGF0ZSggWyB0cmFuc2xhdGUteSwgcGVyc3BlY3RpdmUsIDNELW9ubHkgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHRyYW5zbGF0ZVkoXG4gICR0cmFucy15OiAgICAgJGRlZmF1bHQtdHJhbnNsYXRlLXksXG4gICRwZXJzcGVjdGl2ZTogZmFsc2UsXG4gICRvbmx5M2Q6ICAgICAgZmFsc2Vcbikge1xuICAkdHJhbnM6IHRyYW5zbGF0ZVkoJHRyYW5zLXkpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0oJHRyYW5zLCAkb25seTNkKTtcbn1cblxuLy8gTW92ZSBhbiBvYmplY3QgYWxvbmcgdGhlIHogYXhpcyAoM0QpXG4vLyBAaW5jbHVkZSB0cmFuc2xhdGUoIFsgdHJhbnNsYXRlLXosIHBlcnNwZWN0aXZlIF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiB0cmFuc2xhdGVaKFxuICAkdHJhbnMtejogICAgICRkZWZhdWx0LXRyYW5zbGF0ZS16LFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlXG4pIHtcbiAgJHRyYW5zOiB0cmFuc2xhdGVaKCR0cmFucy16KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtM2QoJHRyYW5zKTtcbn1cblxuLy8gTW92ZSBhbiBvYmplY3QgYWxvbmcgdGhlIHgsIHkgYW5kIHogYXhpcyAoM0QpXG4vLyBAaW5jbHVkZSB0cmFuc2xhdGUoIFsgdHJhbnNsYXRlLXgsIHRyYW5zbGF0ZS15LCB0cmFuc2xhdGUteiwgcGVyc3BlY3RpdmUgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHRyYW5zbGF0ZTNkKFxuICAkdHJhbnNsYXRlLXg6ICRkZWZhdWx0LXRyYW5zbGF0ZS14LFxuICAkdHJhbnNsYXRlLXk6ICRkZWZhdWx0LXRyYW5zbGF0ZS15LFxuICAkdHJhbnNsYXRlLXo6ICRkZWZhdWx0LXRyYW5zbGF0ZS16LFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlXG4pIHtcbiAgJHRyYW5zOiB0cmFuc2xhdGUzZCgkdHJhbnNsYXRlLXgsICR0cmFuc2xhdGUteSwgJHRyYW5zbGF0ZS16KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtM2QoJHRyYW5zKTtcbn1cblxuLy8gQGRvYyBvZmZcbi8vIFNrZXcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQGRvYyBvblxuXG4vLyBTa2V3IGFuIGVsZW1lbnQ6XG4vL1xuLy8gICAgIEBpbmNsdWRlIHNrZXcoIFsgc2tldy14LCBza2V3LXksIDNELW9ubHkgXSApXG4vL1xuLy8gd2hlcmUgdGhlICdza2V3LScgYXJndW1lbnRzIGFjY2VwdCBjc3MgYW5nbGVzIGluIGRlZ3JlZXMgKGRlZykgb3IgcmFkaWFuIChyYWQpIHVuaXRzLlxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBza2V3KFxuICAkc2tldy14OiAkZGVmYXVsdC1za2V3LXgsXG4gICRza2V3LXk6ICRkZWZhdWx0LXNrZXcteSxcbiAgJG9ubHkzZDogZmFsc2Vcbikge1xuICAkdHJhbnM6IHNrZXcoJHNrZXcteCwgJHNrZXcteSk7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xufVxuXG4vLyBTa2V3IGFuIGVsZW1lbnQgYWxvbmcgdGhlIHggYXhpelxuLy9cbi8vICAgICBAaW5jbHVkZSBza2V3KCBbIHNrZXcteCwgM0Qtb25seSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gc2tld1goXG4gICRza2V3LXg6ICRkZWZhdWx0LXNrZXcteCxcbiAgJG9ubHkzZDogZmFsc2Vcbikge1xuICAkdHJhbnM6IHNrZXdYKCRza2V3LXgpO1xuICBAaW5jbHVkZSB0cmFuc2Zvcm0oJHRyYW5zLCAkb25seTNkKTtcbn1cblxuLy8gU2tldyBhbiBlbGVtZW50IGFsb25nIHRoZSB5IGF4aXNcbi8vXG4vLyAgICAgQGluY2x1ZGUgc2tldyggWyBza2V3LXksIDNELW9ubHkgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNrZXdZKFxuICAkc2tldy15OiAkZGVmYXVsdC1za2V3LXksXG4gICRvbmx5M2Q6IGZhbHNlXG4pIHtcbiAgJHRyYW5zOiBza2V3WSgkc2tldy15KTtcbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG59XG5cblxuLy8gRnVsbCB0cmFuc2Zvcm0gbWl4aW5zXG4vLyBGb3Igc2V0dGluZ3MgYW55IGNvbWJpbmF0aW9uIG9mIHRyYW5zZm9ybXMgYXMgYXJndW1lbnRzXG4vLyBUaGVzZSBhcmUgY29tcGxleCBhbmQgbm90IGhpZ2hseSByZWNvbW1lbmRlZCBmb3IgZGFpbHkgdXNlLiBUaGV5IGFyZSBtYWlubHlcbi8vIGhlcmUgZm9yIGJhY2t3YXJkLWNvbXBhdGliaWxpdHkgcHVycG9zZXMuXG4vL1xuLy8gKiB0aGV5IGluY2x1ZGUgb3JpZ2luIGFkanVzdG1lbnRzXG4vLyAqIHNjYWxlIHRha2VzIGEgbXVsdGlwbGllciAodW5pdGxlc3MpLCByb3RhdGUgYW5kIHNrZXcgdGFrZSBkZWdyZWVzIChkZWcpXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIGNyZWF0ZS10cmFuc2Zvcm0oXG4gICRwZXJzcGVjdGl2ZTogZmFsc2UsXG4gICRzY2FsZS14OiAgICAgZmFsc2UsXG4gICRzY2FsZS15OiAgICAgZmFsc2UsXG4gICRzY2FsZS16OiAgICAgZmFsc2UsXG4gICRyb3RhdGUteDogICAgZmFsc2UsXG4gICRyb3RhdGUteTogICAgZmFsc2UsXG4gICRyb3RhdGUtejogICAgZmFsc2UsXG4gICRyb3RhdGUzZDogICAgZmFsc2UsXG4gICR0cmFucy14OiAgICAgZmFsc2UsXG4gICR0cmFucy15OiAgICAgZmFsc2UsXG4gICR0cmFucy16OiAgICAgZmFsc2UsXG4gICRza2V3LXg6ICAgICAgZmFsc2UsXG4gICRza2V3LXk6ICAgICAgZmFsc2UsXG4gICRvcmlnaW4teDogICAgZmFsc2UsXG4gICRvcmlnaW4teTogICAgZmFsc2UsXG4gICRvcmlnaW4tejogICAgZmFsc2UsXG4gICRvbmx5M2Q6ICAgICAgZmFsc2Vcbikge1xuICAkdHJhbnM6IHVucXVvdGUoXCJcIik7XG5cbiAgLy8gcGVyc3BlY3RpdmVcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSA7IH1cblxuICAvLyBzY2FsZVxuICBAaWYgJHNjYWxlLXggYW5kICRzY2FsZS15IHtcbiAgICBAaWYgJHNjYWxlLXogeyAkdHJhbnM6ICR0cmFucyBzY2FsZTNkKCRzY2FsZS14LCAkc2NhbGUteSwgJHNjYWxlLXopOyB9XG4gICAgQGVsc2UgeyAkdHJhbnM6ICR0cmFucyBzY2FsZSgkc2NhbGUteCwgJHNjYWxlLXkpOyB9XG4gIH0gQGVsc2Uge1xuICAgIEBpZiAkc2NhbGUteCB7ICR0cmFuczogJHRyYW5zIHNjYWxlWCgkc2NhbGUteCk7IH1cbiAgICBAaWYgJHNjYWxlLXkgeyAkdHJhbnM6ICR0cmFucyBzY2FsZVkoJHNjYWxlLXkpOyB9XG4gICAgQGlmICRzY2FsZS16IHsgJHRyYW5zOiAkdHJhbnMgc2NhbGVaKCRzY2FsZS16KTsgfVxuICB9XG5cbiAgLy8gcm90YXRlXG4gIEBpZiAkcm90YXRlLXggeyAkdHJhbnM6ICR0cmFucyByb3RhdGVYKCRyb3RhdGUteCk7IH1cbiAgQGlmICRyb3RhdGUteSB7ICR0cmFuczogJHRyYW5zIHJvdGF0ZVkoJHJvdGF0ZS15KTsgfVxuICBAaWYgJHJvdGF0ZS16IHsgJHRyYW5zOiAkdHJhbnMgcm90YXRlWigkcm90YXRlLXopOyB9XG4gIEBpZiAkcm90YXRlM2QgeyAkdHJhbnM6ICR0cmFucyByb3RhdGUzZCgkcm90YXRlM2QpOyB9XG5cbiAgLy8gdHJhbnNsYXRlXG4gIEBpZiAkdHJhbnMteCBhbmQgJHRyYW5zLXkge1xuICAgIEBpZiAkdHJhbnMteiB7ICR0cmFuczogJHRyYW5zIHRyYW5zbGF0ZTNkKCR0cmFucy14LCAkdHJhbnMteSwgJHRyYW5zLXopOyB9XG4gICAgQGVsc2UgeyAkdHJhbnM6ICR0cmFucyB0cmFuc2xhdGUoJHRyYW5zLXgsICR0cmFucy15KTsgfVxuICB9IEBlbHNlIHtcbiAgICBAaWYgJHRyYW5zLXggeyAkdHJhbnM6ICR0cmFucyB0cmFuc2xhdGVYKCR0cmFucy14KTsgfVxuICAgIEBpZiAkdHJhbnMteSB7ICR0cmFuczogJHRyYW5zIHRyYW5zbGF0ZVkoJHRyYW5zLXkpOyB9XG4gICAgQGlmICR0cmFucy16IHsgJHRyYW5zOiAkdHJhbnMgdHJhbnNsYXRlWigkdHJhbnMteik7IH1cbiAgfVxuXG4gIC8vIHNrZXdcbiAgQGlmICRza2V3LXggYW5kICRza2V3LXkgeyAkdHJhbnM6ICR0cmFucyBza2V3KCRza2V3LXgsICRza2V3LXkpOyB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHNrZXcteCB7ICR0cmFuczogJHRyYW5zIHNrZXdYKCRza2V3LXgpOyB9XG4gICAgQGlmICRza2V3LXkgeyAkdHJhbnM6ICR0cmFucyBza2V3WSgkc2tldy15KTsgfVxuICB9XG5cbiAgLy8gYXBwbHkgaXQhXG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xuICBAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4teCwgJG9yaWdpbi15LCAkb3JpZ2luLXosICRvbmx5M2QpO1xufVxuXG5cbi8vIEEgc2ltcGxpZmllZCBzZXQgb2Ygb3B0aW9uc1xuLy8gYmFja3dhcmRzLWNvbXBhdGlibGUgd2l0aCB0aGUgcHJldmlvdXMgdmVyc2lvbiBvZiB0aGUgJ3RyYW5zZm9ybScgbWl4aW5cbkBtaXhpbiBzaW1wbGUtdHJhbnNmb3JtKFxuICAkc2NhbGU6ICAgIGZhbHNlLFxuICAkcm90YXRlOiAgIGZhbHNlLFxuICAkdHJhbnMteDogIGZhbHNlLFxuICAkdHJhbnMteTogIGZhbHNlLFxuICAkc2tldy14OiAgIGZhbHNlLFxuICAkc2tldy15OiAgIGZhbHNlLFxuICAkb3JpZ2luLXg6IGZhbHNlLFxuICAkb3JpZ2luLXk6IGZhbHNlXG4pIHtcbiAgQGluY2x1ZGUgY3JlYXRlLXRyYW5zZm9ybShcbiAgICBmYWxzZSxcbiAgICAkc2NhbGUsICRzY2FsZSwgZmFsc2UsXG4gICAgZmFsc2UsIGZhbHNlLCAkcm90YXRlLCBmYWxzZSxcbiAgICAkdHJhbnMteCwgJHRyYW5zLXksIGZhbHNlLFxuICAgICRza2V3LXgsICRza2V3LXksXG4gICAgJG9yaWdpbi14LCAkb3JpZ2luLXksIGZhbHNlLFxuICAgIGZhbHNlXG4gICk7XG59XG4iLCJcclxuJGltYWdlLWJsb2NrLWxheW91dC14bDogam9pbigoIHB4LXRvLWVtKDEwMDBweCksICRjb2xzLXhsKSwgJGxheW91dC1pZS1mYWxsYmFjayk7XHJcblxyXG4uaW1hZ2UtYmxvY2sge1xyXG4gIEBleHRlbmQgJWNsZWFyZml4O1xyXG4gIEBleHRlbmQgLnNlY3Rpb247XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICYtLWxlZnQsXHJcbiAgJi0tcmlnaHQgeyBAZXh0ZW5kIC5pbWFnZS1ibG9jazsgfVxyXG5cclxuICAmX19jb250YWluZXIge1xyXG4gICAgI3sgJGxheW91dC1pZS1mYWxsYmFjayB9ICYge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1jb250YWluZXI7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteHhsLi4uICkgeyBAaW5jbHVkZSBjdXN0b20tY29udGFpbmVyOyB9XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50IHtcclxuICAgIEBleHRlbmQgJWNvbHVtbi1wYWRkaW5nO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBAaW5jbHVkZSB1c2UtdHlwZSh0ZXh0LWxhcmdlKTtcclxuXHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRpbWFnZS1ibG9jay1sYXlvdXQteGwuLi4gKSB7IEBpbmNsdWRlIHNwYW4oNik7IH1cclxuXHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteHhsLi4uICkge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiBzcGFuKDQpO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZS1ibG9jay0tbGVmdCAmIHtcclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkaW1hZ2UtYmxvY2stbGF5b3V0LXhsLi4uICkgeyBmbG9hdDogcmlnaHQ7IH1cclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXh4bC4uLiApIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHB4LXRvLWVtKCRndXR0ZXItd2lkdGgsIDE2cHgpO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAlYnV0dG9uIHtcclxuICAgICAgbWFyZ2luLXRvcDogcHgtdG8tZW0oMjBweCwgMTZweCk7XHJcblxyXG4gICAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoICRsYXlvdXQteHhsLi4uICkgeyBtYXJnaW4tdG9wOiBweC10by1lbSg0MHB4LCAxNnB4KTsgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fc3ViamVjdCB7IEBleHRlbmQgLnN1YmplY3Q7IH0gLy8gaW4gY29yZS9iYXNlL190eXBvZ3JhcGh5XHJcblxyXG4gICZfX2hlYWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgQGluY2x1ZGUgdXNlLXR5cGUoaGVhZGVyLWxhcmdlLTEpO1xyXG4gIH1cclxuXHJcbiAgJl9fcGljdHVyZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG5cclxuICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGltYWdlLWJsb2NrLWxheW91dC14bC4uLiApIHtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXh4bC4uLiApIHtcclxuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgQGluY2x1ZGUgc3Bhbig4IGxhc3QpO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZS1ibG9jay0tbGVmdCAmIHtcclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkaW1hZ2UtYmxvY2stbGF5b3V0LXhsLi4uICkge1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXh4bC4uLiApIHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgJl9faW1hZ2Uge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkaW1hZ2UtYmxvY2stbGF5b3V0LXhsLi4uICkge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCAkbGF5b3V0LXh4bC4uLiApIHtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2UtYmxvY2stLWxlZnQgJiB7XHJcbiAgICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCggJGltYWdlLWJsb2NrLWxheW91dC14bC4uLiApIHsgZmxvYXQ6IHJpZ2h0OyB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc3BsYXQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgfVxyXG59XHJcbiIsIi5zb2NpYWwge1xyXG4gIEBleHRlbmQgJWNsZWFyZml4O1xyXG5cclxuICBAYXQtcm9vdCB7XHJcbiAgICAlc29jaWFsLWl0ZW0ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faXRlbSB7XHJcbiAgICAmLS1mYWNlYm9vayB7IEBleHRlbmQgJXNvY2lhbC1pdGVtOyB9XHJcbiAgICAmLS10d2l0dGVyIHsgQGV4dGVuZCAlc29jaWFsLWl0ZW07IH1cclxuICAgICYtLWdwbHVzIHsgQGV4dGVuZCAlc29jaWFsLWl0ZW07IH1cclxuICB9XHJcbn1cclxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFBlcm1pc3Npb24gYmFyXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKHBvcHVwKSB7XHJcbiAgMCUgICB7IEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDBweCkpIH1cclxuICA0MCUgIHsgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoIC0oJHBlcm1pc3Npb24tYmFyLXByb3RydXNpb24gKyAxMCkgKSkgfVxyXG4gIDYwJSAgeyBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSggLSgkcGVybWlzc2lvbi1iYXItcHJvdHJ1c2lvbiAtIDQpICkpIH1cclxuICA4MCUgIHsgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoIC0oJHBlcm1pc3Npb24tYmFyLXByb3RydXNpb24gKyAzKSApKSB9XHJcbiAgMTAwJSB7IEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKCAtKCRwZXJtaXNzaW9uLWJhci1wcm90cnVzaW9uKSApKSB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcyh0ZWFzZXIpIHtcclxuICAwJSAgIHsgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoIC0oJHBlcm1pc3Npb24tYmFyLXByb3RydXNpb24pICkpIH1cclxuICA0MCUgIHsgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoIC0oJHBlcm1pc3Npb24tYmFyLXByb3RydXNpb24gKyAzMCkgKSkgfVxyXG4gIDYwJSAgeyBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSggLSgkcGVybWlzc2lvbi1iYXItcHJvdHJ1c2lvbiArIDMwKSApKSB9XHJcbiAgNzAlICB7IEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKCAtKCRwZXJtaXNzaW9uLWJhci1wcm90cnVzaW9uIC0gNCkgKSkgfVxyXG4gIDg1JSAgeyBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSggLSgkcGVybWlzc2lvbi1iYXItcHJvdHJ1c2lvbiArIDMpICkpIH1cclxuICAxMDAlIHsgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoIC0oJHBlcm1pc3Npb24tYmFyLXByb3RydXNpb24pICkpIH1cclxufVxyXG5cclxuLnBlcm1pc3Npb24tYmFyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFybWlzc2lvbi1iYXItYmFja2dyb3VuZC1jb2xvcjtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogJHBlcm1pc3Npb24tYmFyLWhlaWdodDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGJvdHRvbTogLSRwZXJtaXNzaW9uLWJhci1oZWlnaHQ7XHJcbiAgICByaWdodDogJHBlcm1pc3Npb24tYmFyLW9mZnNldDtcclxuICAgIHotaW5kZXg6IDk7IC8vIGp1c3QgYmVuZWF0aCBjb29raWViYXJcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgd2lkdGg6ICRwZXJtaXNzaW9uLWJhci13aWR0aDtcclxuXHJcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICBAaW5jbHVkZSBmb250LXNpemUoMTZweCk7XHJcbiAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsICRwZXJtaXNzaW9uLWJhci1wcm90cnVzaW9uIDIwcHggMjBweCAyMHB4KTtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvdHRvbSAwLjNzIGVhc2Utb3V0KTtcclxuICBAaW5jbHVkZSBhbmltYXRpb24ocG9wdXAgMXMgNnMgZm9yd2FyZHMsIHRlYXNlciAycyAzMHMpO1xyXG5cclxuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxheW91dC14bC4uLikgeyBkaXNwbGF5OiBibG9jazsgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGJvdHRvbTogLSgkcGVybWlzc2lvbi1iYXItaGVpZ2h0IC0gNXB4KTtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgfVxyXG5cclxuICAmLmlzLWFjdGl2ZSB7IGJvdHRvbTogLSgkcGVybWlzc2lvbi1iYXItcHJvdHJ1c2lvbik7IH1cclxuXHJcbiAgLy8gQWRkaW5nIHJvb20gZm9yIHBvbHlmaWxsIGxhYmVsc1xyXG4gIC5sdC1pZTEwICYge1xyXG4gICAgJHBlcm1pc3Npb24tYmFyLXBvbHlmaWxsLWhlaWdodDogJHBlcm1pc3Npb24tYmFyLWhlaWdodCArIDIgKiAyMnB4O1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBoZWlnaHQ6ICRwZXJtaXNzaW9uLWJhci1wcm90cnVzaW9uO1xyXG5cclxuICAgICY6aG92ZXIgeyBoZWlnaHQ6ICRwZXJtaXNzaW9uLWJhci1wcm90cnVzaW9uICsgNTsgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgaGVpZ2h0OiAkcGVybWlzc2lvbi1iYXItcG9seWZpbGwtaGVpZ2h0O1xyXG4gICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1ib3R0b20sIDIwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faGVhZGxpbmUge1xyXG4gICAgY29sb3I6ICRwYXJtaXNzaW9uLWJhci1oZWFkZXItY29sb3I7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBoZWlnaHQ6ICRwZXJtaXNzaW9uLWJhci1wcm90cnVzaW9uO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDM0cHgpO1xyXG4gICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDEycHggMCAwKTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICRwYXJtaXNzaW9uLWJhci1oZWFkZXItY29sb3I7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3RleHQge1xyXG4gICAgY29sb3I6ICRwYXJtaXNzaW9uLWJhci10ZXh0LWNvbG9yO1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250O1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNnB4KTtcclxuXHJcbiAgICAvLyBTdHlsaW5nIHJpY2gtdGV4dCBvdXRwdXRcclxuICAgIHA6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XHJcbiAgICBhIHsgY29sb3I6ICRwYXJtaXNzaW9uLWJhci1saW5rLWNvbG9yOyB9XHJcbiAgICBpbWcge1xyXG4gICAgICAvLyBDZW50ZXJpbmcgaW1hZ2UgYW5kIHJlbW92aW5nIGJvdHRvbSBnYXBcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2J1dHRvbiB7XHJcbiAgICBAZXh0ZW5kIC5idXR0b24tLXNtYWxsO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSByZW0obWFyZ2luLXRvcCwgMTBweCk7XHJcbiAgfVxyXG5cclxuICAmX19sYWJlbCB7IEBleHRlbmQgJXBsYWNlaG9sZGVyLWxhYmVsOyB9XHJcblxyXG4gICZfX2lucHV0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNHB4KTtcclxuICAgIEBpbmNsdWRlIHJlbShtYXJnaW4sIDAgMCAxMHB4KTtcclxuICAgIEBpbmNsdWRlIHJlbShoZWlnaHQsIDM5cHgpOyAvLyBzYW1lIGFzIGJ1dHRvbiBzbWFsbFxyXG4gIH1cclxuXHJcbiAgJl9fY2xvc2Uge1xyXG4gICAgQGV4dGVuZCAlY2xvc2UtYnV0dG9uOyAvLyBmb3VuZCBpbiBjb3JlL190ZW1wbGF0ZXMuc2Nzc1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogNHB4O1xyXG4gICAgICB0b3A6IC0oJGNsb3NlLWJ1dHRvbi1zaXplKTtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odG9wIDAuM3MgMC41cyBlYXNlLW91dCk7XHJcblxyXG4gICAgLmlzLWFjdGl2ZSAmIHsgdG9wOiA0cHg7IH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ== */
