@charset "UTF-8";
/* ==========================================================================
   Normalize.scss settings
   ========================================================================== */
/**
 * Includes legacy browser support IE6/7
 *
 * Set to false if you want to drop support for IE6 and IE7
 */
/* Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 * 3. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
 *  `em` units.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active, a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Addresses styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 8/9/10.
 * 2. Improves image quality when scaled in IE 7.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *  Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 * 4. Improves appearance and consistency in all browsers.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *  and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *  `input` and others.
 * 4. Removes inner spacing in IE 7 without affecting normal text inputs.
 *  Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 *  Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */ }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 * 3. Corrects text not wrapping in Firefox 3.
 * 4. Corrects alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

.flex, .flex-container, .flex-vertical {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch; }

.flex-container {
  max-width: 1176px;
  margin: 0 auto;
  -ms-flex-direction: column;
      flex-direction: column; }
  @media (min-width: 48.0625em) {
    .flex-container {
      -ms-flex-direction: row;
          flex-direction: row; } }

.flex1-2, .flex5-12, .flex7-12 {
  padding: 0 20px; }
  @media (min-width: 48.0625em) {
    .flex1-2, .flex5-12, .flex7-12 {
      padding: 0;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
      -ms-flex-positive: 1;
          flex-grow: 1; } }

.flex5-12 {
  -ms-flex-preferred-size: 42%;
      flex-basis: 42%; }

.flex7-12 {
  -ms-flex-preferred-size: 58%;
      flex-basis: 58%; }

.flex-center {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  text-align: center; }

.flex-vertical {
  -ms-flex-direction: column;
      flex-direction: column; }

.flex-vertical > * {
  -ms-flex-positive: 1;
      flex-grow: 1; }

@font-face {
  font-family: 'use-organico';
  src: url("../fonts/use-organico.eot?vpespu");
  src: url("../fonts/use-organico.eot?vpespu#iefix") format("embedded-opentype"), url("../fonts/use-organico.ttf?vpespu") format("truetype"), url("../fonts/use-organico.woff?vpespu") format("woff"), url("../fonts/use-organico.svg?vpespu#use-organico") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="social-"] a:before, [class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'use-organico' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-google-plus-square:before {
  content: "\e90e"; }

.social-google-plus a:before,
.icon-google-plus:before {
  content: "\e90f"; }

.icon-youtube-play:before {
  content: "\e910"; }

.icon-youtube-square:before {
  content: "\e911"; }

.social-youtube a:before,
.icon-youtube:before {
  content: "\e912"; }

.icon-arrow-left:before {
  content: "\e900"; }

.icon-arrow-right:before {
  content: "\e901"; }

.icon-animal:before {
  content: "\e902"; }

.social-facebook a:before,
.icon-facebook:before {
  content: "\e903"; }

.icon-gluten:before {
  content: "\e904"; }

.social-instagram a:before,
.icon-instagram:before {
  content: "\e905"; }

.icon-leaves:before {
  content: "\e906"; }

.social-linkedin a:before,
.icon-linkedin:before {
  content: "\e907"; }

.icon-natural:before {
  content: "\e908"; }

.icon-organic:before {
  content: "\e909"; }

.icon-search:before {
  content: "\e90a"; }

.icon-trans:before {
  content: "\e90b"; }

.social-twitter a:before,
.icon-twitter:before {
  content: "\e90c"; }

.icon-vegan:before {
  content: "\e90d"; }

.icon-clock:before {
  content: "\e94e"; }

.icon-eye:before {
  content: "\e9ce"; }

.container {
  width: auto;
  max-width: 1176px;
  float: none;
  display: block;
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px; }
  .container::after {
    content: '';
    display: table;
    clear: both; }

.row {
  clear: both; }
  .row::after {
    content: '';
    display: table;
    clear: both; }

.full {
  float: left;
  clear: none;
  text-align: inherit;
  width: 100%;
  margin-left: 0%;
  margin-right: 3%; }
  .full::after {
    content: '';
    display: table;
    clear: both; }
  .full:last-child {
    margin-right: 0%; }

@media (min-width: 34.375em) {
  .blog .main-content {
    float: left;
    clear: none;
    text-align: inherit;
    width: 65.66667%;
    margin-left: 0%;
    margin-right: 3%; }
    .blog .main-content::after {
      content: '';
      display: table;
      clear: both; }
    .blog .main-content:last-child {
      margin-right: 0%; }
  .blog .sidebar {
    float: left;
    clear: none;
    text-align: inherit;
    width: 31.33333%;
    margin-left: 0%;
    margin-right: 3%; }
    .blog .sidebar::after {
      content: '';
      display: table;
      clear: both; }
    .blog .sidebar:last-child {
      margin-right: 0%; } }

@media (min-width: 34.375em) {
  .col1-2 {
    float: left;
    clear: none;
    text-align: inherit;
    width: 48.5%;
    margin-left: 0%;
    margin-right: 3%; }
    .col1-2::after {
      content: '';
      display: table;
      clear: both; }
    .col1-2:last-child {
      margin-right: 0%; }
  .col1-3 {
    float: left;
    clear: none;
    text-align: inherit;
    width: 31.33333%;
    margin-left: 0%;
    margin-right: 3%; }
    .col1-3::after {
      content: '';
      display: table;
      clear: both; }
    .col1-3:nth-child(n) {
      margin-right: 3%;
      float: left;
      clear: none; }
    .col1-3:nth-child(3n) {
      margin-right: 0%;
      float: right; }
    .col1-3:nth-child(3n + 1) {
      clear: both; }
  .col2-3 {
    float: left;
    clear: none;
    text-align: inherit;
    width: 65.66667%;
    margin-left: 0%;
    margin-right: 3%; }
    .col2-3::after {
      content: '';
      display: table;
      clear: both; }
    .col2-3:last-child {
      margin-right: 0%; }
  .col1-4 {
    float: left;
    clear: none;
    text-align: inherit;
    width: 22.75%;
    margin-left: 0%;
    margin-right: 3%; }
    .col1-4::after {
      content: '';
      display: table;
      clear: both; }
    .col1-4:last-child {
      margin-right: 0%; }
  .span1-4 {
    float: left;
    clear: none;
    text-align: inherit;
    width: 25%;
    margin-left: 0%;
    margin-right: 0%; }
    .span1-4::after {
      content: '';
      display: table;
      clear: both; }
  .col5-12 {
    float: left;
    clear: none;
    text-align: inherit;
    width: 39.91667%;
    margin-left: 0%;
    margin-right: 3%; }
    .col5-12::after {
      content: '';
      display: table;
      clear: both; }
    .col5-12:last-child {
      margin-right: 0%; }
  .col7-12 {
    float: left;
    clear: none;
    text-align: inherit;
    width: 57.08333%;
    margin-left: 0%;
    margin-right: 3%; }
    .col7-12::after {
      content: '';
      display: table;
      clear: both; }
    .col7-12:last-child {
      margin-right: 0%; } }

section::after {
  content: '';
  display: table;
  clear: both; }

svg path,
svg g {
  fill: inherit; }

/* =WordPress Core
-------------------------------------------------------------- */
.alignnone {
  margin: 5px 20px 20px 0; }

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 5px auto; }

.alignright {
  float: right;
  margin: 5px 0 20px 20px; }

.alignleft {
  float: left;
  margin: 5px 20px 20px 0; }

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px; }

a img.alignnone {
  margin: 5px 20px 20px 0; }

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0; }

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  /* Image does not overflow the content area */
  padding: 5px 3px 10px;
  text-align: center; }

.wp-caption.alignnone {
  margin: 5px 20px 20px 0; }

.wp-caption.alignleft {
  margin: 5px 20px 20px 0; }

.wp-caption.alignright {
  margin: 5px 0 20px 20px; }

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto; }

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px; }

/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */ }

*,
*::after,
*::before {
  box-sizing: border-box; }

body {
  font-family: 'Ubuntu', sans-serif;
  font-weight: 400;
  line-height: 1.4em;
  color: #4f4f4f;
  background: #f0f0f0; }

h1 {
  font-size: 2.5em;
  line-height: 1.4em; }

h1, h2 {
  color: #000;
  font-weight: 100; }

h2 {
  margin-top: 0;
  font-size: 1em; }

img {
  max-width: 100%;
  height: auto; }

figure {
  margin: 0;
  margin-bottom: 15px;
  text-align: center; }

p, li {
  font-size: 0.94em;
  line-height: 1.2em;
  margin: .7em 0; }

p {
  line-height: 1.6em; }

strong {
  font-weight: 500; }

hr {
  background: #736960;
  border: none;
  height: 2px;
  margin: 40px 0 30px; }

a {
  color: #4f4f4f;
  text-decoration: none; }
  a:hover {
    text-decoration: none; }

.btn {
  padding: 20px 5px;
  font-size: 1.4em;
  font-weight: 400;
  color: #FFF; }
  .btn:hover {
    background: #47433f;
    text-decoration: none; }

label {
  text-transform: uppercase; }

label {
  text-align: left;
  display: block;
  padding: 5px 0; }

fieldset {
  border: none;
  padding: 0;
  margin: 20px 0; }

legend {
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 5px;
  padding-left: 1.5%;
  display: block;
  width: 90%; }

input, textarea, select, option {
  width: 100%;
  display: block;
  margin-bottom: 10px;
  border: none;
  padding: 10px 15px;
  color: #000;
  font-size: 1.1em; }
  #inscricaoForm input, #inscricaoForm textarea, #inscricaoForm select, #inscricaoForm option {
    border: 1px solid #000; }

textarea {
  height: 125px !important; }

[type=submit] {
  display: block;
  background: #2CC84D;
  padding: 10px 15px;
  text-align: center;
  font-size: 1em;
  width: 100%;
  margin: 0 auto;
  display: block;
  border: none;
  color: #FFF;
  text-transform: uppercase;
  transition: .3s all;
  font-weight: 300; }
  .widget [type=submit] {
    text-transform: none; }
  [type=submit]:hover {
    background: #a6ce53; }

.sr-only {
  display: none; }

label.error {
  background: red;
  color: #FFF;
  display: block;
  font-size: .9em;
  width: 100%;
  text-align: left;
  text-transform: none;
  margin: -20px 0 10px;
  padding-left: 10px; }

input.error, textarea.error {
  color: red;
  background: #ffd4fc;
  border: 2px solid red; }

::-webkit-input-placeholder {
  color: #999; }

:-moz-placeholder {
  color: #999; }

::-moz-placeholder {
  color: #999; }

:-ms-input-placeholder {
  color: #999; }

.fullbanner {
  height: 330px;
  margin-bottom: 40px !important; }
  .home .fullbanner {
    height: 600px; }
  .fullbanner .scroll-down {
    position: absolute;
    bottom: 20px;
    left: 50%;
    z-index: 100;
    fill: #FFF;
    transform: translateX(-50%); }
    .fullbanner .scroll-down .icon-arrow-down {
      width: 42px; }
  .fullbanner .swiper-container,
  .fullbanner .swiper-wrapper,
  .fullbanner .swiper-slide {
    height: 100%; }
  .fullbanner .swiper-pagination {
    position: absolute;
    bottom: 10px;
    left: 50% !important;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1170px;
    padding: 0 10px;
    text-align: right; }
  .fullbanner .swiper-button-prev,
  .fullbanner .swiper-button-next {
    background-size: 25px;
    opacity: 1;
    padding: 60px 25px;
    bottom: 40px;
    top: auto; }
    .home .fullbanner .swiper-button-prev, .home
    .fullbanner .swiper-button-next {
      background-color: transparent;
      top: 50%;
      bottom: auto; }
  .fullbanner .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 5px; }
  @media (min-width: 75em) {
    .fullbanner .swiper-button-prev {
      left: calc((100% - 1175px) / 2); }
    .fullbanner .swiper-button-next {
      right: calc((100% - 1175px) / 2); } }
  .fullbanner .swiper-slide {
    position: relative;
    background-size: cover; }
    .fullbanner .swiper-slide:before {
      content: " ";
      width: 100%;
      height: 100%;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.8), transparent);
      position: absolute;
      top: 0;
      left: 0; }
    .fullbanner .swiper-slide .container {
      position: relative;
      height: 100%; }
  .fullbanner .supplier-wrapper {
    background: #FFF;
    padding: 20px;
    margin: 0 -20px -20px -20px; }
  .fullbanner .post-category {
    background: #2CC84D;
    font-size: 0.7em;
    display: inline-block;
    padding: 3px 6px; }
  .fullbanner .banner-text {
    position: absolute;
    left: 0;
    bottom: 40px;
    padding: 10px;
    font-weight: 300;
    max-width: 67%;
    text-align: left;
    font-size: 1em;
    color: #FFF;
    margin: 0 10px; }
    .single .fullbanner .banner-text {
      bottom: 0;
      width: 100%;
      max-width: 100%; }
    .fullbanner .banner-text a {
      color: #FFF; }
      .fullbanner .banner-text a:hover {
        text-decoration: none; }
    @media (min-width: 34.375em) {
      .fullbanner .banner-text {
        font-size: 1.2em;
        margin: 0; } }
    @media (min-width: 73.5em) {
      .fullbanner .banner-text {
        margin-left: calc((100vw - 1176px) / 2 * -1);
        padding-left: calc((100vw - 1176px) / 2);
        box-sizing: content-box; }
        .single .fullbanner .banner-text {
          margin-left: 0;
          padding-left: 0;
          box-sizing: content-box; } }
    .fullbanner .banner-text h1 {
      color: #FFF;
      font-size: 1.8em;
      text-align: left;
      margin: .5em 0 0;
      line-height: 1em;
      font-weight: 500; }
      @media (min-width: 34.375em) {
        .fullbanner .banner-text h1 {
          font-size: 2.3em;
          line-height: 1.2em; } }
    .fullbanner .banner-text p {
      margin-top: 5px;
      font-size: 1em;
      font-weight: 400; }
  .fullbanner .post-info {
    padding-left: 0;
    font-size: .8em;
    text-transform: none;
    margin: 0; }
    .fullbanner .post-info li {
      display: inline-block;
      margin: 0;
      margin-right: 20px; }

.footer {
  background: #FFF;
  color: #4f4f4f;
  padding: 50px 0 40px; }
  .footer .brand {
    padding-top: 10px; }
    .footer .brand img {
      max-width: 220px; }
  .footer .highlight {
    display: none; }
  .footer a {
    color: #4f4f4f;
    text-decoration: none; }
    .footer a:hover {
      color: #2CC84D;
      text-decoration: none; }
  .footer ul {
    padding-left: 0;
    list-style: none;
    margin: 0;
    margin-bottom: 25px; }
  .footer .social-links a:before {
    margin-right: 5px; }
  @media (min-width: 34.375em) {
    .footer .auxiliar-nav,
    .footer .main-nav,
    .footer .social-links {
      float: left;
      clear: none;
      text-align: inherit;
      width: 14.16667%;
      margin-left: 0%;
      margin-right: 3%; }
      .footer .auxiliar-nav::after,
      .footer .main-nav::after,
      .footer .social-links::after {
        content: '';
        display: table;
        clear: both; }
      .footer .auxiliar-nav:last-child,
      .footer .main-nav:last-child,
      .footer .social-links:last-child {
        margin-right: 0%; }
    .footer .brand,
    .footer .about-text {
      float: left;
      clear: none;
      text-align: inherit;
      width: 22.75%;
      margin-left: 0%;
      margin-right: 3%; }
      .footer .brand::after,
      .footer .about-text::after {
        content: '';
        display: table;
        clear: both; }
      .footer .brand:last-child,
      .footer .about-text:last-child {
        margin-right: 0%; } }

.page-footer {
  clear: both;
  font-size: .7em;
  text-align: center;
  padding: 7px 0;
  background: #000;
  color: #FFF; }
  .page-footer::after {
    content: '';
    display: table;
    clear: both; }
  .page-footer .credits {
    text-transform: uppercase; }
  .page-footer a {
    color: #FFF;
    text-decoration: none; }
  @media (min-width: 34.375em) {
    .page-footer {
      text-align: left; }
      .page-footer .copy {
        float: left;
        display: block; }
      .page-footer .credits {
        float: right; }
      .page-footer .col {
        float: left; }
        .page-footer .col:last-child {
          float: right; }
      .page-footer .copy {
        display: inline; } }

.header-placeholder {
  padding-top: 80px; }
  @media (min-width: 48.0625em) {
    .header-placeholder {
      padding-top: 0; }
      .stick .header-placeholder {
        padding-top: 104px; } }

.header {
  position: fixed;
  width: 100%;
  z-index: 100;
  background: #FFF;
  color: #4f4f4f;
  text-transform: uppercase; }
  @media (min-width: 48.0625em) {
    .header {
      position: static; } }
  .header ul {
    padding-left: 0;
    margin: 0;
    list-style: none; }
    .header ul li {
      display: inline-block;
      margin: 0; }
  .header a {
    display: block;
    padding: 10px 0;
    color: #000;
    text-decoration: none; }
    @media (min-width: 48.0625em) {
      .header a {
        padding: 8px 0 5px; } }
    .header a:hover {
      text-decoration: none; }
  .header .auxiliar-bar {
    background: #2CC84D;
    padding: 1px 0; }
    .header .auxiliar-bar::after {
      content: '';
      display: table;
      clear: both; }
    .header .auxiliar-bar a {
      font-size: .8em;
      margin-right: 10px; }
      @media (min-width: 34.375em) {
        .header .auxiliar-bar a {
          margin-right: 18px; } }
    .header .auxiliar-bar li:last-child a {
      margin-right: 0; }
  .header .auxiliar-nav {
    margin-bottom: 10px; }
    @media (min-width: 48.0625em) {
      .header .auxiliar-nav {
        margin-bottom: 0; } }
    .header .auxiliar-nav .current-menu-item a,
    .header .auxiliar-nav .current_page_parent a {
      position: relative; }
      .header .auxiliar-nav .current-menu-item a:after,
      .header .auxiliar-nav .current_page_parent a:after {
        content: " ";
        display: block;
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 2px;
        background: #4f4f4f; }
        @media (min-width: 48.0625em) {
          .header .auxiliar-nav .current-menu-item a:after,
          .header .auxiliar-nav .current_page_parent a:after {
            bottom: -1px; } }
    .header .auxiliar-nav a {
      color: #FFF; }
  .header .brand img {
    max-width: 280px; }
  @media (max-width: 48.0625em) {
    .header .brand img {
      margin-top: 12px;
      max-width: 220px; } }
  .header .social-links a {
    margin-right: 0;
    margin-left: 9px;
    opacity: .6; }
    .header .social-links a:hover {
      opacity: 1; }
  .header .social-links ul {
    text-align: center;
    padding-left: 0; }
  @media (min-width: 48.0625em) {
    .header .social-links ul {
      float: right; } }
  .header .main-bar {
    padding: 15px 0; }
    @media (min-width: 48.0625em) {
      .header .main-bar {
        padding: 20px 0 12px; }
        .stick .header .main-bar {
          position: fixed;
          width: 100%;
          top: 0;
          z-index: 2000;
          background: #FFF; } }
  .header .main-nav ul {
    float: right; }
  .header .main-nav a {
    padding-top: 12px;
    margin-left: 20px;
    color: #4f4f4f; }
    .header .main-nav a:hover {
      color: #2CC84D; }
  .header .main-nav .highlight a {
    color: #2CC84D; }
  @media (min-width: 48.0625em) {
    .header .auxiliar-nav {
      float: left;
      clear: none;
      text-align: inherit;
      width: 48.5%;
      margin-left: 0%;
      margin-right: 3%; }
      .header .auxiliar-nav::after {
        content: '';
        display: table;
        clear: both; }
      .header .auxiliar-nav:last-child {
        margin-right: 0%; }
    .header .search-box,
    .header .brand {
      float: left;
      clear: none;
      text-align: inherit;
      width: 31.33333%;
      margin-left: 0%;
      margin-right: 3%; }
      .header .search-box::after,
      .header .brand::after {
        content: '';
        display: table;
        clear: both; }
      .header .search-box:last-child,
      .header .brand:last-child {
        margin-right: 0%; }
    .header .social-links {
      float: left;
      clear: none;
      text-align: inherit;
      width: 14.16667%;
      margin-left: 0%;
      margin-right: 3%; }
      .header .social-links::after {
        content: '';
        display: table;
        clear: both; }
      .header .social-links:last-child {
        margin-right: 0%; }
    .header .main-nav {
      float: left;
      clear: none;
      text-align: inherit;
      width: 65.66667%;
      margin-left: 0%;
      margin-right: 3%; }
      .header .main-nav::after {
        content: '';
        display: table;
        clear: both; }
      .header .main-nav:last-child {
        margin-right: 0%; } }

.mobile-nav, .page-wrapper .search-box {
  display: none; }

@media (max-width: 48em) {
  .header,
  .page-wrapper {
    transition: transform 0.2s ease-out;
    width: 100vw;
    background: #FFF; }
    .opened-menu .header, .opened-menu
    .page-wrapper {
      transition: transform 0.4s ease-out;
      transform: translateX(256px); }
  .page-wrapper .search-box {
    display: block;
    padding: 10px 15px;
    background: #FFF; }
    .page-wrapper .search-box input {
      border: 1px solid #CCC; }
    .page-wrapper .search-box button {
      top: 10px;
      right: 15px; }
  .page-wrapper {
    background: #f0f0f0; }
    .opened-menu .page-wrapper:after {
      content: " ";
      position: absolute;
      top: 0;
      left: -20px;
      height: 100%;
      width: 20px;
      display: block;
      background: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.3)); }
  .opened-menu {
    overflow: hidden; }
  .header .main-nav,
  .header .auxiliar-bar {
    display: none; }
  .mobile-nav {
    background: #2CC84D;
    position: fixed;
    top: 0;
    left: 0;
    width: 256px;
    height: 100vh;
    padding: 20px;
    display: block;
    transition: transform 0.2s ease-out;
    transform: translateX(-100%); }
    .opened-menu .mobile-nav {
      transition: transform 0.4s ease-out;
      transform: translateX(0); }
    .mobile-nav .main-nav {
      overflow-y: auto;
      font-size: 1.2em; }
      .mobile-nav .main-nav ul {
        padding-left: 0; }
      .mobile-nav .main-nav li {
        display: block; }
      .mobile-nav .main-nav a {
        text-decoration: none;
        color: #FFF; }
      .mobile-nav .main-nav .highlight a {
        color: #4f4f4f; }
      .mobile-nav .main-nav:after {
        content: " ";
        width: 20px;
        height: 100vh;
        position: fixed;
        left: 20vw;
        top: 0;
        display: block; }
    .mobile-nav .social-links a {
      margin-right: 0;
      margin-left: 9px;
      color: #4f4f4f; }
      .mobile-nav .social-links a:hover {
        opacity: 1; }
    .mobile-nav .social-links ul {
      text-align: center; }
    .mobile-nav .social-links li {
      display: inline-block; } }
  @media (max-width: 48em) and (min-width: 48.0625em) {
    .mobile-nav .social-links ul {
      float: right; } }

@media (max-width: 48em) {
  .menu-trigger {
    position: relative;
    top: -7px;
    left: 0px;
    height: 50px;
    width: 50px;
    margin-top: 0;
    margin-right: 10px;
    z-index: 500;
    float: left;
    /* image replacement */
    white-space: nowrap;
    cursor: pointer;
    transition: background .3s;
    z-index: 2000; }
    .menu-trigger:before {
      content: "MENU";
      position: absolute;
      bottom: -13px;
      left: 0;
      width: 100%;
      text-align: center;
      display: inline-block;
      font-size: 12px; }
    .menu-trigger .menu-icon {
      /* icon created in CSS */
      position: absolute;
      left: 50%;
      top: 50%;
      bottom: auto;
      right: auto;
      transform: translateX(-50%) translateY(-50%);
      display: inline-block;
      width: 60%;
      height: 3px;
      background-color: #000;
      z-index: 510; }
      .opened-menu .menu-trigger .menu-icon {
        background-color: transparent !important; }
      .menu-trigger .menu-icon:before, .menu-trigger .menu-icon:after {
        position: absolute;
        content: '';
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        background-color: #000;
        transition: transform 0.3s; }
      .menu-trigger .menu-icon:before {
        transform: translateY(-10px) rotate(0deg); }
        .opened-menu .menu-trigger .menu-icon:before {
          transform: translateY(0) rotate(45deg); }
      .menu-trigger .menu-icon:after {
        transform: translateY(10px) rotate(0deg); }
        .opened-menu .menu-trigger .menu-icon:after {
          transform: translateY(0) rotate(-45deg); } }

.post-card {
  background: #FFF;
  font-size: 1em;
  margin-bottom: 28px;
  transition: box-shadow .3s, transform .3s; }
  .post-card:hover {
    box-shadow: 2px 5px 10px rgba(0, 0, 0, 0.2);
    transform: translate(-2px, -2px); }
  .post-card h2 {
    color: #4f4f4f;
    font-size: 1.3em;
    line-height: 1.3em;
    margin-top: 0;
    margin-bottom: 10px; }
  .post-card a {
    color: #4f4f4f; }
    .post-card a:hover {
      text-decoration: none; }
  .post-card .card-text {
    padding: 28px 20px 20px; }
  .post-card.highlight-post {
    position: relative;
    background-size: cover; }
    .post-card.highlight-post:before {
      position: absolute;
      left: 0;
      bottom: 0;
      content: " ";
      width: 100%;
      height: 50%;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.8), transparent); }
    .post-card.highlight-post p {
      display: none; }
    .post-card.highlight-post img {
      display: block;
      visibility: hidden; }
    .post-card.highlight-post .card-text {
      position: absolute;
      left: 0;
      bottom: 0;
      max-width: 360px;
      color: #FFF; }
      .post-card.highlight-post .card-text h2 {
        color: #FFF;
        font-weight: 500;
        font-size: 1.7em; }
  .post-card .read-more {
    color: #2CC84D;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 0.94em; }
  .post-card .author {
    font-size: .9em;
    font-weight: 500;
    padding: 0 20px 15px; }
    .post-card .author img {
      border-radius: 50%;
      vertical-align: middle;
      margin-right: 15px; }
  @media (min-width: 48.0625em) {
    .default-list .post-card {
      float: left;
      clear: none;
      text-align: inherit;
      width: 31.33333%;
      margin-left: 0%;
      margin-right: 3%; }
      .default-list .post-card::after {
        content: '';
        display: table;
        clear: both; }
      .default-list .post-card:nth-child(n) {
        margin-right: 3%;
        float: left;
        clear: none; }
      .default-list .post-card:nth-child(3n) {
        margin-right: 0%;
        float: right; }
      .default-list .post-card:nth-child(3n + 1) {
        clear: both; }
    .post-card.highlight-post p {
      display: block; }
    .home-last-posts .featured .post-card.highlight-post {
      float: left;
      clear: none;
      text-align: inherit;
      width: 65.66667%;
      margin-left: 0%;
      margin-right: 3%; }
      .home-last-posts .featured .post-card.highlight-post::after {
        content: '';
        display: table;
        clear: both; }
      .home-last-posts .featured .post-card.highlight-post:last-child {
        margin-right: 0%; }
    .home-last-posts .featured .post-card:nth-child(2) {
      float: left;
      clear: none;
      text-align: inherit;
      width: 31.33333%;
      margin-left: 0%;
      margin-right: 3%; }
      .home-last-posts .featured .post-card:nth-child(2)::after {
        content: '';
        display: table;
        clear: both; }
      .home-last-posts .featured .post-card:nth-child(2):nth-child(n) {
        margin-right: 3%;
        float: left;
        clear: none; }
      .home-last-posts .featured .post-card:nth-child(2):nth-child(2n) {
        margin-right: 0%;
        float: right; }
      .home-last-posts .featured .post-card:nth-child(2):nth-child(2n + 1) {
        clear: both; } }

.default-list,
.home-last-posts .featured {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  width: 100%; }

.search-box {
  position: relative;
  color: #4f4f4f; }
  .search-box label {
    display: none; }
  .search-box input {
    width: 100%;
    height: 30px;
    margin-bottom: 0;
    font-size: .85em;
    padding-right: 50px; }
  .search-box button {
    position: absolute;
    top: 0;
    right: 0;
    background: transparent;
    width: 30px;
    height: 30px;
    padding: 0;
    padding-right: 15px;
    font-size: 22px; }
    .search-box button:focus {
      outline: none; }
    .search-box button:hover {
      background: transparent; }
    .search-box button .icon-search:before {
      color: #8b8d90; }

@media (min-width: 48.0625em) {
  .single-post .main-content {
    float: left;
    clear: none;
    text-align: inherit;
    width: 82.83333%;
    margin-left: 8.58333%;
    margin-right: 3%; }
    .single-post .main-content::after {
      content: '';
      display: table;
      clear: both; }
    .single-post .main-content:last-child {
      margin-right: 0%; } }

.single-post .main-text a {
  font-weight: bold; }

.single-post .tags, .single-post .categories-list {
  margin-top: 0;
  margin-bottom: 30px; }
  .single-post .tags a, .single-post .categories-list a {
    background: #dedede;
    color: #4f4f4f;
    padding: 2px 5px;
    margin-left: 5px; }
    .single-post .tags a:hover, .single-post .categories-list a:hover {
      background: #c5c5c5;
      text-decoration: none; }

.single-post .categories-list {
  font-size: .8em;
  margin: 30px 0 10px; }
  .single-post .categories-list a {
    color: #FFF;
    background: #2CC84D;
    margin-left: 0px;
    margin-right: 5px; }
    .single-post .categories-list a:hover {
      background: #a6ce53; }

.single-post footer .author {
  background: #d1d1d1;
  padding: 35px 0; }
  .single-post footer .author h3 {
    margin: 0;
    font-weight: 400;
    font-size: 1.5em; }
    .single-post footer .author h3 small {
      font-size: .7em;
      padding-left: 5px; }
  .single-post footer .author img {
    border-radius: 50%;
    vertical-align: middle;
    margin-right: 75px;
    float: left; }

.single-post footer .author-info {
  padding-top: 15px;
  max-width: 560px;
  float: left; }

.single-post .box-share {
  font-size: .8em;
  font-weight: 500;
  margin: 30px 0; }
  .single-post .box-share.top {
    margin-top: 0; }
  .single-post .box-share > * {
    display: inline-block;
    margin-right: 20px; }

.related-posts {
  padding-top: 60px;
  padding-bottom: 30px; }

.swiper-pagination {
  text-align: right; }

.swiper-slide .container > a {
  display: block;
  width: 100%;
  height: 100%; }

.swiper-pagination {
  left: 50%;
  transform: translateX(-50%); }

.swiper-pagination-bullet {
  border-radius: 50%;
  background: #FFF;
  width: 12px;
  height: 12px; }
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #2CC84D; }

/* No files to import found in templates//* */
.main-content .breadcrumbs {
  font-size: 0.8em;
  margin: 15px 0; }
  .main-content .breadcrumbs a {
    color: #000;
    float: none !important;
    width: auto !important;
    display: inline-block; }

.navigation {
  text-align: center;
  margin-bottom: 20px; }
  .paged .navigation {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .navigation a {
    text-align: center;
    display: inline-block;
    width: 48.5%;
    background: #2CC84D;
    color: #FFF;
    text-transform: uppercase;
    padding: 10px; }
    .navigation a:hover {
      text-decoration: none; }

@media (min-width: 48.0625em) {
  .lastest-by-category {
    float: left;
    clear: none;
    text-align: inherit;
    width: 31.33333%;
    margin-left: 0%;
    margin-right: 3%; }
    .lastest-by-category::after {
      content: '';
      display: table;
      clear: both; }
    .lastest-by-category:last-child {
      margin-right: 0%; } }

/* MOD */
.vw-post-share-icons .vw-post-shares-social {
  color: #888888;
  display: inline-block;
  padding: 0px 6px;
  margin-right: 3px;
  transition: all 0.2s ease-out; }

.vw-post-share-icons .vw-icon {
  font-size: 15px;
  color: inherit;
  vertical-align: middle; }

.vw-post-share-icons .vw-post-shares-social-facebook:hover {
  background-color: #3B5998;
  color: #FFFFFF; }

.vw-post-share-icons .vw-post-shares-social-twitter:hover {
  background-color: #00ACED;
  color: #FFFFFF; }

.vw-post-share-icons .vw-post-shares-social-linkedin:hover {
  background-color: #0084bf;
  color: #FFFFFF; }

.vw-post-share-icons .vw-post-shares-social-gplus:hover {
  background-color: #DD4B39;
  color: #FFFFFF; }

.vw-post-share-icons .vw-post-shares-social-pinterest:hover {
  background-color: #CB2027;
  color: #FFFFFF; }

.vw-post-share-box {
  border-bottom: 0 solid #EFEFEF; }

.vw-post-share-box .vw-post-share-box-button {
  display: inline-block;
  padding: 1px 10px 1px 10px;
  margin-right: 3px;
  color: #FFFFFF;
  text-decoration: none; }

@media (max-width: 767px) {
  .vw-post-share-box .vw-post-share-box-button {
    padding: 4px 8px; } }

.vw-post-share-box .vw-post-share-box-button .vw-button-label {
  font-size: 11px;
  margin-left: 5px; }

@media (max-width: 767px) {
  .vw-post-share-box .vw-post-share-box-button .vw-button-label {
    display: none; } }

.vw-post-share-box .vw-post-share-box-button:hover {
  background-color: #3E3E3E;
  transition: all 0.2s ease-out; }

.vw-post-share-box .vw-post-shares-social-pinterest {
  background-color: #CB2027; }

.vw-post-share-box .vw-post-shares-social-twitter {
  background-color: #39A9E0; }

.vw-post-share-box .vw-post-shares-social-linkedin {
  background-color: #0084bf; }

.vw-post-share-box .vw-post-shares-social-facebook {
  background-color: #3B5998; }

.vw-post-share-box .vw-post-shares-social-gplus {
  background-color: #D14836; }

.vw-post-share-box .vw-post-shares-social-whatsapp {
  background-color: #33cc66; }

.vw-post-share-big-number {
  display: inline-block;
  margin-right: 15px;
  text-align: center;
  text-transform: uppercase;
  line-height: 1em;
  vertical-align: text-top; }

.vw-post-share-big-number .vw-number {
  font-weight: normal;
  font-size: 30px;
  margin-bottom: 4px;
  color: #2CC84D; }

.vw-post-share-big-number .vw-unit {
  font-size: 8px;
  letter-spacing: 0px;
  opacity: 0.5;
  font-family: Arial, sans-serif; }

#vw-post-shares-dialog {
  background: white;
  padding: 20px 30px;
  text-align: left;
  max-width: 600px;
  margin: 40px auto;
  position: relative; }

#vw-post-shares-dialog .vw-post-shares-title {
  color: #111111;
  text-transform: uppercase; }

#vw-post-shares-dialog .vw-post-shares-subtitle {
  font-size: 11px;
  font-weight: bold;
  color: #BBBBBB;
  letter-spacing: 0px; }

#vw-post-shares-dialog .vw-post-shares-socials {
  margin-top: 20px;
  margin-bottom: 30px; }

#vw-post-shares-dialog .vw-post-shares-social {
  font-size: 24px;
  color: #FFFFFF;
  background-color: #EFEFEF;
  padding: 10px 10px;
  margin-top: 10px;
  margin-right: 10px;
  display: inline-block; }

@media (min-width: 768px) {
  .vw-post-share-box .vw-post-shares-social-whatsapp {
    display: none; } }

.section-title {
  font-size: 2em;
  font-weight: 500;
  margin-top: 0;
  color: #4f4f4f; }

.home-last-posts {
  padding-top: 40px;
  padding-bottom: 30px; }

.mailchimp-form {
  background: #d1d1d1;
  padding: 15px 0;
  margin-top: -40px; }
  .mailchimp-form h2 {
    font-weight: 500;
    margin: 10px 0 0;
    color: #4f4f4f;
    font-size: 1.3em; }
  .mailchimp-form label {
    display: none; }
  .mailchimp-form input {
    margin-bottom: 0; }
  .mailchimp-form button {
    text-transform: none;
    font-weight: 500; }
  .mailchimp-form .col {
    margin-bottom: 10px; }
  @media (min-width: 48.0625em) {
    .mailchimp-form .col {
      float: left;
      clear: none;
      text-align: inherit;
      width: 22.75%;
      margin-left: 0%;
      margin-right: 3%;
      margin-bottom: 0; }
      .mailchimp-form .col::after {
        content: '';
        display: table;
        clear: both; }
      .mailchimp-form .col:nth-child(n) {
        margin-right: 3%;
        float: left;
        clear: none; }
      .mailchimp-form .col:nth-child(4n) {
        margin-right: 0%;
        float: right; }
      .mailchimp-form .col:nth-child(4n + 1) {
        clear: both; } }

.banners {
  padding-top: 30px;
  padding-bottom: 30px; }
  .banners .banner {
    margin-bottom: 10px; }
    @media (min-width: 48.0625em) {
      .banners .banner {
        float: left;
        clear: none;
        text-align: inherit;
        width: 31.33333%;
        margin-left: 0%;
        margin-right: 3%;
        margin-bottom: 0; }
        .banners .banner::after {
          content: '';
          display: table;
          clear: both; }
        .banners .banner:last-child {
          margin-right: 0%; } }

.most-viewed {
  padding-top: 60px;
  padding-bottom: 30px;
  background: #dfdfdf; }
  @media (min-width: 62.5em) {
    .most-viewed .post-card {
      margin-bottom: 0; } }

.categories {
  padding-top: 60px;
  padding-bottom: 30px; }

.features {
  list-style: none;
  padding-left: 0;
  text-align: center;
  margin: 30px 0; }
  .features span {
    display: block;
    color: #2CC84D;
    font-size: 40px;
    margin-bottom: 10px; }
  .features li {
    display: inline-block;
    vertical-align: top;
    margin: 0 30px 15px; }
    @media (min-width: 62.5em) {
      .features li {
        margin-bottom: 0; } }
    @media (max-width: 34.375em) {
      .features li {
        width: 80px; } }

.insta-feed {
  position: relative; }
  .insta-feed .tablet, .insta-feed .desktop {
    display: none; }
  @media (min-width: 48.0625em) {
    .insta-feed .mobile {
      display: none; }
    .insta-feed .tablet {
      display: block; } }
  @media (min-width: 62.5em) {
    .insta-feed .tablet {
      display: none; }
    .insta-feed .desktop {
      display: block; } }
  .insta-feed .follow-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #FFF;
    color: #4f4f4f;
    border: 2px solid #4f4f4f;
    padding: 12px 15px; }
    .insta-feed .follow-button:hover {
      text-decoration: none; }
    .insta-feed .follow-button span {
      color: #000;
      margin-right: 10px;
      font-size: 20px;
      vertical-align: middle; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background-color: #2CC84D;
  top: 50%;
  margin-top: -10px\9;
  /*lte IE 8*/
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
  background-size: 13px;
  padding: 18px;
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 100; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }

.slick-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.slick-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.slick-prev:before, .slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: 15px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }

.slick-next {
  right: 15px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }

/* Dots */
.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -45px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

/**
 * Swiper 3.0.8
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * 
 * http://www.idangero.us/swiper/
 * 
 * Copyright 2015, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 * 
 * Licensed under MIT
 * 
 * Released on: June 14, 2015
 */
.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -ms-flex-direction: column;
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  transform-style: preserve-3d;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  transform-style: preserve-3d;
  -webkit-flex-shrink: 0;
  -ms-flex: 0 0 auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

/* Arrows */
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat; }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  opacity: 0.2;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  opacity: 0.4;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms;
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

.swiper-pagination-bullet {
  position: relative;
  width: 15px;
  height: 15px;
  display: inline-block;
  background: #FFF; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-bullet-active {
  background: #007aff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination .swiper-pagination-bullet {
  margin: 5px 0;
  display: block; }

.swiper-container-horizontal > .swiper-pagination {
  bottom: 10px;
  left: 0;
  width: 100%; }

.swiper-container-horizontal > .swiper-pagination .swiper-pagination-bullet {
  margin: 0 3px; }

/* 3D Container */
.swiper-container-3d {
  -o-perspective: 1200px;
  perspective: 1200px; }

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-right {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-top {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-bottom {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */ }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

/* Cube */
.swiper-container-cube {
  overflow: visible; }

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  visibility: hidden;
  transform-origin: 0 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px); }

.swiper-container-cube.swiper-container-vertical .swiper-cube-shadow {
  z-index: 0; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ub3JtYWxpemUtc2Nzcy9fbm9ybWFsaXplLnNjc3MiLCJjb3JlL19mbGV4LWdyaWQuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL19icmVha3BvaW50LnNjc3MiLCJjb3JlL19mb250LWljb21vb24uc2NzcyIsImNvcmUvX2dyaWQuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvamVldC9zY3NzL19ncmlkLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2plZXQvc2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCJjb3JlL19zdmcuc2NzcyIsImNvcmUvX3dvcmRwcmVzcy1jb3JlLnNjc3MiLCJhdG9tcy9fYmFzZS5zY3NzIiwiY29yZS9fX3ZhcmlhYmxlcy5zY3NzIiwiYXRvbXMvX2J1dHRvbnMuc2NzcyIsImF0b21zL19mb3Jtcy5zY3NzIiwibW9sZWN1bGVzL19mdWxsYmFubmVyLnNjc3MiLCJvcmdhbmlzbXMvX2Zvb3Rlci5zY3NzIiwib3JnYW5pc21zL19oZWFkZXIuc2NzcyIsIm9yZ2FuaXNtcy9fbW9iaWxlLW5hdi5zY3NzIiwib3JnYW5pc21zL19wb3N0LWNhcmQuc2NzcyIsIm9yZ2FuaXNtcy9fc2VhY2gtYm94LnNjc3MiLCJvcmdhbmlzbXMvX3NpbmdsZS1wb3N0LnNjc3MiLCJvcmdhbmlzbXMvX3N3aXBlci5zY3NzIiwibWFpbi5zY3NzIiwicGFnZXMvX2Jsb2cuc2NzcyIsInBhZ2VzL19ob21lLnNjc3MiLCJ2ZW5kb3JzL19zbGljay10aGVtZS5zY3NzIiwidmVuZG9ycy9fc3dpcGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOztnRkFFZ0Y7QUFDaEY7Ozs7R0FJRztBQUlIO2dGQUNnRjtBQUVoRjs7Ozs7O0dBTUc7QUFFSDtFQUNFLHdCQUF3QjtFQUFFLE9BQU87RUFDakMs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QW1CO0VBQ25CLGtCQUFrQjtFQUNsQixZQUFZO0VBR1osc0JBQXNCO0VBQ3RCLG9FQUFtRTtFQUVuRSw0REFBMkQsRUFDNUQ7O0FBQ0Q7RUFDRSxlQUFlO0VBQ2YsWUFBWTtFQUNaLFlBQVk7RUFDWixhQUFhO0VBQ2IsMDdDQUFxQjtFQUNyQix5QkFBeUI7RUFFekIsc0JBQXNCO0VBQ3RCLDZCQUE2QixFQUM5Qjs7QUFDRDtFQUNFLHU3Q0FBcUIsRUFDdEI7O0FBQ0Q7RUFDRTtJQUNFLGtDQUF5QixFQUFBLEVBQUE7O0FBRzdCO0VBQ0U7SUFDRSwwQkFBaUIsRUFBQSxFQUFBIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTm9ybWFsaXplLnNjc3Mgc2V0dGluZ3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBJbmNsdWRlcyBsZWdhY3kgYnJvd3NlciBzdXBwb3J0IElFNi83XHJcbiAqXHJcbiAqIFNldCB0byBmYWxzZSBpZiB5b3Ugd2FudCB0byBkcm9wIHN1cHBvcnQgZm9yIElFNiBhbmQgSUU3XHJcbiAqL1xuLyogQmFzZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXHJcbiAqIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXHJcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cclxuICogMy4gQ29ycmVjdHMgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRSA2Lzcgd2hlbiBib2R5IGBmb250LXNpemVgIGlzIHNldCB1c2luZ1xyXG4gKiAgYGVtYCB1bml0cy5cclxuICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovIH1cblxuLyoqXHJcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cclxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxyXG4gKiBhbmQgRmlyZWZveC5cclxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cclxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcclxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDYvNy84LzkgYW5kIEZpcmVmb3ggMy5cclxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxyXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcclxuICogUHJldmVudHMgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXHJcbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXHJcbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXHJcbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cclxuICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxyXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcclxuICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxyXG4gKiBhY3RpdmUvaG92ZXIgc3RhdGUuXHJcbiAqL1xuYTphY3RpdmUsIGE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG4vKipcclxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKipcclxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcclxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxyXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG4vKipcclxuICogQWRkcmVzc2VzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxyXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcclxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcclxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiAxLiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cclxuICogMi4gSW1wcm92ZXMgaW1hZ2UgcXVhbGl0eSB3aGVuIHNjYWxlZCBpbiBJRSA3LlxyXG4gKi9cbmltZyB7XG4gIGJvcmRlcjogMDsgfVxuXG4vKipcclxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXHJcbiAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cclxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXHJcbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxyXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cclxuICovXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcclxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKiBDb3JyZWN0IGZvbnQgZmFtaWx5IHNldCBvZGRseSBpbiBJRSA2LCBTYWZhcmkgNC81LCBhbmQgQ2hyb21lLlxyXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiBGb3Jtc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXHJcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cclxuICovXG4vKipcclxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4gKiAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXHJcbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXHJcbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4gKiA0LiBJbXByb3ZlcyBhcHBlYXJhbmNlIGFuZCBjb25zaXN0ZW5jeSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi8gfVxuXG4vKipcclxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXHJcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cclxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cclxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cclxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxyXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxyXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxyXG4gKiAgYW5kIGB2aWRlb2AgY29udHJvbHMuXHJcbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cclxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcclxuICogIGBpbnB1dGAgYW5kIG90aGVycy5cclxuICogNC4gUmVtb3ZlcyBpbm5lciBzcGFjaW5nIGluIElFIDcgd2l0aG91dCBhZmZlY3Rpbmcgbm9ybWFsIHRleHQgaW5wdXRzLlxyXG4gKiAgS25vd24gaXNzdWU6IGlubmVyIHNwYWNpbmcgcmVtYWlucyBpbiBJRSA2LlxyXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcclxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cclxuICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLyoqXHJcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cclxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcclxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxyXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cclxuICovXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLyoqXHJcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXHJcbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXHJcbiAqICBLbm93biBpc3N1ZTogZXhjZXNzIHBhZGRpbmcgcmVtYWlucyBpbiBJRSA2LlxyXG4gKi9cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxyXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxyXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXHJcbiAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXHJcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cclxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xyXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXHJcbiAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXHJcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cclxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcclxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxyXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXHJcbiAqIDMuIENvcnJlY3RzIHRleHQgbm90IHdyYXBwaW5nIGluIEZpcmVmb3ggMy5cclxuICogNC4gQ29ycmVjdHMgYWxpZ25tZW50IGRpc3BsYXllZCBvZGRseSBpbiBJRSA2LzcuXHJcbiAqL1xubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcclxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cclxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxyXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXHJcbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxyXG4gKi9cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyogVGFibGVzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxyXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmZsZXgsIC5mbGV4LWNvbnRhaW5lciwgLmZsZXgtdmVydGljYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uZmxleC1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDExNzZweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cblxuLmZsZXgxLTIsIC5mbGV4NS0xMiwgLmZsZXg3LTEyIHtcbiAgcGFkZGluZzogMCAyMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuZmxleDEtMiwgLmZsZXg1LTEyLCAuZmxleDctMTIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgIGZsZXgtZ3JvdzogMTsgfSB9XG5cbi5mbGV4NS0xMiB7XG4gIGZsZXgtYmFzaXM6IDQyJTsgfVxuXG4uZmxleDctMTIge1xuICBmbGV4LWJhc2lzOiA1OCU7IH1cblxuLmZsZXgtY2VudGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmxleC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtdmVydGljYWwgPiAqIHtcbiAgZmxleC1ncm93OiAxOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3VzZS1vcmdhbmljbyc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvdXNlLW9yZ2FuaWNvLmVvdD92cGVzcHVcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvdXNlLW9yZ2FuaWNvLmVvdD92cGVzcHUjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3VzZS1vcmdhbmljby50dGY/dnBlc3B1XCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy91c2Utb3JnYW5pY28ud29mZj92cGVzcHVcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvdXNlLW9yZ2FuaWNvLnN2Zz92cGVzcHUjdXNlLW9yZ2FuaWNvXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbltjbGFzc149XCJzb2NpYWwtXCJdIGE6YmVmb3JlLCBbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ3VzZS1vcmdhbmljbycgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5pY29uLWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZVwiOyB9XG5cbi5zb2NpYWwtZ29vZ2xlLXBsdXMgYTpiZWZvcmUsXG4uaWNvbi1nb29nbGUtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZlwiOyB9XG5cbi5pY29uLXlvdXR1YmUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMFwiOyB9XG5cbi5pY29uLXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTExXCI7IH1cblxuLnNvY2lhbC15b3V0dWJlIGE6YmVmb3JlLFxuLmljb24teW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMlwiOyB9XG5cbi5pY29uLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDBcIjsgfVxuXG4uaWNvbi1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiOyB9XG5cbi5pY29uLWFuaW1hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMlwiOyB9XG5cbi5zb2NpYWwtZmFjZWJvb2sgYTpiZWZvcmUsXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiOyB9XG5cbi5pY29uLWdsdXRlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiOyB9XG5cbi5zb2NpYWwtaW5zdGFncmFtIGE6YmVmb3JlLFxuLmljb24taW5zdGFncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7IH1cblxuLmljb24tbGVhdmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7IH1cblxuLnNvY2lhbC1saW5rZWRpbiBhOmJlZm9yZSxcbi5pY29uLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7IH1cblxuLmljb24tbmF0dXJhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOFwiOyB9XG5cbi5pY29uLW9yZ2FuaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjsgfVxuXG4uaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjsgfVxuXG4uaWNvbi10cmFuczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYlwiOyB9XG5cbi5zb2NpYWwtdHdpdHRlciBhOmJlZm9yZSxcbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGNcIjsgfVxuXG4uaWNvbi12ZWdhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiOyB9XG5cbi5pY29uLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRlXCI7IH1cblxuLmljb24tZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWNlXCI7IH1cblxuLmNvbnRhaW5lciB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDExNzZweDtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgLmNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5yb3cge1xuICBjbGVhcjogYm90aDsgfVxuICAucm93OjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmZ1bGwge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMCU7XG4gIG1hcmdpbi1yaWdodDogMyU7IH1cbiAgLmZ1bGw6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZnVsbDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAuYmxvZyAubWFpbi1jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIHdpZHRoOiA2NS42NjY2NyU7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgIG1hcmdpbi1yaWdodDogMyU7IH1cbiAgICAuYmxvZyAubWFpbi1jb250ZW50OjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuYmxvZyAubWFpbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuICAuYmxvZyAuc2lkZWJhciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICB3aWR0aDogMzEuMzMzMzMlO1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDMlOyB9XG4gICAgLmJsb2cgLnNpZGViYXI6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5ibG9nIC5zaWRlYmFyOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAuY29sMS0yIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIHdpZHRoOiA0OC41JTtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgIC5jb2wxLTI6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5jb2wxLTI6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5jb2wxLTMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lO1xuICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgd2lkdGg6IDMxLjMzMzMzJTtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgIC5jb2wxLTM6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5jb2wxLTM6bnRoLWNoaWxkKG4pIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmNvbDEtMzpudGgtY2hpbGQoM24pIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMCU7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAuY29sMS0zOm50aC1jaGlsZCgzbiArIDEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jb2wyLTMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lO1xuICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgd2lkdGg6IDY1LjY2NjY3JTtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgIC5jb2wyLTM6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5jb2wyLTM6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5jb2wxLTQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lO1xuICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgd2lkdGg6IDIyLjc1JTtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgIC5jb2wxLTQ6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5jb2wxLTQ6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5zcGFuMS00IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgIG1hcmdpbi1yaWdodDogMCU7IH1cbiAgICAuc3BhbjEtNDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jb2w1LTEyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIHdpZHRoOiAzOS45MTY2NyU7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgIG1hcmdpbi1yaWdodDogMyU7IH1cbiAgICAuY29sNS0xMjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmNvbDUtMTI6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5jb2w3LTEyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIHdpZHRoOiA1Ny4wODMzMyU7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgIG1hcmdpbi1yaWdodDogMyU7IH1cbiAgICAuY29sNy0xMjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmNvbDctMTI6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9IH1cblxuc2VjdGlvbjo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbnN2ZyBwYXRoLFxuc3ZnIGcge1xuICBmaWxsOiBpbmhlcml0OyB9XG5cbi8qID1Xb3JkUHJlc3MgQ29yZVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmFsaWdubm9uZSB7XG4gIG1hcmdpbjogNXB4IDIwcHggMjBweCAwOyB9XG5cbi5hbGlnbmNlbnRlcixcbmRpdi5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDVweCBhdXRvIDVweCBhdXRvOyB9XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDVweCAwIDIwcHggMjBweDsgfVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogNXB4IDIwcHggMjBweCAwOyB9XG5cbmEgaW1nLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4OyB9XG5cbmEgaW1nLmFsaWdubm9uZSB7XG4gIG1hcmdpbjogNXB4IDIwcHggMjBweCAwOyB9XG5cbmEgaW1nLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDsgfVxuXG5hIGltZy5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi53cC1jYXB0aW9uIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YwZjBmMDtcbiAgbWF4LXdpZHRoOiA5NiU7XG4gIC8qIEltYWdlIGRvZXMgbm90IG92ZXJmbG93IHRoZSBjb250ZW50IGFyZWEgKi9cbiAgcGFkZGluZzogNXB4IDNweCAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLndwLWNhcHRpb24uYWxpZ25ub25lIHtcbiAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7IH1cblxuLndwLWNhcHRpb24uYWxpZ25sZWZ0IHtcbiAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7IH1cblxuLndwLWNhcHRpb24uYWxpZ25yaWdodCB7XG4gIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4OyB9XG5cbi53cC1jYXB0aW9uIGltZyB7XG4gIGJvcmRlcjogMCBub25lO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiA5OC41JTtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IGF1dG87IH1cblxuLndwLWNhcHRpb24gcC53cC1jYXB0aW9uLXRleHQge1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgNHB4IDVweDsgfVxuXG4vKiBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiAqL1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxNzU5YjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDtcbiAgLyogQWJvdmUgV1AgdG9vbGJhci4gKi8gfVxuXG4qLFxuKjo6YWZ0ZXIsXG4qOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJ1VidW50dScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgY29sb3I6ICM0ZjRmNGY7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDIuNWVtO1xuICBsaW5lLWhlaWdodDogMS40ZW07IH1cblxuaDEsIGgyIHtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7IH1cblxuaDIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5wLCBsaSB7XG4gIGZvbnQtc2l6ZTogMC45NGVtO1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIG1hcmdpbjogLjdlbSAwOyB9XG5cbnAge1xuICBsaW5lLWhlaWdodDogMS42ZW07IH1cblxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG5ociB7XG4gIGJhY2tncm91bmQ6ICM3MzY5NjA7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiAycHg7XG4gIG1hcmdpbjogNDBweCAwIDMwcHg7IH1cblxuYSB7XG4gIGNvbG9yOiAjNGY0ZjRmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5idG4ge1xuICBwYWRkaW5nOiAyMHB4IDVweDtcbiAgZm9udC1zaXplOiAxLjRlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICNGRkY7IH1cbiAgLmJ0bjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzQ3NDMzZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxubGFiZWwge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmxhYmVsIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDVweCAwOyB9XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDIwcHggMDsgfVxuXG5sZWdlbmQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDEuNSU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogOTAlOyB9XG5cbmlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0LCBvcHRpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC1zaXplOiAxLjFlbTsgfVxuICAjaW5zY3JpY2FvRm9ybSBpbnB1dCwgI2luc2NyaWNhb0Zvcm0gdGV4dGFyZWEsICNpbnNjcmljYW9Gb3JtIHNlbGVjdCwgI2luc2NyaWNhb0Zvcm0gb3B0aW9uIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMjVweCAhaW1wb3J0YW50OyB9XG5cblt0eXBlPXN1Ym1pdF0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogIzhlYjkzNTtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjRkZGO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiAuM3MgYWxsO1xuICBmb250LXdlaWdodDogMzAwOyB9XG4gIC53aWRnZXQgW3R5cGU9c3VibWl0XSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgW3R5cGU9c3VibWl0XTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2E2Y2U1MzsgfVxuXG4uc3Itb25seSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxubGFiZWwuZXJyb3Ige1xuICBiYWNrZ3JvdW5kOiByZWQ7XG4gIGNvbG9yOiAjRkZGO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAuOWVtO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIG1hcmdpbjogLTIwcHggMCAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cblxuaW5wdXQuZXJyb3IsIHRleHRhcmVhLmVycm9yIHtcbiAgY29sb3I6IHJlZDtcbiAgYmFja2dyb3VuZDogI2ZmZDRmYztcbiAgYm9yZGVyOiAycHggc29saWQgcmVkOyB9XG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTk5OyB9XG5cbjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM5OTk7IH1cblxuOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM5OTk7IH1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTk5OyB9XG5cbi5mdWxsYmFubmVyIHtcbiAgaGVpZ2h0OiAzMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweCAhaW1wb3J0YW50OyB9XG4gIC5ob21lIC5mdWxsYmFubmVyIHtcbiAgICBoZWlnaHQ6IDYwMHB4OyB9XG4gIC5mdWxsYmFubmVyIC5zY3JvbGwtZG93biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMjBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGZpbGw6ICNGRkY7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gICAgLmZ1bGxiYW5uZXIgLnNjcm9sbC1kb3duIC5pY29uLWFycm93LWRvd24ge1xuICAgICAgd2lkdGg6IDQycHg7IH1cbiAgLmZ1bGxiYW5uZXIgLnN3aXBlci1jb250YWluZXIsXG4gIC5mdWxsYmFubmVyIC5zd2lwZXItd3JhcHBlcixcbiAgLmZ1bGxiYW5uZXIgLnN3aXBlci1zbGlkZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5mdWxsYmFubmVyIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTBweDtcbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMTcwcHg7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5mdWxsYmFubmVyIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gIC5mdWxsYmFubmVyIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBhZGRpbmc6IDYwcHggMjVweDtcbiAgICBib3R0b206IDQwcHg7XG4gICAgdG9wOiBhdXRvOyB9XG4gICAgLmhvbWUgLmZ1bGxiYW5uZXIgLnN3aXBlci1idXR0b24tcHJldiwgLmhvbWVcbiAgICAuZnVsbGJhbm5lciAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBib3R0b206IGF1dG87IH1cbiAgLmZ1bGxiYW5uZXIgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMCA1cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZnVsbGJhbm5lciAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICAgIGxlZnQ6IGNhbGMoKDEwMCUgLSAxMTc1cHgpIC8gMik7IH1cbiAgICAuZnVsbGJhbm5lciAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICAgIHJpZ2h0OiBjYWxjKCgxMDAlIC0gMTE3NXB4KSAvIDIpOyB9IH1cbiAgLmZ1bGxiYW5uZXIgLnN3aXBlci1zbGlkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgICAuZnVsbGJhbm5lciAuc3dpcGVyLXNsaWRlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC44KSwgdHJhbnNwYXJlbnQpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDsgfVxuICAgIC5mdWxsYmFubmVyIC5zd2lwZXItc2xpZGUgLmNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmZ1bGxiYW5uZXIgLnN1cHBsaWVyLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXJnaW46IDAgLTIwcHggLTIwcHggLTIwcHg7IH1cbiAgLmZ1bGxiYW5uZXIgLnBvc3QtY2F0ZWdvcnkge1xuICAgIGJhY2tncm91bmQ6ICM4ZWI5MzU7XG4gICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogM3B4IDZweDsgfVxuICAuZnVsbGJhbm5lciAuYmFubmVyLXRleHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogNDBweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbWF4LXdpZHRoOiA2NyU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBtYXJnaW46IDAgMTBweDsgfVxuICAgIC5zaW5nbGUgLmZ1bGxiYW5uZXIgLmJhbm5lci10ZXh0IHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLmZ1bGxiYW5uZXIgLmJhbm5lci10ZXh0IGEge1xuICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAgIC5mdWxsYmFubmVyIC5iYW5uZXItdGV4dCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgICAuZnVsbGJhbm5lciAuYmFubmVyLXRleHQge1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3My41ZW0pIHtcbiAgICAgIC5mdWxsYmFubmVyIC5iYW5uZXItdGV4dCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCgxMDB2dyAtIDExNzZweCkgLyAyICogLTEpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTE3NnB4KSAvIDIpO1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuICAgICAgICAuc2luZ2xlIC5mdWxsYmFubmVyIC5iYW5uZXItdGV4dCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9IH1cbiAgICAuZnVsbGJhbm5lciAuYmFubmVyLXRleHQgaDEge1xuICAgICAgY29sb3I6ICNGRkY7XG4gICAgICBmb250LXNpemU6IDEuOGVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIG1hcmdpbjogLjVlbSAwIDA7XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgICAgIC5mdWxsYmFubmVyIC5iYW5uZXItdGV4dCBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjNlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07IH0gfVxuICAgIC5mdWxsYmFubmVyIC5iYW5uZXItdGV4dCBwIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuZnVsbGJhbm5lciAucG9zdC1pbmZvIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgZm9udC1zaXplOiAuOGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5mdWxsYmFubmVyIC5wb3N0LWluZm8gbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG5cbi5mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBjb2xvcjogIzRmNGY0ZjtcbiAgcGFkZGluZzogNTBweCAwIDQwcHg7IH1cbiAgLmZvb3RlciAuYnJhbmQge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gICAgLmZvb3RlciAuYnJhbmQgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMjIwcHg7IH1cbiAgLmZvb3RlciAuaGlnaGxpZ2h0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb290ZXIgYSB7XG4gICAgY29sb3I6ICM0ZjRmNGY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmZvb3RlciBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjOGViOTM1O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5mb290ZXIgdWwge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIC5mb290ZXIgLnNvY2lhbC1saW5rcyBhOmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmZvb3RlciAuYXV4aWxpYXItbmF2LFxuICAgIC5mb290ZXIgLm1haW4tbmF2LFxuICAgIC5mb290ZXIgLnNvY2lhbC1saW5rcyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICAgIHdpZHRoOiAxNC4xNjY2NyU7XG4gICAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMlOyB9XG4gICAgICAuZm9vdGVyIC5hdXhpbGlhci1uYXY6OmFmdGVyLFxuICAgICAgLmZvb3RlciAubWFpbi1uYXY6OmFmdGVyLFxuICAgICAgLmZvb3RlciAuc29jaWFsLWxpbmtzOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5mb290ZXIgLmF1eGlsaWFyLW5hdjpsYXN0LWNoaWxkLFxuICAgICAgLmZvb3RlciAubWFpbi1uYXY6bGFzdC1jaGlsZCxcbiAgICAgIC5mb290ZXIgLnNvY2lhbC1saW5rczpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuICAgIC5mb290ZXIgLmJyYW5kLFxuICAgIC5mb290ZXIgLmFib3V0LXRleHQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMjIuNzUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgICAgLmZvb3RlciAuYnJhbmQ6OmFmdGVyLFxuICAgICAgLmZvb3RlciAuYWJvdXQtdGV4dDo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuZm9vdGVyIC5icmFuZDpsYXN0LWNoaWxkLFxuICAgICAgLmZvb3RlciAuYWJvdXQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwJTsgfSB9XG5cbi5wYWdlLWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXNpemU6IC43ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogN3B4IDA7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGNvbG9yOiAjRkZGOyB9XG4gIC5wYWdlLWZvb3Rlcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5wYWdlLWZvb3RlciAuY3JlZGl0cyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAucGFnZS1mb290ZXIgYSB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5wYWdlLWZvb3RlciB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAucGFnZS1mb290ZXIgLmNvcHkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5wYWdlLWZvb3RlciAuY3JlZGl0cyB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLnBhZ2UtZm9vdGVyIC5jb2wge1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICAucGFnZS1mb290ZXIgLmNvbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC5wYWdlLWZvb3RlciAuY29weSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTsgfSB9XG5cbi5oZWFkZXItcGxhY2Vob2xkZXIge1xuICBwYWRkaW5nLXRvcDogODBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLmhlYWRlci1wbGFjZWhvbGRlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgLnN0aWNrIC5oZWFkZXItcGxhY2Vob2xkZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTA0cHg7IH0gfVxuXG4uaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBjb2xvcjogIzRmNGY0ZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLmhlYWRlciB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyB9IH1cbiAgLmhlYWRlciB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLmhlYWRlciB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgLmhlYWRlciBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLmhlYWRlciBhIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDAgNXB4OyB9IH1cbiAgICAuaGVhZGVyIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5oZWFkZXIgLmF1eGlsaWFyLWJhciB7XG4gICAgYmFja2dyb3VuZDogIzhlYjkzNTtcbiAgICBwYWRkaW5nOiAxcHggMDsgfVxuICAgIC5oZWFkZXIgLmF1eGlsaWFyLWJhcjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmhlYWRlciAuYXV4aWxpYXItYmFyIGEge1xuICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAgICAgLmhlYWRlciAuYXV4aWxpYXItYmFyIGEge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDsgfSB9XG4gICAgLmhlYWRlciAuYXV4aWxpYXItYmFyIGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmhlYWRlciAuYXV4aWxpYXItbmF2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLmhlYWRlciAuYXV4aWxpYXItbmF2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgLmhlYWRlciAuYXV4aWxpYXItbmF2IC5jdXJyZW50LW1lbnUtaXRlbSBhLFxuICAgIC5oZWFkZXIgLmF1eGlsaWFyLW5hdiAuY3VycmVudF9wYWdlX3BhcmVudCBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmhlYWRlciAuYXV4aWxpYXItbmF2IC5jdXJyZW50LW1lbnUtaXRlbSBhOmFmdGVyLFxuICAgICAgLmhlYWRlciAuYXV4aWxpYXItbmF2IC5jdXJyZW50X3BhZ2VfcGFyZW50IGE6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICM0ZjRmNGY7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgICAgIC5oZWFkZXIgLmF1eGlsaWFyLW5hdiAuY3VycmVudC1tZW51LWl0ZW0gYTphZnRlcixcbiAgICAgICAgICAuaGVhZGVyIC5hdXhpbGlhci1uYXYgLmN1cnJlbnRfcGFnZV9wYXJlbnQgYTphZnRlciB7XG4gICAgICAgICAgICBib3R0b206IC0xcHg7IH0gfVxuICAgIC5oZWFkZXIgLmF1eGlsaWFyLW5hdiBhIHtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5oZWFkZXIgLmJyYW5kIGltZyB7XG4gICAgbWF4LXdpZHRoOiAyODBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLmhlYWRlciAuYnJhbmQgaW1nIHtcbiAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICBtYXgtd2lkdGg6IDIyMHB4OyB9IH1cbiAgLmhlYWRlciAuc29jaWFsLWxpbmtzIGEge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogOXB4O1xuICAgIG9wYWNpdHk6IC42OyB9XG4gICAgLmhlYWRlciAuc29jaWFsLWxpbmtzIGE6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuaGVhZGVyIC5zb2NpYWwtbGlua3MgdWwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5oZWFkZXIgLnNvY2lhbC1saW5rcyB1bCB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuaGVhZGVyIC5tYWluLWJhciB7XG4gICAgcGFkZGluZzogMTVweCAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLmhlYWRlciAubWFpbi1iYXIge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMTJweDsgfVxuICAgICAgICAuc3RpY2sgLmhlYWRlciAubWFpbi1iYXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgei1pbmRleDogMjAwMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGOyB9IH1cbiAgLmhlYWRlciAubWFpbi1uYXYgdWwge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuaGVhZGVyIC5tYWluLW5hdiBhIHtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICBjb2xvcjogIzRmNGY0ZjsgfVxuICAgIC5oZWFkZXIgLm1haW4tbmF2IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICM4ZWI5MzU7IH1cbiAgLmhlYWRlciAubWFpbi1uYXYgLmhpZ2hsaWdodCBhIHtcbiAgICBjb2xvcjogIzhlYjkzNTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLmhlYWRlciAuYXV4aWxpYXItbmF2IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDQ4LjUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgICAgLmhlYWRlciAuYXV4aWxpYXItbmF2OjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5oZWFkZXIgLmF1eGlsaWFyLW5hdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuICAgIC5oZWFkZXIgLnNlYXJjaC1ib3gsXG4gICAgLmhlYWRlciAuYnJhbmQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMzEuMzMzMzMlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgICAgLmhlYWRlciAuc2VhcmNoLWJveDo6YWZ0ZXIsXG4gICAgICAuaGVhZGVyIC5icmFuZDo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuaGVhZGVyIC5zZWFyY2gtYm94Omxhc3QtY2hpbGQsXG4gICAgICAuaGVhZGVyIC5icmFuZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuICAgIC5oZWFkZXIgLnNvY2lhbC1saW5rcyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICAgIHdpZHRoOiAxNC4xNjY2NyU7XG4gICAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMlOyB9XG4gICAgICAuaGVhZGVyIC5zb2NpYWwtbGlua3M6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmhlYWRlciAuc29jaWFsLWxpbmtzOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gICAgLmhlYWRlciAubWFpbi1uYXYge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogNjUuNjY2NjclO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgICAgLmhlYWRlciAubWFpbi1uYXY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmhlYWRlciAubWFpbi1uYXY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMCU7IH0gfVxuXG4ubW9iaWxlLW5hdiwgLnBhZ2Utd3JhcHBlciAuc2VhcmNoLWJveCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLmhlYWRlcixcbiAgLnBhZ2Utd3JhcHBlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1vdXQ7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGJhY2tncm91bmQ6ICNGRkY7IH1cbiAgICAub3BlbmVkLW1lbnUgLmhlYWRlciwgLm9wZW5lZC1tZW51XG4gICAgLnBhZ2Utd3JhcHBlciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBlYXNlLW91dDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTZweCk7IH1cbiAgLnBhZ2Utd3JhcHBlciAuc2VhcmNoLWJveCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIGJhY2tncm91bmQ6ICNGRkY7IH1cbiAgICAucGFnZS13cmFwcGVyIC5zZWFyY2gtYm94IGlucHV0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNDQ0M7IH1cbiAgICAucGFnZS13cmFwcGVyIC5zZWFyY2gtYm94IGJ1dHRvbiB7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogMTVweDsgfVxuICAucGFnZS13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwOyB9XG4gICAgLm9wZW5lZC1tZW51IC5wYWdlLXdyYXBwZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAtMjBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHRyYW5zcGFyZW50LCByZ2JhKDAsIDAsIDAsIDAuMykpOyB9XG4gIC5vcGVuZWQtbWVudSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaGVhZGVyIC5tYWluLW5hdixcbiAgLmhlYWRlciAuYXV4aWxpYXItYmFyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tb2JpbGUtbmF2IHtcbiAgICBiYWNrZ3JvdW5kOiAjOGViOTM1O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMjU2cHg7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgICAub3BlbmVkLW1lbnUgLm1vYmlsZS1uYXYge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZS1vdXQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgICAubW9iaWxlLW5hdiAubWFpbi1uYXYge1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07IH1cbiAgICAgIC5tb2JpbGUtbmF2IC5tYWluLW5hdiB1bCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgLm1vYmlsZS1uYXYgLm1haW4tbmF2IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5tb2JpbGUtbmF2IC5tYWluLW5hdiBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogI0ZGRjsgfVxuICAgICAgLm1vYmlsZS1uYXYgLm1haW4tbmF2IC5oaWdobGlnaHQgYSB7XG4gICAgICAgIGNvbG9yOiAjNGY0ZjRmOyB9XG4gICAgICAubW9iaWxlLW5hdiAubWFpbi1uYXY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbGVmdDogMjB2dztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5tb2JpbGUtbmF2IC5zb2NpYWwtbGlua3MgYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogOXB4O1xuICAgICAgY29sb3I6ICM0ZjRmNGY7IH1cbiAgICAgIC5tb2JpbGUtbmF2IC5zb2NpYWwtbGlua3MgYTpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAubW9iaWxlLW5hdiAuc29jaWFsLWxpbmtzIHVsIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5tb2JpbGUtbmF2IC5zb2NpYWwtbGlua3MgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAubW9iaWxlLW5hdiAuc29jaWFsLWxpbmtzIHVsIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5tZW51LXRyaWdnZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC03cHg7XG4gICAgbGVmdDogMHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB6LWluZGV4OiA1MDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLyogaW1hZ2UgcmVwbGFjZW1lbnQgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcztcbiAgICB6LWluZGV4OiAyMDAwOyB9XG4gICAgLm1lbnUtdHJpZ2dlcjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJNRU5VXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0xM3B4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgLm1lbnUtdHJpZ2dlciAubWVudS1pY29uIHtcbiAgICAgIC8qIGljb24gY3JlYXRlZCBpbiBDU1MgKi9cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgICBoZWlnaHQ6IDNweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICB6LWluZGV4OiA1MTA7IH1cbiAgICAgIC5vcGVuZWQtbWVudSAubWVudS10cmlnZ2VyIC5tZW51LWljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gICAgICAubWVudS10cmlnZ2VyIC5tZW51LWljb246YmVmb3JlLCAubWVudS10cmlnZ2VyIC5tZW51LWljb246YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zczsgfVxuICAgICAgLm1lbnUtdHJpZ2dlciAubWVudS1pY29uOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCkgcm90YXRlKDBkZWcpOyB9XG4gICAgICAgIC5vcGVuZWQtbWVudSAubWVudS10cmlnZ2VyIC5tZW51LWljb246YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAgICAgLm1lbnUtdHJpZ2dlciAubWVudS1pY29uOmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpIHJvdGF0ZSgwZGVnKTsgfVxuICAgICAgICAub3BlbmVkLW1lbnUgLm1lbnUtdHJpZ2dlciAubWVudS1pY29uOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKC00NWRlZyk7IH0gfVxuXG4ucG9zdC1jYXJkIHtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbi1ib3R0b206IDI4cHg7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjNzLCB0cmFuc2Zvcm0gLjNzOyB9XG4gIC5wb3N0LWNhcmQ6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDJweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgLTJweCk7IH1cbiAgLnBvc3QtY2FyZCBoMiB7XG4gICAgY29sb3I6ICM0ZjRmNGY7XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5wb3N0LWNhcmQgYSB7XG4gICAgY29sb3I6ICM0ZjRmNGY7IH1cbiAgICAucG9zdC1jYXJkIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5wb3N0LWNhcmQgLmNhcmQtdGV4dCB7XG4gICAgcGFkZGluZzogMjhweCAyMHB4IDIwcHg7IH1cbiAgLnBvc3QtY2FyZC5oaWdobGlnaHQtcG9zdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgICAucG9zdC1jYXJkLmhpZ2hsaWdodC1wb3N0OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNTAlO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC44KSwgdHJhbnNwYXJlbnQpOyB9XG4gICAgLnBvc3QtY2FyZC5oaWdobGlnaHQtcG9zdCBwIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucG9zdC1jYXJkLmhpZ2hsaWdodC1wb3N0IGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAgIC5wb3N0LWNhcmQuaGlnaGxpZ2h0LXBvc3QgLmNhcmQtdGV4dCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gICAgICAucG9zdC1jYXJkLmhpZ2hsaWdodC1wb3N0IC5jYXJkLXRleHQgaDIge1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjdlbTsgfVxuICAucG9zdC1jYXJkIC5yZWFkLW1vcmUge1xuICAgIGNvbG9yOiAjOGViOTM1O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDAuOTRlbTsgfVxuICAucG9zdC1jYXJkIC5hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHBhZGRpbmc6IDAgMjBweCAxNXB4OyB9XG4gICAgLnBvc3QtY2FyZCAuYXV0aG9yIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuZGVmYXVsdC1saXN0IC5wb3N0LWNhcmQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMzEuMzMzMzMlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgICAgLmRlZmF1bHQtbGlzdCAucG9zdC1jYXJkOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5kZWZhdWx0LWxpc3QgLnBvc3QtY2FyZDpudGgtY2hpbGQobikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5kZWZhdWx0LWxpc3QgLnBvc3QtY2FyZDpudGgtY2hpbGQoM24pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwJTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAuZGVmYXVsdC1saXN0IC5wb3N0LWNhcmQ6bnRoLWNoaWxkKDNuICsgMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5wb3N0LWNhcmQuaGlnaGxpZ2h0LXBvc3QgcCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5ob21lLWxhc3QtcG9zdHMgLmZlYXR1cmVkIC5wb3N0LWNhcmQuaGlnaGxpZ2h0LXBvc3Qge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogNjUuNjY2NjclO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgICAgLmhvbWUtbGFzdC1wb3N0cyAuZmVhdHVyZWQgLnBvc3QtY2FyZC5oaWdobGlnaHQtcG9zdDo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuaG9tZS1sYXN0LXBvc3RzIC5mZWF0dXJlZCAucG9zdC1jYXJkLmhpZ2hsaWdodC1wb3N0Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gICAgLmhvbWUtbGFzdC1wb3N0cyAuZmVhdHVyZWQgLnBvc3QtY2FyZDpudGgtY2hpbGQoMikge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMzEuMzMzMzMlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgICAgLmhvbWUtbGFzdC1wb3N0cyAuZmVhdHVyZWQgLnBvc3QtY2FyZDpudGgtY2hpbGQoMik6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmhvbWUtbGFzdC1wb3N0cyAuZmVhdHVyZWQgLnBvc3QtY2FyZDpudGgtY2hpbGQoMik6bnRoLWNoaWxkKG4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuaG9tZS1sYXN0LXBvc3RzIC5mZWF0dXJlZCAucG9zdC1jYXJkOm50aC1jaGlsZCgyKTpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwJTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAuaG9tZS1sYXN0LXBvc3RzIC5mZWF0dXJlZCAucG9zdC1jYXJkOm50aC1jaGlsZCgyKTpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuLmRlZmF1bHQtbGlzdCxcbi5ob21lLWxhc3QtcG9zdHMgLmZlYXR1cmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc2VhcmNoLWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICM0ZjRmNGY7IH1cbiAgLnNlYXJjaC1ib3ggbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNlYXJjaC1ib3ggaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogLjg1ZW07XG4gICAgcGFkZGluZy1yaWdodDogNTBweDsgfVxuICAuc2VhcmNoLWJveCBidXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICBmb250LXNpemU6IDIycHg7IH1cbiAgICAuc2VhcmNoLWJveCBidXR0b246Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgIC5zZWFyY2gtYm94IGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zZWFyY2gtYm94IGJ1dHRvbiAuaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAjOGI4ZDkwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLnNpbmdsZS1wb3N0IC5tYWluLWNvbnRlbnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lO1xuICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgd2lkdGg6IDgyLjgzMzMzJTtcbiAgICBtYXJnaW4tbGVmdDogOC41ODMzMyU7XG4gICAgbWFyZ2luLXJpZ2h0OiAzJTsgfVxuICAgIC5zaW5nbGUtcG9zdCAubWFpbi1jb250ZW50OjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuc2luZ2xlLXBvc3QgLm1haW4tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMCU7IH0gfVxuXG4uc2luZ2xlLXBvc3QgLm1haW4tdGV4dCBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnNpbmdsZS1wb3N0IC50YWdzLCAuc2luZ2xlLXBvc3QgLmNhdGVnb3JpZXMtbGlzdCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLnNpbmdsZS1wb3N0IC50YWdzIGEsIC5zaW5nbGUtcG9zdCAuY2F0ZWdvcmllcy1saXN0IGEge1xuICAgIGJhY2tncm91bmQ6ICNkZWRlZGU7XG4gICAgY29sb3I6ICM0ZjRmNGY7XG4gICAgcGFkZGluZzogMnB4IDVweDtcbiAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG4gICAgLnNpbmdsZS1wb3N0IC50YWdzIGE6aG92ZXIsIC5zaW5nbGUtcG9zdCAuY2F0ZWdvcmllcy1saXN0IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2M1YzVjNTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uc2luZ2xlLXBvc3QgLmNhdGVnb3JpZXMtbGlzdCB7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgbWFyZ2luOiAzMHB4IDAgMTBweDsgfVxuICAuc2luZ2xlLXBvc3QgLmNhdGVnb3JpZXMtbGlzdCBhIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBiYWNrZ3JvdW5kOiAjOGViOTM1O1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAuc2luZ2xlLXBvc3QgLmNhdGVnb3JpZXMtbGlzdCBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNhNmNlNTM7IH1cblxuLnNpbmdsZS1wb3N0IGZvb3RlciAuYXV0aG9yIHtcbiAgYmFja2dyb3VuZDogI2QxZDFkMTtcbiAgcGFkZGluZzogMzVweCAwOyB9XG4gIC5zaW5nbGUtcG9zdCBmb290ZXIgLmF1dGhvciBoMyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAgIC5zaW5nbGUtcG9zdCBmb290ZXIgLmF1dGhvciBoMyBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IC43ZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfVxuICAuc2luZ2xlLXBvc3QgZm9vdGVyIC5hdXRob3IgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDc1cHg7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNpbmdsZS1wb3N0IGZvb3RlciAuYXV0aG9yLWluZm8ge1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgbWF4LXdpZHRoOiA1NjBweDtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNpbmdsZS1wb3N0IC5ib3gtc2hhcmUge1xuICBmb250LXNpemU6IC44ZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbjogMzBweCAwOyB9XG4gIC5zaW5nbGUtcG9zdCAuYm94LXNoYXJlLnRvcCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuc2luZ2xlLXBvc3QgLmJveC1zaGFyZSA+ICoge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuLnJlbGF0ZWQtcG9zdHMge1xuICBwYWRkaW5nLXRvcDogNjBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnN3aXBlci1zbGlkZSAuY29udGFpbmVyID4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7IH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAjOGViOTM1OyB9XG5cbi8qIE5vIGZpbGVzIHRvIGltcG9ydCBmb3VuZCBpbiB0ZW1wbGF0ZXMvLyogKi9cbi5tYWluLWNvbnRlbnQgLmJyZWFkY3J1bWJzIHtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgbWFyZ2luOiAxNXB4IDA7IH1cbiAgLm1haW4tY29udGVudCAuYnJlYWRjcnVtYnMgYSB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ubmF2aWdhdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAucGFnZWQgLm5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5uYXZpZ2F0aW9uIGEge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDQ4LjUlO1xuICAgIGJhY2tncm91bmQ6ICM4ZWI5MzU7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAxMHB4OyB9XG4gICAgLm5hdmlnYXRpb24gYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAubGFzdGVzdC1ieS1jYXRlZ29yeSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICB3aWR0aDogMzEuMzMzMzMlO1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDMlOyB9XG4gICAgLmxhc3Rlc3QtYnktY2F0ZWdvcnk6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXN0ZXN0LWJ5LWNhdGVnb3J5Omxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwJTsgfSB9XG5cbi8qIE1PRCAqL1xuLnZ3LXBvc3Qtc2hhcmUtaWNvbnMgLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbCB7XG4gIGNvbG9yOiAjODg4ODg4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDBweCA2cHg7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDsgfVxuXG4udnctcG9zdC1zaGFyZS1pY29ucyAudnctaWNvbiB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLnZ3LXBvc3Qtc2hhcmUtaWNvbnMgLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1mYWNlYm9vazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzQjU5OTg7XG4gIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi52dy1wb3N0LXNoYXJlLWljb25zIC52dy1wb3N0LXNoYXJlcy1zb2NpYWwtdHdpdHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMEFDRUQ7XG4gIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi52dy1wb3N0LXNoYXJlLWljb25zIC52dy1wb3N0LXNoYXJlcy1zb2NpYWwtbGlua2VkaW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4NGJmO1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4udnctcG9zdC1zaGFyZS1pY29ucyAudnctcG9zdC1zaGFyZXMtc29jaWFsLWdwbHVzOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RENEIzOTtcbiAgY29sb3I6ICNGRkZGRkY7IH1cblxuLnZ3LXBvc3Qtc2hhcmUtaWNvbnMgLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1waW50ZXJlc3Q6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0IyMDI3O1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4udnctcG9zdC1zaGFyZS1ib3gge1xuICBib3JkZXItYm90dG9tOiAwIHNvbGlkICNFRkVGRUY7IH1cblxuLnZ3LXBvc3Qtc2hhcmUtYm94IC52dy1wb3N0LXNoYXJlLWJveC1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDFweCAxMHB4IDFweCAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnZ3LXBvc3Qtc2hhcmUtYm94IC52dy1wb3N0LXNoYXJlLWJveC1idXR0b24ge1xuICAgIHBhZGRpbmc6IDRweCA4cHg7IH0gfVxuXG4udnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmUtYm94LWJ1dHRvbiAudnctYnV0dG9uLWxhYmVsIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBtYXJnaW4tbGVmdDogNXB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmUtYm94LWJ1dHRvbiAudnctYnV0dG9uLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnZ3LXBvc3Qtc2hhcmUtYm94IC52dy1wb3N0LXNoYXJlLWJveC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0UzRTNFO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDsgfVxuXG4udnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1waW50ZXJlc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0IyMDI3OyB9XG5cbi52dy1wb3N0LXNoYXJlLWJveCAudnctcG9zdC1zaGFyZXMtc29jaWFsLXR3aXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzlBOUUwOyB9XG5cbi52dy1wb3N0LXNoYXJlLWJveCAudnctcG9zdC1zaGFyZXMtc29jaWFsLWxpbmtlZGluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODRiZjsgfVxuXG4udnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1mYWNlYm9vayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzQjU5OTg7IH1cblxuLnZ3LXBvc3Qtc2hhcmUtYm94IC52dy1wb3N0LXNoYXJlcy1zb2NpYWwtZ3BsdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDE0ODM2OyB9XG5cbi52dy1wb3N0LXNoYXJlLWJveCAudnctcG9zdC1zaGFyZXMtc29jaWFsLXdoYXRzYXBwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzY2M2NjsgfVxuXG4udnctcG9zdC1zaGFyZS1iaWctbnVtYmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wOyB9XG5cbi52dy1wb3N0LXNoYXJlLWJpZy1udW1iZXIgLnZ3LW51bWJlciB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBjb2xvcjogIzhlYjkzNTsgfVxuXG4udnctcG9zdC1zaGFyZS1iaWctbnVtYmVyIC52dy11bml0IHtcbiAgZm9udC1zaXplOiA4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwcHg7XG4gIG9wYWNpdHk6IDAuNTtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyB9XG5cbiN2dy1wb3N0LXNoYXJlcy1kaWFsb2cge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcGFkZGluZzogMjBweCAzMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXgtd2lkdGg6IDYwMHB4O1xuICBtYXJnaW46IDQwcHggYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiN2dy1wb3N0LXNoYXJlcy1kaWFsb2cgLnZ3LXBvc3Qtc2hhcmVzLXRpdGxlIHtcbiAgY29sb3I6ICMxMTExMTE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuI3Z3LXBvc3Qtc2hhcmVzLWRpYWxvZyAudnctcG9zdC1zaGFyZXMtc3VidGl0bGUge1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI0JCQkJCQjtcbiAgbGV0dGVyLXNwYWNpbmc6IDBweDsgfVxuXG4jdnctcG9zdC1zaGFyZXMtZGlhbG9nIC52dy1wb3N0LXNoYXJlcy1zb2NpYWxzIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4jdnctcG9zdC1zaGFyZXMtZGlhbG9nIC52dy1wb3N0LXNoYXJlcy1zb2NpYWwge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUZFRkVGO1xuICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC13aGF0c2FwcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5zZWN0aW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGNvbG9yOiAjNGY0ZjRmOyB9XG5cbi5ob21lLWxhc3QtcG9zdHMge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cblxuLm1haWxjaGltcC1mb3JtIHtcbiAgYmFja2dyb3VuZDogI2QxZDFkMTtcbiAgcGFkZGluZzogMTVweCAwO1xuICBtYXJnaW4tdG9wOiAtNDBweDsgfVxuICAubWFpbGNoaW1wLWZvcm0gaDIge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICBjb2xvcjogIzRmNGY0ZjtcbiAgICBmb250LXNpemU6IDEuM2VtOyB9XG4gIC5tYWlsY2hpbXAtZm9ybSBsYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubWFpbGNoaW1wLWZvcm0gaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1haWxjaGltcC1mb3JtIGJ1dHRvbiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAubWFpbGNoaW1wLWZvcm0gLmNvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLm1haWxjaGltcC1mb3JtIC5jb2wge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMjIuNzUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5tYWlsY2hpbXAtZm9ybSAuY29sOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5tYWlsY2hpbXAtZm9ybSAuY29sOm50aC1jaGlsZChuKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLm1haWxjaGltcC1mb3JtIC5jb2w6bnRoLWNoaWxkKDRuKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMCU7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLm1haWxjaGltcC1mb3JtIC5jb2w6bnRoLWNoaWxkKDRuICsgMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG5cbi5iYW5uZXJzIHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9XG4gIC5iYW5uZXJzIC5iYW5uZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgICAuYmFubmVycyAuYmFubmVyIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgICAgICB3aWR0aDogMzEuMzMzMzMlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMyU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgLmJhbm5lcnMgLmJhbm5lcjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIC5iYW5uZXJzIC5iYW5uZXI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwJTsgfSB9XG5cbi5tb3N0LXZpZXdlZCB7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgYmFja2dyb3VuZDogI2RmZGZkZjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjIuNWVtKSB7XG4gICAgLm1vc3Qtdmlld2VkIC5wb3N0LWNhcmQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5jYXRlZ29yaWVzIHtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9XG5cbi5mZWF0dXJlcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDMwcHggMDsgfVxuICAuZmVhdHVyZXMgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM4ZWI5MzU7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLmZlYXR1cmVzIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW46IDAgMzBweCAxNXB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDYyLjVlbSkge1xuICAgICAgLmZlYXR1cmVzIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgICAuZmVhdHVyZXMgbGkge1xuICAgICAgICB3aWR0aDogODBweDsgfSB9XG5cbi5pbnN0YS1mZWVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pbnN0YS1mZWVkIC50YWJsZXQsIC5pbnN0YS1mZWVkIC5kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuaW5zdGEtZmVlZCAubW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuaW5zdGEtZmVlZCAudGFibGV0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyLjVlbSkge1xuICAgIC5pbnN0YS1mZWVkIC50YWJsZXQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5pbnN0YS1mZWVkIC5kZXNrdG9wIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLmluc3RhLWZlZWQgLmZvbGxvdy1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICBjb2xvcjogIzRmNGY0ZjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNGY0ZjRmO1xuICAgIHBhZGRpbmc6IDEycHggMTVweDsgfVxuICAgIC5pbnN0YS1mZWVkIC5mb2xsb3ctYnV0dG9uOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5pbnN0YS1mZWVkIC5mb2xsb3ctYnV0dG9uIHNwYW4ge1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4vYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4vZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuL2ZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi9mb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhlYjkzNTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0xMHB4XFw5O1xuICAvKmx0ZSBJRSA4Ki9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEzcHg7XG4gIHBhZGRpbmc6IDE4cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIHotaW5kZXg6IDEwMDsgfVxuICAuc2xpY2stcHJldjpob3ZlciwgLnNsaWNrLXByZXY6Zm9jdXMsXG4gIC5zbGljay1uZXh0OmhvdmVyLFxuICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4gIC5zbGljay1uZXh0LnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC4yNTsgfVxuXG4uc2xpY2stcHJldiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zbGljay1uZXh0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyM2ZmZmZmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7IH1cblxuLnNsaWNrLXByZXY6YmVmb3JlLCAuc2xpY2stbmV4dDpiZWZvcmUge1xuICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogd2hpdGU7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogMTVweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMjVweDsgfVxuXG4uc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAxNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvOyB9XG5cbi8qIERvdHMgKi9cbi5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC00NXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICAuc2xpY2stZG90cyBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXIsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyOmJlZm9yZSwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgICAgICBmb250LXNpemU6IDZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuICAgIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIG9wYWNpdHk6IDAuNzU7IH1cblxuLyoqXHJcbiAqIFN3aXBlciAzLjAuOFxyXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xyXG4gKiBcclxuICogaHR0cDovL3d3dy5pZGFuZ2Vyby51cy9zd2lwZXIvXHJcbiAqIFxyXG4gKiBDb3B5cmlnaHQgMjAxNSwgVmxhZGltaXIgS2hhcmxhbXBpZGlcclxuICogVGhlIGlEYW5nZXJvLnVzXHJcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvXHJcbiAqIFxyXG4gKiBMaWNlbnNlZCB1bmRlciBNSVRcclxuICogXHJcbiAqIFJlbGVhc2VkIG9uOiBKdW5lIDE0LCAyMDE1XHJcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1uby1mbGV4Ym94IC5zd2lwZXItc2xpZGUge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC1tb3otYm94LW9yaWVudDogdmVydGljYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLnN3aXBlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLW1vei10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAtbXMtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiAtbW96LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW8tdHJhbnNmb3JtO1xuICAtbXMtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1zLXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtbGluZXM6IG11bHRpcGxlO1xuICAtbW96LWJveC1saW5lczogbXVsdGlwbGU7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLW1vei10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAtbXMtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgLW1zLWZsZXg6IDAgMCBhdXRvO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qIGExMXkgKi9cbi5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItbm90aWZpY2F0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTAwMDsgfVxuXG4vKiBJRTEwIFdpbmRvd3MgUGhvbmUgOCBGaXhlcyAqL1xuLnN3aXBlci13cDgtaG9yaXpvbnRhbCB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15OyB9XG5cbi5zd2lwZXItd3A4LXZlcnRpY2FsIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7IH1cblxuLyogQXJyb3dzICovXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyN3B4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogMjdweCA0NHB4O1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMjdweCA0NHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCxcbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMzU7XG4gIGN1cnNvcjogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyMzAwN2FmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gIGxlZnQ6IDEwcHg7XG4gIHJpZ2h0OiBhdXRvOyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlIHtcbiAgb3BhY2l0eTogMC4yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDA3YWZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgcmlnaHQ6IDEwcHg7XG4gIGxlZnQ6IGF1dG87IH1cblxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUge1xuICBvcGFjaXR5OiAwLjQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi8qIFBhZ2luYXRpb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcztcbiAgLW1vei10cmFuc2l0aW9uOiAzMDBtcztcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXM7XG4gIHRyYW5zaXRpb246IDMwMG1zO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICNGRkY7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwN2FmZjsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiA1cHggMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIDNweDsgfVxuXG4vKiAzRCBDb250YWluZXIgKi9cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTIwMHB4O1xuICAtbW96LXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIC1vLXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci13cmFwcGVyLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIC1tb3otdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLW1zLXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8odHJhbnNwYXJlbnQpKTtcbiAgLyogU2FmYXJpIDQrLCBDaHJvbWUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBDaHJvbWUgMTArLCBTYWZhcmkgNS4xKywgaU9TIDUrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogRmlyZWZveCAzLjYtMTUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogT3BlcmEgMTEuMTAtMTIuMDAgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBGaXJlZm94IDE2KywgSUUxMCwgT3BlcmEgMTIuNTArICovIH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgcmlnaHQgdG9wLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byh0cmFuc3BhcmVudCkpO1xuICAvKiBTYWZhcmkgNCssIENocm9tZSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogRmlyZWZveCAzLjYtMTUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBPcGVyYSAxMS4xMC0xMi4wMCAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBGaXJlZm94IDE2KywgSUUxMCwgT3BlcmEgMTIuNTArICovIH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byh0cmFuc3BhcmVudCkpO1xuICAvKiBTYWZhcmkgNCssIENocm9tZSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBDaHJvbWUgMTArLCBTYWZhcmkgNS4xKywgaU9TIDUrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIEZpcmVmb3ggMy42LTE1ICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBPcGVyYSAxMS4xMC0xMi4wMCAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqLyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8odHJhbnNwYXJlbnQpKTtcbiAgLyogU2FmYXJpIDQrLCBDaHJvbWUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBGaXJlZm94IDMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogT3BlcmEgMTEuMTAtMTIuMDAgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIEZpcmVmb3ggMTYrLCBJRTEwLCBPcGVyYSAxMi41MCsgKi8gfVxuXG4vKiBDb3ZlcmZsb3cgKi9cbi5zd2lwZXItY29udGFpbmVyLWNvdmVyZmxvdyAuc3dpcGVyLXdyYXBwZXIge1xuICAvKiBXaW5kb3dzIDggSUUgMTAgZml4ICovXG4gIC1tcy1wZXJzcGVjdGl2ZTogMTIwMHB4OyB9XG5cbi8qIEZhZGUgKi9cbi5zd2lwZXItY29udGFpbmVyLWZhZGUuc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9XG5cbi8qIEN1YmUgKi9cbi5zd2lwZXItY29udGFpbmVyLWN1YmUge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZS5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1uZXh0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjY7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDUwcHgpO1xuICBmaWx0ZXI6IGJsdXIoNTBweCk7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZS5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICB6LWluZGV4OiAwOyB9XG5cbi8qIFNjcm9sbGJhciAqL1xuLnN3aXBlci1zY3JvbGxiYXIge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDElO1xuICBib3R0b206IDNweDtcbiAgei1pbmRleDogNTA7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogOTglOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTsgfVxuXG4uc3dpcGVyLXNjcm9sbGJhci1kcmFnIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XG4gIGN1cnNvcjogbW92ZTsgfVxuXG4vKiBQcmVsb2FkZXIgKi9cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgbWFyZ2luLXRvcDogLTIxcHg7XG4gIHotaW5kZXg6IDEwO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7IH1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMTIwJTIwMTIwJyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB4bWxucyUzQXhsaW5rJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJyUzRSUzQ2RlZnMlM0UlM0NsaW5lJTIwaWQlM0QnbCclMjB4MSUzRCc2MCclMjB4MiUzRCc2MCclMjB5MSUzRCc3JyUyMHkyJTNEJzI3JyUyMHN0cm9rZSUzRCclMjM2YzZjNmMnJTIwc3Ryb2tlLXdpZHRoJTNEJzExJyUyMHN0cm9rZS1saW5lY2FwJTNEJ3JvdW5kJyUyRiUzRSUzQyUyRmRlZnMlM0UlM0NnJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoNjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDkwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxMjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE1MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjM3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTgwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNDYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyMTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy41NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI0MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjY2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjcwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNzUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy44NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMzMCUyMDYwJTJDNjApJyUyRiUzRSUzQyUyRmclM0UlM0MlMkZzdmclM0VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzZmZmJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTm9ybWFsaXplLnNjc3Mgc2V0dGluZ3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyoqXHJcbiAqIEluY2x1ZGVzIGxlZ2FjeSBicm93c2VyIHN1cHBvcnQgSUU2LzdcclxuICpcclxuICogU2V0IHRvIGZhbHNlIGlmIHlvdSB3YW50IHRvIGRyb3Agc3VwcG9ydCBmb3IgSUU2IGFuZCBJRTdcclxuICovXHJcblxyXG4kbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydDogZmFsc2UgIWRlZmF1bHQ7XHJcblxyXG4vKiBCYXNlXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cclxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcclxuICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxyXG4gKiAzLiBDb3JyZWN0cyB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFIDYvNyB3aGVuIGJvZHkgYGZvbnQtc2l6ZWAgaXMgc2V0IHVzaW5nXHJcbiAqICBgZW1gIHVuaXRzLlxyXG4gKi9cclxuXHJcbmh0bWwge1xyXG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXHJcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cclxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cclxuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xyXG4gICAgKmZvbnQtc2l6ZTogMTAwJTsgLyogMyAqL1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cclxuICovXHJcblxyXG5ib2R5IHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxyXG4gKiBhbmQgRmlyZWZveC5cclxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cclxuICovXHJcblxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZGV0YWlscyxcclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tYWluLFxyXG5tZW51LFxyXG5uYXYsXHJcbnNlY3Rpb24sXHJcbnN1bW1hcnkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDYvNy84LzkgYW5kIEZpcmVmb3ggMy5cclxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxyXG4gKi9cclxuXHJcbmF1ZGlvLFxyXG5jYW52YXMsXHJcbnByb2dyZXNzLFxyXG52aWRlbyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXHJcbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICAgICpkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAqem9vbTogMTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQcmV2ZW50cyBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cclxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cclxuICovXHJcblxyXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxyXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXHJcbiAqL1xyXG5cclxuW2hpZGRlbl0sXHJcbnRlbXBsYXRlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBMaW5rc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxyXG4gKi9cclxuXHJcbmEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vKipcclxuICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxyXG4gKiBhY3RpdmUvaG92ZXIgc3RhdGUuXHJcbiAqL1xyXG5cclxuYSB7XHJcbiAgJjphY3RpdmUsICY6aG92ZXIge1xyXG4gICAgb3V0bGluZTogMDtcclxuICB9O1xyXG59XHJcblxyXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5hYmJyW3RpdGxlXSB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5iLFxyXG5zdHJvbmcge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG5AaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xyXG4gIGJsb2NrcXVvdGUge1xyXG4gICAgbWFyZ2luOiAxZW0gNDBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5cclxuZGZuIHtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXHJcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5oMSB7XHJcbiAgZm9udC1zaXplOiAyZW07XHJcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcclxufVxyXG5cclxuQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICBoMiB7XHJcbiAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgbWFyZ2luOiAwLjgzZW0gMDtcclxuICB9XHJcblxyXG4gIGgzIHtcclxuICAgIGZvbnQtc2l6ZTogMS4xN2VtO1xyXG4gICAgbWFyZ2luOiAxZW0gMDtcclxuICB9XHJcblxyXG4gIGg0IHtcclxuICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgbWFyZ2luOiAxLjMzZW0gMDtcclxuICB9XHJcblxyXG4gIGg1IHtcclxuICAgIGZvbnQtc2l6ZTogMC44M2VtO1xyXG4gICAgbWFyZ2luOiAxLjY3ZW0gMDtcclxuICB9XHJcblxyXG4gIGg2IHtcclxuICAgIGZvbnQtc2l6ZTogMC42N2VtO1xyXG4gICAgbWFyZ2luOiAyLjMzZW0gMDtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXHJcbiAqL1xyXG5cclxubWFyayB7XHJcbiAgYmFja2dyb3VuZDogI2ZmMDtcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG5cclxuQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuXHJcbiAgLyoqXHJcbiAgICogQWRkcmVzc2VzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNy5cclxuICAgKi9cclxuXHJcbiAgcCxcclxuICBwcmUge1xyXG4gICAgKm1hcmdpbjogMWVtIDA7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIEFkZHJlc3NlcyBDU1MgcXVvdGVzIG5vdCBzdXBwb3J0ZWQgaW4gSUUgNi83LlxyXG4gICAqL1xyXG5cclxuICBxIHtcclxuICAgICpxdW90ZXM6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIEFkZHJlc3NlcyBgcXVvdGVzYCBwcm9wZXJ0eSBub3Qgc3VwcG9ydGVkIGluIFNhZmFyaSA0LlxyXG4gICAqL1xyXG5cclxuICBxOmJlZm9yZSxcclxuICBxOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgY29udGVudDogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiA4MCU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1cCB7XHJcbiAgdG9wOiAtMC41ZW07XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG5AaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xyXG5cclxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAgIExpc3RzXHJcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgLypcclxuICAgKiBBZGRyZXNzZXMgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LlxyXG4gICAqL1xyXG5cclxuICBkbCxcclxuICBtZW51LFxyXG4gIG9sLFxyXG4gIHVsIHtcclxuICAgICptYXJnaW46IDFlbSAwO1xyXG4gIH1cclxuXHJcbiAgZGQge1xyXG4gICAgKm1hcmdpbjogMCAwIDAgNDBweDtcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogQWRkcmVzc2VzIHBhZGRpbmdzIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXHJcbiAgICovXHJcblxyXG4gIG1lbnUsXHJcbiAgb2wsXHJcbiAgdWwge1xyXG4gICAgKnBhZGRpbmc6IDAgMCAwIDQwcHg7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIENvcnJlY3RzIGxpc3QgaW1hZ2VzIGhhbmRsZWQgaW5jb3JyZWN0bHkgaW4gSUUgNy5cclxuICAgKi9cclxuXHJcbiAgbmF2IHVsLFxyXG4gIG5hdiBvbCB7XHJcbiAgICAqbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICpsaXN0LXN0eWxlLWltYWdlOiBub25lO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8qIEVtYmVkZGVkIGNvbnRlbnRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiAxLiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cclxuICogMi4gSW1wcm92ZXMgaW1hZ2UgcXVhbGl0eSB3aGVuIHNjYWxlZCBpbiBJRSA3LlxyXG4gKi9cclxuXHJcbmltZyB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIEBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XHJcbiAgICAqLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgLyogMiAqL1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxyXG4gKi9cclxuXHJcbnN2Zzpub3QoOnJvb3QpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBHcm91cGluZyBjb250ZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXHJcbiAqL1xyXG5cclxuZmlndXJlIHtcclxuICBtYXJnaW46IDFlbSA0MHB4O1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxyXG4gKi9cclxuXHJcbmhyIHtcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5wcmUge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKiBDb3JyZWN0IGZvbnQgZmFtaWx5IHNldCBvZGRseSBpbiBJRSA2LCBTYWZhcmkgNC81LCBhbmQgQ2hyb21lLlxyXG4gKi9cclxuXHJcbmNvZGUsXHJcbmtiZCxcclxucHJlLFxyXG5zYW1wIHtcclxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XHJcbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICAgIF9mb250LWZhbWlseTogJ2NvdXJpZXIgbmV3JywgbW9ub3NwYWNlO1xyXG4gIH1cclxuICBmb250LXNpemU6IDFlbTtcclxufVxyXG5cclxuLyogRm9ybXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxyXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cclxuICogIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICogNC4gSW1wcm92ZXMgYXBwZWFyYW5jZSBhbmQgY29uc2lzdGVuY3kgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuXHJcbmJ1dHRvbixcclxuaW5wdXQsXHJcbm9wdGdyb3VwLFxyXG5zZWxlY3QsXHJcbnRleHRhcmVhIHtcclxuICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xyXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cclxuICBtYXJnaW46IDA7IC8qIDMgKi9cclxuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAzICovXHJcbiAgICAqdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLyogMyAqL1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxyXG4gKi9cclxuXHJcbmJ1dHRvbiB7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXHJcbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXHJcbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXHJcbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cclxuICovXHJcblxyXG5idXR0b24sXHJcbnNlbGVjdCB7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxyXG4gKiAgYW5kIGB2aWRlb2AgY29udHJvbHMuXHJcbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cclxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcclxuICogIGBpbnB1dGAgYW5kIG90aGVycy5cclxuICogNC4gUmVtb3ZlcyBpbm5lciBzcGFjaW5nIGluIElFIDcgd2l0aG91dCBhZmZlY3Rpbmcgbm9ybWFsIHRleHQgaW5wdXRzLlxyXG4gKiAgS25vd24gaXNzdWU6IGlubmVyIHNwYWNpbmcgcmVtYWlucyBpbiBJRSA2LlxyXG4gKi9cclxuXHJcbmJ1dHRvbixcclxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXHJcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cclxuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cclxuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xyXG4gICAgKm92ZXJmbG93OiB2aXNpYmxlOyAgLyogNCAqL1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXHJcbiAqL1xyXG5cclxuYnV0dG9uW2Rpc2FibGVkXSxcclxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cclxuICovXHJcblxyXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXHJcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcclxuICBib3JkZXI6IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cclxuICogdGhlIFVBIHN0eWxlc2hlZXQuXHJcbiAqL1xyXG5cclxuaW5wdXQge1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxyXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxyXG4gKiAgS25vd24gaXNzdWU6IGV4Y2VzcyBwYWRkaW5nIHJlbWFpbnMgaW4gSUUgNi5cclxuICovXHJcblxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xyXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cclxuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xyXG4gICAgKmhlaWdodDogMTNweDsgLyogMyAqL1xyXG4gICAgKndpZHRoOiAxM3B4OyAvKiAzICovXHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cclxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcclxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxyXG4gKi9cclxuXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKi9cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxyXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXHJcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cclxuICovXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbiAqL1xyXG5cclxuZmllbGRzZXQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XHJcbiAgbWFyZ2luOiAwIDJweDtcclxuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuICogMy4gQ29ycmVjdHMgdGV4dCBub3Qgd3JhcHBpbmcgaW4gRmlyZWZveCAzLlxyXG4gKiA0LiBDb3JyZWN0cyBhbGlnbm1lbnQgZGlzcGxheWVkIG9kZGx5IGluIElFIDYvNy5cclxuICovXHJcblxyXG5sZWdlbmQge1xyXG4gIGJvcmRlcjogMDsgLyogMSAqL1xyXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cclxuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMyAqL1xyXG4gICAgKm1hcmdpbi1sZWZ0OiAtN3B4OyAvKiA0ICovXHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cclxuICovXHJcblxyXG50ZXh0YXJlYSB7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXHJcbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxyXG4gKi9cclxuXHJcbm9wdGdyb3VwIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLyogVGFibGVzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxyXG4gKi9cclxuXHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcblxyXG50ZCxcclxudGgge1xyXG4gIHBhZGRpbmc6IDA7XHJcbn0iLCIuZmxleCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogc3RyZXRjaDtcdFxyXG59XHJcblxyXG4uZmxleC1jb250YWluZXIge1xyXG5cdEBleHRlbmQgLmZsZXg7XHJcblx0bWF4LXdpZHRoOiAxMTc2cHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcclxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0fVxyXG59XHJcblxyXG4uZmxleDEtMiB7XHJcblx0cGFkZGluZzogMCAyMHB4O1xyXG4gXHRAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcclxuIFx0XHRwYWRkaW5nOiAwO1xyXG4gXHRcdGZsZXgtYmFzaXM6IDUwJTtcclxuIFx0XHRmbGV4LWdyb3c6IDE7XHJcbiBcdH1cclxufVxyXG5cclxuLmZsZXg1LTEyIHsgQGV4dGVuZCAuZmxleDEtMjsgZmxleC1iYXNpczogNDIlO31cclxuLmZsZXg3LTEyIHsgQGV4dGVuZCAuZmxleDEtMjsgZmxleC1iYXNpczogNTglO31cclxuIFxyXG4uZmxleC1jZW50ZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mbGV4LXZlcnRpY2FsIHtcclxuXHRAZXh0ZW5kIC5mbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5mbGV4LXZlcnRpY2FsID4gKiB7XHJcblx0ZmxleC1ncm93OiAxO1xyXG59XHJcbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuJEJyZWFrcG9pbnQtU2V0dGluZ3M6IChcclxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcclxuICAnZGVmYXVsdCBmZWF0dXJlJzogbWluLXdpZHRoLFxyXG4gICdkZWZhdWx0IHBhaXInOiB3aWR0aCxcclxuXHJcbiAgJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJzogZmFsc2UsXHJcbiAgJ3RvIGVtcyc6IGZhbHNlLFxyXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxyXG5cclxuICAnbm8gcXVlcmllcyc6IGZhbHNlLFxyXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcclxuXHJcbiAgJ2Jhc2UgZm9udCBzaXplJzogMTZweCxcclxuXHJcbiAgJ2xlZ2FjeSBzeW50YXgnOiBmYWxzZVxyXG4pO1xyXG5cclxuJGJyZWFrcG9pbnQ6ICgpICFkZWZhdWx0O1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEltcG9ydHNcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XHJcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvY29udGV4dCc7XHJcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvaGVscGVycyc7XHJcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XHJcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvbm8tcXVlcnknO1xyXG5cclxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcclxuXHJcbkBpbXBvcnQgXCJicmVha3BvaW50L2xlZ2FjeS1zZXR0aW5nc1wiO1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEJyZWFrcG9pbnQgTWl4aW5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5AbWl4aW4gYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcclxuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcclxuXHJcbiAgLy8gUmVzZXQgY29udGV4dHNcclxuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcclxuXHJcbiAgJGJyZWFrcG9pbnQ6IGJyZWFrcG9pbnQoJHF1ZXJ5LCBmYWxzZSk7XHJcblxyXG4gICRxdWVyeS1zdHJpbmc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeScpO1xyXG4gICRxdWVyeS1mYWxsYmFjazogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2ZhbGxiYWNrJyk7XHJcblxyXG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdjb250ZXh0IGhvbGRlcicpICFnbG9iYWw7XHJcbiAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5IGNvdW50JykgIWdsb2JhbDtcclxuXHJcbiAgLy8gQWxsb3cgZm9yIGFuIGFzLW5lZWRlZCBvdmVycmlkZSBvciB1c2FnZSBvZiBubyBxdWVyeSBmYWxsYmFjay5cclxuICBAaWYgJG5vLXF1ZXJ5ICE9IGZhbHNlIHtcclxuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xyXG4gIH1cclxuXHJcbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XHJcbiAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xyXG4gIH1cclxuXHJcbiAgLy8gUHJpbnQgT3V0IFF1ZXJ5IFN0cmluZ1xyXG4gIEBpZiBub3QgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSB7XHJcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSAhPSBmYWxzZSBvciBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpID09IHRydWUge1xyXG5cclxuICAgICR0eXBlOiB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSk7XHJcbiAgICAkcHJpbnQ6IGZhbHNlO1xyXG5cclxuICAgIEBpZiAoJHR5cGUgPT0gJ2Jvb2wnKSB7XHJcbiAgICAgICRwcmludDogdHJ1ZTtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnc3RyaW5nJykge1xyXG4gICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XHJcbiAgICAgICAgJHByaW50OiB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XHJcbiAgICAgIEBlYWNoICR3cmFwcGVyIGluIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XHJcbiAgICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSAkd3JhcHBlciB7XHJcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gV3JpdGUgRmFsbGJhY2tcclxuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XHJcbiAgICAgICR0eXBlLWZhbGxiYWNrOiB0eXBlLW9mKCRxdWVyeS1mYWxsYmFjayk7XHJcblxyXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xyXG4gICAgICAgICN7JHF1ZXJ5LWZhbGxiYWNrfSAmIHtcclxuICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xyXG59XHJcblxyXG5cclxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG4iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICd1c2Utb3JnYW5pY28nO1xuICBzcmM6ICB1cmwoJy4uL2ZvbnRzL3VzZS1vcmdhbmljby5lb3Q/dnBlc3B1Jyk7XG4gIHNyYzogIHVybCgnLi4vZm9udHMvdXNlLW9yZ2FuaWNvLmVvdD92cGVzcHUjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcuLi9mb250cy91c2Utb3JnYW5pY28udHRmP3ZwZXNwdScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL3VzZS1vcmdhbmljby53b2ZmP3ZwZXNwdScpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnLi4vZm9udHMvdXNlLW9yZ2FuaWNvLnN2Zz92cGVzcHUjdXNlLW9yZ2FuaWNvJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5bY2xhc3NePVwic29jaWFsLVwiXSBhOmJlZm9yZSwgW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICd1c2Utb3JnYW5pY28nICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbn1cblxuLnNvY2lhbC1nb29nbGUtcGx1cyBhOmJlZm9yZSxcbi5pY29uLWdvb2dsZS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBmXCI7XG59XG4uaWNvbi15b3V0dWJlLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTBcIjtcbn1cbi5pY29uLXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTExXCI7XG59XG4uc29jaWFsLXlvdXR1YmUgYTpiZWZvcmUsXG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEyXCI7XG59XG4uaWNvbi1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG4uaWNvbi1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xufVxuLmljb24tYW5pbWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG59XG4uc29jaWFsLWZhY2Vib29rIGE6YmVmb3JlLFxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cbi5pY29uLWdsdXRlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuLnNvY2lhbC1pbnN0YWdyYW0gYTpiZWZvcmUsXG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cbi5pY29uLWxlYXZlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuLnNvY2lhbC1saW5rZWRpbiBhOmJlZm9yZSxcbi5pY29uLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG59XG4uaWNvbi1uYXR1cmFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG59XG4uaWNvbi1vcmdhbmljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG59XG4uaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjtcbn1cbi5pY29uLXRyYW5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG4uc29jaWFsLXR3aXR0ZXIgYTpiZWZvcmUsXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG4uaWNvbi12ZWdhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiO1xufVxuLmljb24tY2xvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGVcIjtcbn1cbi5pY29uLWV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljZVwiO1xufVxuIiwiLmNvbnRhaW5lciB7XHJcblx0QGluY2x1ZGUgY2VudGVyKDExNzZweCwgMTVweCk7XHJcbn1cclxuXHJcbi5yb3cge1xyXG5cdEBpbmNsdWRlIGNsZWFyZml4KCk7XHJcblx0Y2xlYXI6IGJvdGg7XHJcbn1cclxuXHJcbi5mdWxsIHtcclxuXHRAaW5jbHVkZSBjb2x1bW4oMSk7XHJcbn1cclxuXHJcbi5ibG9nIHtcclxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRwaGFibGV0KSB7XHJcblx0XHQubWFpbi1jb250ZW50IHtcclxuXHRcdFx0QGluY2x1ZGUgY29sdW1uKDIvMyk7XHJcblx0XHR9XHJcblxyXG5cdFx0LnNpZGViYXIge1xyXG5cdFx0XHRAaW5jbHVkZSBjb2x1bW4oMS8zKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoJHBoYWJsZXQpIHtcclxuXHQuY29sMS0ye1xyXG5cdFx0QGluY2x1ZGUgY29sdW1uKDEvMik7XHJcblx0fVxyXG5cclxuXHQuY29sMS0zIHtcclxuXHRcdEBpbmNsdWRlIGNvbHVtbigxLzMsICRjeWNsZTogMyk7XHJcblx0fVxyXG5cclxuXHQuY29sMi0zIHtcclxuXHRcdEBpbmNsdWRlIGNvbHVtbigyLzMpO1xyXG5cdH1cclxuXHJcblx0LmNvbDEtNCB7XHJcblx0XHRAaW5jbHVkZSBjb2x1bW4oMS80KTtcclxuXHR9XHJcblxyXG5cdC5zcGFuMS00IHtcclxuXHRcdEBpbmNsdWRlIHNwYW4oMS80KTtcclxuXHR9XHJcblxyXG5cdC5jb2w1LTEyIHtcclxuXHRcdEBpbmNsdWRlIGNvbHVtbig1LzEyKTtcclxuXHR9XHJcblxyXG5cdC5jb2w3LTEyIHtcclxuXHRcdEBpbmNsdWRlIGNvbHVtbig3LzEyKTtcclxuXHR9XHJcbn1cclxuXHJcbnNlY3Rpb24ge1xyXG5cdEBpbmNsdWRlIGNsZWFyZml4KCk7XHJcbn1cclxuIiwiQG1peGluIGNvbHVtbigkcmF0aW9zOiAxLCAkb2Zmc2V0OiAwLCAkY3ljbGU6IDAsICRndXR0ZXI6IG1hcC1nZXQoJGplZXQsICdndXR0ZXInKSkge1xyXG4gICRzaWRlOiBfZ2V0LWxheW91dC1kaXJlY3Rpb24oKTtcclxuICAkb3Bwb3NpdGUtc2lkZTogX29wcG9zaXRlLWRpcmVjdGlvbigkc2lkZSk7XHJcbiAgJGNvbHVtbi13aWR0aHM6IF9nZXQtY29sdW1uKCRyYXRpb3MsICRndXR0ZXIpO1xyXG4gICRtYXJnaW4tbGFzdDogMDtcclxuICAkbWFyZ2luLWw6ICRtYXJnaW4tbGFzdDtcclxuICAkbWFyZ2luLXI6IG50aCgkY29sdW1uLXdpZHRocywgMik7XHJcblxyXG4gIEBpZiAkb2Zmc2V0ICE9IDAge1xyXG4gICAgQGlmICRvZmZzZXQgPCAwIHtcclxuICAgICAgJG9mZnNldDogJG9mZnNldCAqIC0xO1xyXG4gICAgICAkb2Zmc2V0OiBudGgoX2dldC1jb2x1bW4oJG9mZnNldCwgbnRoKCRjb2x1bW4td2lkdGhzLCAyKSksIDEpO1xyXG4gICAgICAkbWFyZ2luLWxhc3Q6ICRvZmZzZXQgKyBudGgoJGNvbHVtbi13aWR0aHMsIDIpICogMjtcclxuICAgICAgJG1hcmdpbi1yOiAkbWFyZ2luLWxhc3Q7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJG9mZnNldDogbnRoKF9nZXQtY29sdW1uKCRvZmZzZXQsIG50aCgkY29sdW1uLXdpZHRocywgMikpLCAxKTtcclxuICAgICAgJG1hcmdpbi1sOiAkb2Zmc2V0ICsgbnRoKCRjb2x1bW4td2lkdGhzLCAyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cclxuICBmbG9hdDogJHNpZGU7XHJcbiAgY2xlYXI6IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcclxuICB3aWR0aDogbnRoKCRjb2x1bW4td2lkdGhzLCAxKSAqIDElO1xyXG4gIG1hcmdpbjoge1xyXG4gICAgI3skc2lkZX06ICRtYXJnaW4tbCAqIDElO1xyXG4gICAgI3skb3Bwb3NpdGUtc2lkZX06ICRtYXJnaW4tciAqIDElO1xyXG4gIH07XHJcblxyXG4gIEBpZiAkY3ljbGUgIT0gMCB7XHJcbiAgICAmOm50aC1jaGlsZChuKSB7XHJcbiAgICAgIG1hcmdpbi0je19vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpfTogJG1hcmdpbi1yICogMSU7XHJcbiAgICAgIGZsb2F0OiAkc2lkZTtcclxuICAgICAgY2xlYXI6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoI3skY3ljbGV9bikge1xyXG4gICAgICBtYXJnaW4tI3tfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKX06ICRtYXJnaW4tbGFzdCAqIDElO1xyXG4gICAgICBmbG9hdDogX29wcG9zaXRlLWRpcmVjdGlvbigkc2lkZSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoI3skY3ljbGV9biArIDEpIHtcclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tI3tfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKX06ICRtYXJnaW4tbGFzdCAqIDElO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbkBmdW5jdGlvbiBjb2x1bW4td2lkdGgoJHJhdGlvczogMSwgJGd1dHRlcjogbWFwLWdldCgkamVldCwgJ2d1dHRlcicpKSB7XHJcbiAgQGlmIChtYXAtZ2V0KCRqZWV0LCAncGFyZW50LWZpcnN0JykgIT0gJ3RydWUnKSB7XHJcbiAgICAkcmF0aW9zOiBfcmV2ZXJzZSgkcmF0aW9zKTtcclxuICB9XHJcblxyXG4gICR3OiAxMDA7XHJcblxyXG4gIEBlYWNoICRyYXRpbyBpbiAkcmF0aW9zIHtcclxuICAgICR3OiAxMDAgKiAkcmF0aW8gLSAkZ3V0dGVyICsgJHJhdGlvICogJGd1dHRlcjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gdW5xdW90ZSgkdyArICclJyk7XHJcbn1cclxuXHJcblxyXG5AZnVuY3Rpb24gY29sdW1uLWd1dHRlcigkcmF0aW9zOiAxLCAkZ3V0dGVyOiBtYXAtZ2V0KCRqZWV0LCAnZ3V0dGVyJykpIHtcclxuICBAaWYgKG1hcC1nZXQoJGplZXQsICdwYXJlbnQtZmlyc3QnKSAhPSAndHJ1ZScpIHtcclxuICAgICRyYXRpb3M6IF9yZXZlcnNlKCRyYXRpb3MpO1xyXG4gIH1cclxuXHJcbiAgJHc6IDEwMDtcclxuXHJcbiAgQGVhY2ggJHJhdGlvIGluICRyYXRpb3Mge1xyXG4gICAgJGd1dHRlcjogJGd1dHRlciAvICR3ICogMTAwO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiB1bnF1b3RlKCRndXR0ZXIgKyAnJScpO1xyXG59XHJcblxyXG5cclxuQG1peGluIHNwYW4oJHJhdGlvOiAxLCAkb2Zmc2V0OiAwLCAkY3ljbGU6IDApIHtcclxuICAkc2lkZTogX2dldC1sYXlvdXQtZGlyZWN0aW9uKCk7XHJcbiAgJG9wcG9zaXRlLXNpZGU6IF9vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpO1xyXG4gICRzcGFuLXdpZHRoOiBfZ2V0LXNwYW4oJHJhdGlvKTtcclxuICAkbWFyZ2luLXI6IDA7XHJcbiAgJG1hcmdpbi1sOiAkbWFyZ2luLXI7XHJcbiAgQGlmICRvZmZzZXQgIT0gMCB7XHJcbiAgICBAaWYgJG9mZnNldCA8IDAge1xyXG4gICAgICAkb2Zmc2V0OiAkb2Zmc2V0ICogLTE7XHJcbiAgICAgICRtYXJnaW4tcjogX2dldC1zcGFuKCRvZmZzZXQpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRtYXJnaW4tbDogX2dldC1zcGFuKCRvZmZzZXQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgZmxvYXQ6ICRzaWRlO1xyXG4gIGNsZWFyOiBub25lO1xyXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XHJcbiAgd2lkdGg6ICRzcGFuLXdpZHRoICogMSU7XHJcbiAgbWFyZ2luOiB7XHJcbiAgICAjeyRzaWRlfTogJG1hcmdpbi1sICogMSU7XHJcbiAgICAjeyRvcHBvc2l0ZS1zaWRlfTogJG1hcmdpbi1yICogMSU7XHJcbiAgfTtcclxuXHJcbiAgQGlmICRjeWNsZSAhPSAwIHtcclxuICAgICY6bnRoLWNoaWxkKG4pIHtcclxuICAgICAgZmxvYXQ6ICRzaWRlO1xyXG4gICAgICBjbGVhcjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCgjeyRjeWNsZX1uKSB7XHJcbiAgICAgIGZsb2F0OiBfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKTtcclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCgjeyRjeWNsZX1uICsgMSkge1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gbW92ZSgkcmF0aW9zOiAwLCAkY29sLW9yLXNwYW46IGNvbHVtbiwgJGd1dHRlcjogbWFwLWdldCgkamVldCwgJ2d1dHRlcicpKSB7XHJcbiAgJHRyYW5zbGF0ZTogJyc7XHJcbiAgJHNpZGU6IF9nZXQtbGF5b3V0LWRpcmVjdGlvbigpO1xyXG5cclxuICBAaWYgJHNpZGUgPT0gcmlnaHQge1xyXG4gICAgJHJhdGlvczogX3JlcGxhY2UtbnRoKCRyYXRpb3MsIDAsIG50aCgkcmF0aW9zLCAxKSAqIC0xKTtcclxuICB9XHJcblxyXG4gIEBpZiBpbmRleChcImNvbHVtblwiIFwiY29sXCIgXCJjXCIsICRjb2wtb3Itc3Bhbikge1xyXG4gICAgJGNvbHVtbi13aWR0aHM6IF9nZXQtY29sdW1uKCRyYXRpb3MsICRndXR0ZXIpO1xyXG4gICAgJHRyYW5zbGF0ZTogbnRoKCRjb2x1bW4td2lkdGhzLCAxKSArIG50aCgkY29sdW1uLXdpZHRocywgMik7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkdHJhbnNsYXRlOiBfZ2V0LXNwYW4oJHJhdGlvcyk7XHJcbiAgfVxyXG5cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbGVmdDogJHRyYW5zbGF0ZSAqIDElO1xyXG59XHJcblxyXG5cclxuQG1peGluIHVubW92ZSgpIHtcclxuICBwb3NpdGlvbjogc3RhdGljO1xyXG4gIGxlZnQ6IDA7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gZGVidWcoJGNvbG9yOiBibHVlLCAkaW1wb3J0YW50OiBmYWxzZSkge1xyXG4gIEBpZiAkaW1wb3J0YW50IHtcclxuICAgICoge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjA1KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgKiB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuMDUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtaXhpbiBjZW50ZXIoJG1heC13aWR0aDogbWFwLWdldCgkamVldCwgJ21heC13aWR0aCcpLCAkcGFkOiAwKSB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xyXG4gIGZsb2F0OiBub25lO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbjoge1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgICBsZWZ0OiAgYXV0bztcclxuICB9O1xyXG4gIHBhZGRpbmc6IHtcclxuICAgIGxlZnQ6ICAkcGFkO1xyXG4gICAgcmlnaHQ6ICRwYWQ7XHJcbiAgfTtcclxufVxyXG5cclxuXHJcbkBtaXhpbiB1bmNlbnRlcigpIHtcclxuICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG59XHJcblxyXG5cclxuQG1peGluIHN0YWNrKCRwYWQ6IDAsICRhbGlnbjogZmFsc2UpIHtcclxuICAkc2lkZTogX2dldC1sYXlvdXQtZGlyZWN0aW9uKCk7XHJcbiAgJG9wcG9zaXRlLXNpZGU6IF9vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpO1xyXG5cclxuICBkaXNwbGF5OiBibG9jaztcclxuICBjbGVhcjogYm90aDtcclxuICBmbG9hdDogbm9uZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW46IHtcclxuICAgIGxlZnQ6ICBhdXRvO1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgfTtcclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tI3skc2lkZX06IGF1dG87XHJcbiAgfVxyXG5cclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLXNpZGV9OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgQGlmICRwYWQgIT0gMCB7XHJcbiAgICBwYWRkaW5nOiB7XHJcbiAgICAgIGxlZnQ6ICAkcGFkO1xyXG4gICAgICByaWdodDogJHBhZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAoJGFsaWduIGlzIG5vdCBmYWxzZSkge1xyXG4gICAgQGlmIGluZGV4KFwiY2VudGVyXCIgXCJjXCIsICRhbGlnbikge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9IEBlbHNlIGlmIGluZGV4KFwibGVmdFwiIFwibFwiLCAkYWxpZ24pIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH0gQGVsc2UgaWYgaW5kZXgoXCJyaWdodFwiIFwiclwiLCAkYWxpZ24pIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIHVuc3RhY2soKSB7XHJcbiAgJHNpZGU6IF9nZXQtbGF5b3V0LWRpcmVjdGlvbigpO1xyXG4gICRvcHBvc2l0ZS1zaWRlOiBfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKTtcclxuXHJcbiAgdGV4dC1hbGlnbjogJHNpZGU7XHJcbiAgZGlzcGxheTogaW5saW5lO1xyXG4gIGNsZWFyOiBub25lO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIG1hcmdpbjoge1xyXG4gICAgbGVmdDogIDA7XHJcbiAgICByaWdodDogMDtcclxuICB9O1xyXG5cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi0jeyRzaWRlfTogMDtcclxuICB9XHJcblxyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tI3tfb3Bwb3NpdGUtZGlyZWN0aW9uKCRzaWRlKX06IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIGFsaWduKCRkaXJlY3Rpb246IGJvdGgpIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuXHJcbiAgQGlmIGluZGV4KFwiaG9yaXpvbnRhbFwiIFwiaFwiLCAkZGlyZWN0aW9uKSB7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgfSBAZWxzZSBpZiBpbmRleChcInZlcnRpY2FsXCIgXCJ2XCIsICRkaXJlY3Rpb24pIHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gY2xlYXJmaXgoKSB7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG4iLCIvLyBMaXN0IGZ1bmN0aW9ucyBjb3VydGVzeSBvZiBUZWFtIFNhc3MuXHJcblxyXG4vLyBHZXQgIHBlcmNlbnRhZ2UgZnJvbSBhIGdpdmVuIHJhdGlvLlxyXG5AZnVuY3Rpb24gX2dldC1zcGFuKCRyYXRpbzogMSkge1xyXG4gIEByZXR1cm4gJHJhdGlvICogMTAwO1xyXG59XHJcblxyXG4vLyBXb3JrIG91dCB0aGUgY29sdW1uIHdpZHRocyBiYXNlZCBvbiB0aGUgcmF0aW8gYW5kIGd1dHRlciBzaXplcy5cclxuQGZ1bmN0aW9uIF9nZXQtY29sdW1uKCRyYXRpb3M6IDEsICRndXR0ZXI6IG1hcC1nZXQoJGplZXQsICdndXR0ZXInKSkge1xyXG4gICRyYXRpb3M6IGlmKG5vdCBtYXAtZ2V0KCRqZWV0LCAncGFyZW50LWZpcnN0JyksIF9yZXZlcnNlKCRyYXRpb3MpLCAkcmF0aW9zKTtcclxuICAkd2lkdGg6IDEwMDtcclxuXHJcbiAgQGVhY2ggJHJhdGlvIGluICRyYXRpb3Mge1xyXG4gICAgJGd1dHRlcjogJGd1dHRlciAvICR3aWR0aCAqIDEwMDtcclxuICAgICR3aWR0aDogMTAwICogJHJhdGlvIC0gJGd1dHRlciArICRyYXRpbyAqICRndXR0ZXI7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR3aWR0aCAkZ3V0dGVyO1xyXG59XHJcblxyXG4vLyBHZXQgdGhlIHNldCBsYXlvdXQgZGlyZWN0aW9uIGZvciB0aGUgcHJvamVjdC5cclxuQGZ1bmN0aW9uIF9nZXQtbGF5b3V0LWRpcmVjdGlvbigpIHtcclxuICAkZGlyZWN0aW9uOiBpZihtYXAtZ2V0KCRqZWV0LCAnbGF5b3V0LWRpcmVjdGlvbicpID09ICdSVEwnLCByaWdodCwgbGVmdCk7XHJcblxyXG4gIEByZXR1cm4gJGRpcmVjdGlvbjtcclxufVxyXG5cclxuLy8gUmVwbGFjZSBhIHNwZWNpZmllZCBsaXN0IHZhbHVlIHdpdGggYSBuZXcgdmFsdWUgKHVzZXMgYnVpbHQgaW4gc2V0LW50aCgpIGlmIGF2YWlsYWJsZSlcclxuQGZ1bmN0aW9uIF9yZXBsYWNlLW50aCgkbGlzdCwgJGluZGV4LCAkdmFsdWUpIHtcclxuICAvLyBGYWxsYmFjayBmb3IgU2FzcyAzLjJcclxuICBAaWYgZnVuY3Rpb24tZXhpc3RzKCdzZXQtbnRoJykgIT0gdHJ1ZSB7XHJcbiAgICAkcmVzdWx0OiAoKTtcclxuICAgICRpbmRleDogaWYoJGluZGV4IDwgMCwgbGVuZ3RoKCRsaXN0KSArICRpbmRleCArIDEsICRpbmRleCk7XHJcblxyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJGxpc3QpIHtcclxuICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIGlmKCRpID09ICRpbmRleCwgJHZhbHVlLCBudGgoJGxpc3QsICRpKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIEByZXR1cm4gJHJlc3VsdDtcclxuICB9XHJcblxyXG4gIC8vIFNhc3MgMy4zXHJcbiAgJHJlc3VsdDogc2V0LW50aCgkbGlzdCwgJGluZGV4LCAkdmFsdWUpO1xyXG5cclxuICBAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbi8vIFJldmVyc2UgYSBsaXN0IChwcm9ncmVzc2l2ZWx5IGVuaGFuY2VkIGZvciBTYXNzIDMuMylcclxuQGZ1bmN0aW9uIF9yZXZlcnNlKCRsaXN0KSB7XHJcbiAgLy8gU2FzcyAzLjJcclxuICBAaWYgZnVuY3Rpb24tZXhpc3RzKCdzZXQtbnRoJykgIT0gdHJ1ZSB7XHJcbiAgICAkcmVzdWx0OiAoKTtcclxuXHJcbiAgICBAZm9yICRpIGZyb20gbGVuZ3RoKCRsaXN0KSAqIC0xIHRocm91Z2ggLTEge1xyXG4gICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCBhYnMoJGkpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiAkcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgLy8gU2FzcyAzLjNcclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGZsb29yKGxlbmd0aCgkbGlzdCkgLyAyKSArIDEge1xyXG4gICAgJHRtcDogbnRoKCRsaXN0LCAkaSk7XHJcbiAgICAkbGlzdDogc2V0LW50aCgkbGlzdCwgJGksIG50aCgkbGlzdCwgLSRpKSk7XHJcbiAgICAkbGlzdDogc2V0LW50aCgkbGlzdCwgLSRpLCAkdG1wKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGxpc3Q7XHJcbn1cclxuXHJcbi8vIEdldCB0aGUgb3Bwb3NpdGUgZGlyZWN0aW9uIHRvIGEgZ2l2ZW4gdmFsdWUuXHJcbkBmdW5jdGlvbiBfb3Bwb3NpdGUtZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcclxuICBAaWYgJGRpcmVjdGlvbiA9PSAnbGVmdCcge1xyXG4gICAgQHJldHVybiByaWdodDtcclxuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gJ3JpZ2h0JyB7XHJcbiAgICBAcmV0dXJuIGxlZnQ7XHJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09ICd0b3AnIHtcclxuICAgIEByZXR1cm4gYm90dG9tO1xyXG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSAnYm90dG9tJyB7XHJcbiAgICBAcmV0dXJuIHRvcDtcclxuICB9IEBlbHNlIGlmIGluZGV4KCdsdHInICdMVFInLCAkZGlyZWN0aW9uKSB7XHJcbiAgICBAcmV0dXJuIHJ0bDtcclxuICB9IEBlbHNlIGlmIGluZGV4KCdydGwnICdSVEwnLCAkZGlyZWN0aW9uKSB7XHJcbiAgICBAcmV0dXJuIGx0cjtcclxuICB9IEBlbHNlIHtcclxuICAgIEB3YXJuICdgI3skZGlyZWN0aW9ufWAgaXMgbm90IGEgZGlyZWN0aW9uOyBwbGVhc2UgbWFrZSBzdXJlIHlvdXIgZGlyZWN0aW9uIGlzIGFsbCBsb3dlcmNhc2UuJztcclxuICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiIsInN2ZyBwYXRoLFxyXG5zdmcgZyB7XHJcbiAgICBmaWxsOiBpbmhlcml0O1xyXG59XHJcbiIsIi8qID1Xb3JkUHJlc3MgQ29yZVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uYWxpZ25ub25lIHtcclxuICAgIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xyXG59XHJcblxyXG4uYWxpZ25jZW50ZXIsXHJcbmRpdi5hbGlnbmNlbnRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogNXB4IGF1dG8gNXB4IGF1dG87XHJcbn1cclxuXHJcbi5hbGlnbnJpZ2h0IHtcclxuICAgIGZsb2F0OnJpZ2h0O1xyXG4gICAgbWFyZ2luOiA1cHggMCAyMHB4IDIwcHg7XHJcbn1cclxuXHJcbi5hbGlnbmxlZnQge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcclxufVxyXG5cclxuYSBpbWcuYWxpZ25yaWdodCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBtYXJnaW46IDVweCAwIDIwcHggMjBweDtcclxufVxyXG5cclxuYSBpbWcuYWxpZ25ub25lIHtcclxuICAgIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xyXG59XHJcblxyXG5hIGltZy5hbGlnbmxlZnQge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcclxufVxyXG5cclxuYSBpbWcuYWxpZ25jZW50ZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0b1xyXG59XHJcblxyXG4ud3AtY2FwdGlvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YwZjBmMDtcclxuICAgIG1heC13aWR0aDogOTYlOyAvKiBJbWFnZSBkb2VzIG5vdCBvdmVyZmxvdyB0aGUgY29udGVudCBhcmVhICovXHJcbiAgICBwYWRkaW5nOiA1cHggM3B4IDEwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi53cC1jYXB0aW9uLmFsaWdubm9uZSB7XHJcbiAgICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcclxufVxyXG5cclxuLndwLWNhcHRpb24uYWxpZ25sZWZ0IHtcclxuICAgIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xyXG59XHJcblxyXG4ud3AtY2FwdGlvbi5hbGlnbnJpZ2h0IHtcclxuICAgIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4O1xyXG59XHJcblxyXG4ud3AtY2FwdGlvbiBpbWcge1xyXG4gICAgYm9yZGVyOiAwIG5vbmU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBtYXgtd2lkdGg6IDk4LjUlO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG59XHJcblxyXG4ud3AtY2FwdGlvbiBwLndwLWNhcHRpb24tdGV4dCB7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTdweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDAgNHB4IDVweDtcclxufVxyXG5cclxuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cclxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XHJcblx0Y2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG5cdGhlaWdodDogMXB4O1xyXG5cdHdpZHRoOiAxcHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Ym94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcclxuXHRjb2xvcjogIzIxNzU5YjtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRoZWlnaHQ6IGF1dG87XHJcblx0bGVmdDogNXB4O1xyXG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcblx0cGFkZGluZzogMTVweCAyM3B4IDE0cHg7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdHRvcDogNXB4O1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cclxufVxyXG4iLCIqLFxyXG4qOjphZnRlcixcclxuKjo6YmVmb3JlIHtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5ib2R5IHtcclxuXHRmb250LWZhbWlseTogJ1VidW50dScsIHNhbnMtc2VyaWY7XHJcblx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRsaW5lLWhlaWdodDogMS40ZW07XHJcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cdGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcclxufVxyXG5cclxuaDEge1xyXG5cdGZvbnQtc2l6ZTogMi41ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNGVtO1xyXG59XHJcblxyXG5oMSwgaDIge1xyXG5cdGNvbG9yOiAjMDAwO1xyXG5cdGZvbnQtd2VpZ2h0OiAxMDA7XHJcbn1cclxuXHJcbmgyIHtcclxuXHRtYXJnaW4tdG9wOiAwO1xyXG5cdGZvbnQtc2l6ZTogMWVtO1xyXG59XHJcblxyXG5pbWcge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbmZpZ3VyZSB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG5wLCBsaSB7XHJcblx0Zm9udC1zaXplOiAwLjk0ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuMmVtO1xyXG5cdG1hcmdpbjogLjdlbSAwO1xyXG59XHJcblxyXG5wIHtcclxuXHRsaW5lLWhlaWdodDogMS42ZW07XHJcbn1cclxuXHJcbnN0cm9uZyB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuaHIge1xyXG5cdGJhY2tncm91bmQ6ICM3MzY5NjA7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGhlaWdodDogMnB4O1xyXG5cdG1hcmdpbjogNDBweCAwIDMwcHg7XHJcbn1cclxuXHJcbmEge1xyXG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdH1cclxufVxyXG4iLCIkYmctY29sb3I6ICNmMGYwZjA7XHJcbiRncmF5OiAjZDFkMWQxO1xyXG5cclxuJGxpZ2h0LWNvbG9yOiAjRkZGO1xyXG5cclxuJG1haW4tY29sb3I6ICM4ZWI5MzU7XHJcbiRzZWNvbmQtY29sb3I6ICM4ZWI5MzU7XHJcbiR0ZXh0LWNvbG9yOiAjNGY0ZjRmO1xyXG5cclxuLy8gQnJlYWtwb2ludCBjb25maWd1cmF0aW9uc1xyXG5AaW5jbHVkZSBicmVha3BvaW50LXNldCgndG8gZW1zJywgdHJ1ZSk7XHJcblxyXG4vLyBCYXNlZCBvbiBTa2VsZXRvbiBGcmFtZXdvcmtcclxuJG1vYmlsZTogNDAwcHg7XHJcbiRwaGFibGV0OiA1NTBweDtcclxuJHRhYmxldDogNzY5cHg7XHJcbiRkZXNrdG9wOiAxMDAwcHg7XHJcbiRkZXNrdG9wLWhkOiAxMjAwcHg7XHJcblxyXG4keHM6IG1heC13aWR0aCA3NjdweDtcclxuJHNtOiA3NjhweDtcclxuJHNtLW9ubHk6IDc2OHB4IDk5MXB4O1xyXG4kbWQ6IDk5MnB4O1xyXG4kbWQtb25seTogOTkycHggMTE5OXB4O1xyXG4kbGc6IDEyMDBweDtcclxuXHJcbiRqZWV0LWd1dHRlcjogMztcclxuIiwiLmJ0biB7XHJcblx0cGFkZGluZzogMjBweCA1cHg7XHJcblx0Zm9udC1zaXplOiAxLjRlbTtcclxuXHRmb250LXdlaWdodDogNDAwO1xyXG5cdGNvbG9yOiAjRkZGO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGJhY2tncm91bmQ6ICM0NzQzM2Y7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcbiIsImxhYmVsIHtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG5sYWJlbCB7XHJcblx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRwYWRkaW5nOiA1cHggMDtcclxufVxyXG5cclxuZmllbGRzZXQge1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMjBweCAwO1xyXG59XHJcblxyXG5sZWdlbmQge1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cdHBhZGRpbmctbGVmdDogMS41JTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR3aWR0aDogOTAlO1xyXG59XHJcblxyXG5pbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCwgb3B0aW9uIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAxMHB4IDE1cHg7XHJcblx0Y29sb3I6ICMwMDA7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHJcblx0I2luc2NyaWNhb0Zvcm0gJiB7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xyXG5cdH1cclxufVxyXG5cclxudGV4dGFyZWEge1xyXG5cdGhlaWdodDogMTI1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuW3R5cGU9c3VibWl0XSB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0YmFja2dyb3VuZDogJG1haW4tY29sb3I7XHJcblx0cGFkZGluZzogMTBweCAxNXB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRmb250LXNpemU6IDFlbTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXJnaW46IDAgYXV0bztcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Y29sb3I6ICNGRkY7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHR0cmFuc2l0aW9uOiAuM3MgYWxsO1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblxyXG5cclxuXHQud2lkZ2V0ICYge1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVye1xyXG5cdFx0YmFja2dyb3VuZDogbGlnaHRlbigkbWFpbi1jb2xvciwgMTAlKTtcclxuXHR9XHJcbn1cclxuXHJcbi5zci1vbmx5IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5sYWJlbC5lcnJvciB7XHJcblx0YmFja2dyb3VuZDogcmVkO1xyXG5cdGNvbG9yOiAjRkZGO1xyXG5cdC8vcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGZvbnQtc2l6ZTogLjllbTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG5cdG1hcmdpbjogLTIwcHggMCAxMHB4O1xyXG5cdHBhZGRpbmctbGVmdDogMTBweDtcclxufVxyXG5cclxuaW5wdXQuZXJyb3IsIHRleHRhcmVhLmVycm9yIHtcclxuXHRjb2xvcjogcmVkO1xyXG5cdGJhY2tncm91bmQ6ICNmZmQ0ZmM7XHJcblx0Ym9yZGVyOiAycHggc29saWQgcmVkO1xyXG59XHJcblxyXG5cclxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuXHRjb2xvcjogIzk5OTtcclxufVxyXG5cclxuOi1tb3otcGxhY2Vob2xkZXIge1xyXG5cdGNvbG9yOiAjOTk5O1xyXG59XHJcblxyXG46Oi1tb3otcGxhY2Vob2xkZXIge1xyXG5cdGNvbG9yOiAjOTk5O1xyXG59XHJcblxyXG46LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgIFxyXG5cdGNvbG9yOiAjOTk5O1xyXG59XHJcbiIsIi5mdWxsYmFubmVyIHtcclxuXHRoZWlnaHQ6IDMzMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDQwcHggIWltcG9ydGFudDtcclxuXHJcblx0LmhvbWUgJiB7XHJcblx0XHRoZWlnaHQ6IDYwMHB4O1xyXG5cdH1cclxuXHJcblx0LnNjcm9sbC1kb3duIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGJvdHRvbTogMjBweDtcclxuXHRcdGxlZnQ6IDUwJTtcclxuXHRcdHotaW5kZXg6IDEwMDtcclxuXHRcdGZpbGw6ICNGRkY7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblxyXG5cdFx0Lmljb24tYXJyb3ctZG93biB7XHJcblx0XHRcdHdpZHRoOiA0MnB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHQuc3dpcGVyLWNvbnRhaW5lcixcclxuXHQuc3dpcGVyLXdyYXBwZXIsXHJcblx0LnN3aXBlci1zbGlkZSB7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0fVxyXG5cclxuXHQuc3dpcGVyLXBhZ2luYXRpb24ge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0Ym90dG9tOiAxMHB4O1xyXG5cdFx0bGVmdDogNTAlICFpbXBvcnRhbnQ7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1heC13aWR0aDogMTE3MHB4O1xyXG5cdFx0cGFkZGluZzogMCAxMHB4O1xyXG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0fVxyXG5cclxuXHQuc3dpcGVyLWJ1dHRvbi1wcmV2LFxyXG5cdC5zd2lwZXItYnV0dG9uLW5leHQge1xyXG5cdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtYWluLWNvbG9yLCAwLjgpO1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOiAyNXB4O1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHBhZGRpbmc6IDYwcHggMjVweDtcclxuXHRcdGJvdHRvbTogNDBweDtcclxuXHRcdHRvcDogYXV0bztcclxuXHJcblx0XHQuaG9tZSAmIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRib3R0b206IGF1dG87XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcclxuXHRcdHdpZHRoOiAxMHB4O1xyXG5cdFx0aGVpZ2h0OiAxMHB4O1xyXG5cdFx0bWFyZ2luOiAwIDVweDtcclxuXHR9XHJcblxyXG5cdFxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3AtaGQpIHtcclxuXHRcdC5zd2lwZXItYnV0dG9uLXByZXYge1xyXG5cdFx0XHRsZWZ0OiBjYWxjKCgxMDAlIC0gMTE3NXB4KSAvIDIpO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuXHRcdFx0cmlnaHQ6IGNhbGMoKDEwMCUgLSAxMTc1cHgpIC8gMik7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc3dpcGVyLXNsaWRlIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRjb250ZW50OiBcIiBcIjtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwwLDAsLjgpLCByZ2JhKDAsMCwwLDApKTtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDA7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0LmNvbnRhaW5lciB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnN1cHBsaWVyLXdyYXBwZXIgeyBcclxuXHQgICAgYmFja2dyb3VuZDogI0ZGRjtcclxuXHQgICAgcGFkZGluZzogMjBweDtcclxuXHQgICAgbWFyZ2luOiAwIC0yMHB4IC0yMHB4IC0yMHB4O1xyXG5cdH1cclxuXHJcblx0LnBvc3QtY2F0ZWdvcnkge1xyXG5cdFx0YmFja2dyb3VuZDpcdCRtYWluLWNvbG9yO1xyXG5cdFx0Zm9udC1zaXplOiAwLjdlbTtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdHBhZGRpbmc6IDNweCA2cHg7XHJcblxyXG5cdH1cclxuXHJcblx0LmJhbm5lci10ZXh0IHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRib3R0b206IDQwcHg7XHJcblx0XHRwYWRkaW5nOiAxMHB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRcdC8vdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0XHQvL3RleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdG1heC13aWR0aDogNjclO1xyXG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdGZvbnQtc2l6ZTogMWVtO1xyXG5cdFx0Y29sb3I6ICNGRkY7XHJcblx0XHRtYXJnaW46IDAgMTBweDtcclxuXHJcblx0XHQuc2luZ2xlICYge1xyXG5cdFx0XHRib3R0b206IDA7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdGNvbG9yOiAjRkZGO1xyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBoYWJsZXQpIHtcclxuXHRcdFx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoMTE3NnB4KSB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiBjYWxjKCgxMDB2dyAtIDExNzZweCkgLyAyICogLTEpO1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTE3NnB4KSAvIDIpO1xyXG5cdFx0XHRib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuXHJcblx0XHRcdC5zaW5nbGUgJiB7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0XHRcdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0aDEge1xyXG5cdFx0XHRjb2xvcjogI0ZGRjtcclxuXHRcdFx0Zm9udC1zaXplOiAxLjhlbTtcclxuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdFx0bWFyZ2luOiAuNWVtIDAgMDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDFlbTtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRcdFx0XHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBoYWJsZXQpIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDIuM2VtO1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjJlbTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdHAge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiA1cHg7XHJcblx0XHRcdGZvbnQtc2l6ZTogMWVtO1xyXG5cdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnBvc3QtaW5mbyB7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHRmb250LXNpemU6IC44ZW07XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuXHRcdG1hcmdpbjogMDtcclxuXHJcblx0XHRsaSB7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLmZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtY29sb3I7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcblx0cGFkZGluZzogNTBweCAwIDQwcHg7XHJcblxyXG4gICAgLmJyYW5kIHtcclxuXHRcdHBhZGRpbmctdG9wOiAxMHB4O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblx0LmhpZ2hsaWdodCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcblx0YSB7XHJcblx0XHRjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRjb2xvcjogJG1haW4tY29sb3I7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIH1cclxuXHJcblx0LnNvY2lhbC1saW5rcyBhOmJlZm9yZSB7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBoYWJsZXQpIHtcclxuICAgICAgICAuYXV4aWxpYXItbmF2LFxyXG4gICAgICAgIC5tYWluLW5hdixcclxuICAgICAgICAuc29jaWFsLWxpbmtzIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uKDEvNik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnJhbmQsXHJcbiAgICAgICAgLmFib3V0LXRleHQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMS80KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYWdlLWZvb3RlciB7XHJcblx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcclxuXHRjbGVhcjogYm90aDtcclxuXHJcblx0Zm9udC1zaXplOiAuN2VtOyBcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogN3B4IDA7XHJcblx0YmFja2dyb3VuZDogIzAwMDtcclxuXHRjb2xvcjogI0ZGRjtcclxuXHRcclxuXHQuY3JlZGl0cyB7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdH1cclxuXHJcblx0YSB7XHJcblx0XHRjb2xvcjogI0ZGRjtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBoYWJsZXQpIHtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG5cdFx0LmNvcHkge1xyXG5cdFx0XHRmbG9hdDogbGVmdDtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0LmNyZWRpdHMge1xyXG5cdFx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHR9XHJcblxyXG5cdFx0LmNvbCB7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRcclxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuY29weSB7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuaGVhZGVyLXBsYWNlaG9sZGVyIHtcclxuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCl7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcblxyXG4gICAgICAgIC5zdGljayAmIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmhlYWRlciB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIGJhY2tncm91bmQ6ICRsaWdodC1jb2xvcjtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KXtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICB1bCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4IDAgNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmF1eGlsaWFyLWJhciB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICBwYWRkaW5nOiAxcHggMDtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAuOGVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRwaGFibGV0KSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpOmxhc3QtY2hpbGQgYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmF1eGlsaWFyLW5hdiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIC5jdXJyZW50LW1lbnUtaXRlbSBhLFxyXG4gICAgICAgIC5jdXJyZW50X3BhZ2VfcGFyZW50IGEge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRleHQtY29sb3I7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtMXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnJhbmQge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMjgwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1heC13aWR0aCAkdGFibGV0KSB7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc29jaWFsLWxpbmtzIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOXB4O1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAuNjtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1haW4tYmFyIHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMTJweDtcclxuXHJcbiAgICAgICAgICAgIC5zdGljayAmIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjAwMDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1haW4tbmF2IHtcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGlnaGxpZ2h0IGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCl7XHJcbiAgICAgICAgLmF1eGlsaWFyLW5hdiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNvbHVtbigxLzIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlYXJjaC1ib3gsXHJcbiAgICAgICAgLmJyYW5kIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uKDEvMyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc29jaWFsLWxpbmtzIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uKDEvNik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWFpbi1uYXYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMi8zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJcclxuLm1vYmlsZS1uYXYsIC5wYWdlLXdyYXBwZXIgLnNlYXJjaC1ib3gge2Rpc3BsYXk6IG5vbmU7fVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludChtYXgtd2lkdGggNzY4cHgpIHtcclxuICAgIC5oZWFkZXIsXHJcbiAgICAucGFnZS13cmFwcGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLW91dDtcclxuICAgICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRjtcclxuICAgICAgICBcclxuICAgICAgICAub3BlbmVkLW1lbnUgJiB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjU2cHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucGFnZS13cmFwcGVyIC5zZWFyY2gtYm94IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRjtcclxuXHJcbiAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICByaWdodDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5wYWdlLXdyYXBwZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcclxuXHJcbiAgICAgICAgLm9wZW5lZC1tZW51ICYge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsIDAsIDAsIDAgKSwgcmdiYSgwLCAwLCAwLCAwLjMpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub3BlbmVkLW1lbnUge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYWRlciAubWFpbi1uYXYsXHJcbiAgICAuaGVhZGVyIC5hdXhpbGlhci1iYXIgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gICAgLm1vYmlsZS1uYXYge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMjU2cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2Utb3V0O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblxyXG4gICAgICAgIC5vcGVuZWQtbWVudSAmIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tYWluLW5hdiB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcblxyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaGlnaGxpZ2h0IGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMjB2dztcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc29jaWFsLWxpbmtzIHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOXB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZXQpIHtcclxuICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1lbnUtdHJpZ2dlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRvcDogLTdweDtcclxuICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDUwMDtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAvKiBpbWFnZSByZXBsYWNlbWVudCAqL1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzO1xyXG4gICAgICAgIHotaW5kZXg6IDIwMDA7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJNRU5VXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAtMTNweDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1lbnUtaWNvbiB7XHJcbiAgICAgICAgICAgIC8qIGljb24gY3JlYXRlZCBpbiBDU1MgKi9cclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBib3R0b206IGF1dG87XHJcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgei1pbmRleDogNTEwO1xyXG5cclxuICAgICAgICAgICAgLm9wZW5lZC1tZW51ICYge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpIHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLm9wZW5lZC1tZW51ICYge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KSByb3RhdGUoMGRlZyk7XHJcblxyXG4gICAgICAgICAgICAgICAgLm9wZW5lZC1tZW51ICYge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5wb3N0LWNhcmQge1xyXG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWNvbG9yO1xyXG4gICAgZm9udC1zaXplOiAxZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuM3MsIHRyYW5zZm9ybSAuM3M7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMnB4IDVweCAxMHB4IHJnYmEoIzAwMCwgMC4yKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAtMnB4KTtcclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLXRleHQge1xyXG4gICAgICAgIHBhZGRpbmc6IDI4cHggMjBweCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuaGlnaGxpZ2h0LXBvc3Qge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTAlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgwLDAsMCwuOCksIHJnYmEoMCwwLDAsMCkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7ZGlzcGxheTogbm9uZX1cclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYXJkLXRleHQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNjBweDtcclxuICAgICAgICAgICAgY29sb3I6ICNGRkY7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuN2VtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxuXHJcbiAgICAucmVhZC1tb3JlIHtcclxuICAgICAgICBjb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC45NGVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5hdXRob3Ige1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAxNXB4O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XHJcbiAgICAgICAgLmRlZmF1bHQtbGlzdCAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uKDEvMywgJGN5Y2xlOiAzKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaGlnaGxpZ2h0LXBvc3Qge1xyXG4gICAgICAgICAgICBwIHtkaXNwbGF5OiBibG9ja31cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ob21lLWxhc3QtcG9zdHMgLmZlYXR1cmVkICYge1xyXG4gICAgICAgICAgICAmLmhpZ2hsaWdodC1wb3N0IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvbHVtbigyLzMpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMS8zLCAkY3ljbGU6IDIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZGVmYXVsdC1saXN0LFxyXG4uaG9tZS1sYXN0LXBvc3RzIC5mZWF0dXJlZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG4iLCIuc2VhcmNoLWJveCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcblxyXG4gICAgbGFiZWwgeyBkaXNwbGF5OiBub25lIH1cclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAuODVlbTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGJ1dHRvbiB7IFxyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmljb24tc2VhcmNoOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiM4YjhkOTA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnNpbmdsZS1wb3N0IHtcclxuICAgIC5tYWluLWNvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMTAvMTIsICRvZmZzZXQ6IDEvMTIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWFpbi10ZXh0IHtcclxuICAgICAgICBhIHsgXHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFncywgLmNhdGVnb3JpZXMtbGlzdCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2RlZGVkZTtcclxuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAycHggNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oI2RlZGVkZSwgMTAlKTtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2F0ZWdvcmllcy1saXN0IHtcclxuICAgICAgICBmb250LXNpemU6IC44ZW07XHJcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMTBweDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJG1haW4tY29sb3IsIDEwJSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9vdGVyIHtcclxuICAgICAgICAuYXV0aG9yIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2QxZDFkMTtcclxuICAgICAgICAgICAgcGFkZGluZzogMzVweCAwO1xyXG5cclxuICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgc21hbGwge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjdlbTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDc1cHg7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmF1dGhvci1pbmZvIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTYwcHg7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYm94LXNoYXJlIHtcclxuICAgICAgICBmb250LXNpemU6IC44ZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuXHJcbiAgICAgICAgJi50b3Age1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucmVsYXRlZC1wb3N0cyB7XHJcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG59IiwiLnN3aXBlci1wYWdpbmF0aW9uIHtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLnN3aXBlci1zbGlkZSAuY29udGFpbmVyID4gYSB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xyXG5cdGxlZnQ6IDUwJTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbn1cclxuXHJcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kOiAjRkZGO1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHJcblx0Ji5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcclxuXHRcdGJhY2tncm91bmQ6ICRzZWNvbmQtY29sb3I7XHJcblx0fVxyXG59XHJcbiIsIi8vIEJvb3RzdHJhcFxyXG5AaW1wb3J0ICdicmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludCc7XHJcbkBpbXBvcnQgJ2plZXQvc2Nzcy9pbmRleC5zY3NzJztcclxuXHJcbi8vIFV0aWxzXHJcbkBpbXBvcnQgJ25vcm1hbGl6ZS1zY3NzL19ub3JtYWxpemUuc2Nzcyc7XHJcblxyXG4vLyBDb25maWd1cmF0aW9uc1xyQGltcG9ydCAnY29yZS9fX3ZhcmlhYmxlcy5zY3NzJztcbkBpbXBvcnQgJ2NvcmUvX2ZsZXgtZ3JpZC5zY3NzJztcbkBpbXBvcnQgJ2NvcmUvX2ZvbnQtaWNvbW9vbi5zY3NzJztcbkBpbXBvcnQgJ2NvcmUvX2dyaWQuc2Nzcyc7XG5AaW1wb3J0ICdjb3JlL19zdmcuc2Nzcyc7XG5AaW1wb3J0ICdjb3JlL193b3JkcHJlc3MtY29yZS5zY3NzJztcbkBpbXBvcnQgJ2F0b21zL19iYXNlLnNjc3MnO1xuQGltcG9ydCAnYXRvbXMvX2J1dHRvbnMuc2Nzcyc7XG5AaW1wb3J0ICdhdG9tcy9fZm9ybXMuc2Nzcyc7XG5AaW1wb3J0ICdtb2xlY3VsZXMvX2Z1bGxiYW5uZXIuc2Nzcyc7XG5AaW1wb3J0ICdvcmdhbmlzbXMvX2Zvb3Rlci5zY3NzJztcbkBpbXBvcnQgJ29yZ2FuaXNtcy9faGVhZGVyLnNjc3MnO1xuQGltcG9ydCAnb3JnYW5pc21zL19tb2JpbGUtbmF2LnNjc3MnO1xuQGltcG9ydCAnb3JnYW5pc21zL19wb3N0LWNhcmQuc2Nzcyc7XG5AaW1wb3J0ICdvcmdhbmlzbXMvX3NlYWNoLWJveC5zY3NzJztcbkBpbXBvcnQgJ29yZ2FuaXNtcy9fc2luZ2xlLXBvc3Quc2Nzcyc7XG5AaW1wb3J0ICdvcmdhbmlzbXMvX3N3aXBlci5zY3NzJztcbi8qIE5vIGZpbGVzIHRvIGltcG9ydCBmb3VuZCBpbiB0ZW1wbGF0ZXMvLyogKi9AaW1wb3J0ICdwYWdlcy9fYmxvZy5zY3NzJztcbkBpbXBvcnQgJ3BhZ2VzL19ob21lLnNjc3MnO1xuXG4vL0BpbXBvcnQgJ3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MnO1xyQGltcG9ydCAndmVuZG9ycy9fc2xpY2stdGhlbWUuc2Nzcyc7XG5AaW1wb3J0ICd2ZW5kb3JzL19zd2lwZXIuc2Nzcyc7XG4iLCIubWFpbi1jb250ZW50IHtcclxuXHQuYnJlYWRjcnVtYnN7XHJcblx0XHRmb250LXNpemU6IDAuOGVtO1xyXG5cdFx0bWFyZ2luOiAxNXB4IDA7XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0XHRmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ubmF2aWdhdGlvbiB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG5cdC5wYWdlZCAmIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdHdpZHRoOiA0OC41JTtcclxuXHRcdGJhY2tncm91bmQ6ICRtYWluLWNvbG9yO1xyXG5cdFx0Y29sb3I6ICNGRkY7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0cGFkZGluZzogMTBweDtcclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmxhc3Rlc3QtYnktY2F0ZWdvcnkge1xyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xyXG5cdFx0QGluY2x1ZGUgY29sdW1uKDEvMyk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBNT0QgKi9cclxuLnZ3LXBvc3Qtc2hhcmUtaWNvbnMgLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbHtjb2xvcjojODg4ODg4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6MHB4IDZweDttYXJnaW4tcmlnaHQ6M3B4Oy13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC4ycyBlYXNlLW91dDstbW96LXRyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1vdXQ7dHJhbnNpdGlvbjphbGwgMC4ycyBlYXNlLW91dDt9XHJcbi52dy1wb3N0LXNoYXJlLWljb25zIC52dy1pY29ue2ZvbnQtc2l6ZToxNXB4O2NvbG9yOmluaGVyaXQ7dmVydGljYWwtYWxpZ246IG1pZGRsZTt9XHJcbi52dy1wb3N0LXNoYXJlLWljb25zIC52dy1wb3N0LXNoYXJlcy1zb2NpYWwtZmFjZWJvb2s6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojM0I1OTk4O2NvbG9yOiNGRkZGRkY7fVxyXG4udnctcG9zdC1zaGFyZS1pY29ucyAudnctcG9zdC1zaGFyZXMtc29jaWFsLXR3aXR0ZXI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDBBQ0VEO2NvbG9yOiNGRkZGRkY7fVxyXG4udnctcG9zdC1zaGFyZS1pY29ucyAudnctcG9zdC1zaGFyZXMtc29jaWFsLWxpbmtlZGluOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzAwODRiZjtjb2xvcjojRkZGRkZGO31cclxuLnZ3LXBvc3Qtc2hhcmUtaWNvbnMgLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1ncGx1czpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNERDRCMzk7Y29sb3I6I0ZGRkZGRjt9XHJcbi52dy1wb3N0LXNoYXJlLWljb25zIC52dy1wb3N0LXNoYXJlcy1zb2NpYWwtcGludGVyZXN0OmhvdmVye2JhY2tncm91bmQtY29sb3I6I0NCMjAyNztjb2xvcjojRkZGRkZGO31cclxuLnZ3LXBvc3Qtc2hhcmUtYm94e2JvcmRlci1ib3R0b206MCBzb2xpZCAjRUZFRkVGO31cclxuLnZ3LXBvc3Qtc2hhcmUtYm94IC52dy1wb3N0LXNoYXJlLWJveC1idXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZzoxcHggMTBweCAxcHggMTBweDttYXJnaW4tcmlnaHQ6IDNweDtjb2xvcjojRkZGRkZGO3RleHQtZGVjb3JhdGlvbjpub25lO31cclxuQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpey52dy1wb3N0LXNoYXJlLWJveCAudnctcG9zdC1zaGFyZS1ib3gtYnV0dG9ue3BhZGRpbmc6NHB4IDhweDt9XHJcbn1cclxuLnZ3LXBvc3Qtc2hhcmUtYm94IC52dy1wb3N0LXNoYXJlLWJveC1idXR0b24gLnZ3LWJ1dHRvbi1sYWJlbHtmb250LXNpemU6MTFweDttYXJnaW4tbGVmdDo1cHg7fVxyXG5AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LnZ3LXBvc3Qtc2hhcmUtYm94IC52dy1wb3N0LXNoYXJlLWJveC1idXR0b24gLnZ3LWJ1dHRvbi1sYWJlbHtkaXNwbGF5Om5vbmU7fVxyXG59XHJcbi52dy1wb3N0LXNoYXJlLWJveCAudnctcG9zdC1zaGFyZS1ib3gtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzNFM0UzRTstd2Via2l0LXRyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1vdXQ7LW1vei10cmFuc2l0aW9uOmFsbCAwLjJzIGVhc2Utb3V0O3RyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1vdXQ7fVxyXG4udnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1waW50ZXJlc3R7YmFja2dyb3VuZC1jb2xvcjojQ0IyMDI3O31cclxuLnZ3LXBvc3Qtc2hhcmUtYm94IC52dy1wb3N0LXNoYXJlcy1zb2NpYWwtdHdpdHRlcntiYWNrZ3JvdW5kLWNvbG9yOiMzOUE5RTA7fVxyXG4udnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1saW5rZWRpbntiYWNrZ3JvdW5kLWNvbG9yOiMwMDg0YmY7fVxyXG4udnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1mYWNlYm9va3tiYWNrZ3JvdW5kLWNvbG9yOiMzQjU5OTg7fVxyXG4udnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC1ncGx1c3tiYWNrZ3JvdW5kLWNvbG9yOiNEMTQ4MzY7fVxyXG4udnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC13aGF0c2FwcHtiYWNrZ3JvdW5kLWNvbG9yOiMzM2NjNjY7fVxyXG4udnctcG9zdC1zaGFyZS1iaWctbnVtYmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1yaWdodDoxNXB4O3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsaW5lLWhlaWdodDoxZW07dmVydGljYWwtYWxpZ246dGV4dC10b3A7fVxyXG4udnctcG9zdC1zaGFyZS1iaWctbnVtYmVyIC52dy1udW1iZXJ7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc2l6ZTozMHB4O21hcmdpbi1ib3R0b206NHB4OyBjb2xvcjogJG1haW4tY29sb3J9XHJcbi52dy1wb3N0LXNoYXJlLWJpZy1udW1iZXIgLnZ3LXVuaXR7Zm9udC1zaXplOjhweDtsZXR0ZXItc3BhY2luZzowcHg7b3BhY2l0eTowLjU7IGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjt9XHJcbiN2dy1wb3N0LXNoYXJlcy1kaWFsb2d7YmFja2dyb3VuZDp3aGl0ZTtwYWRkaW5nOjIwcHggMzBweDt0ZXh0LWFsaWduOmxlZnQ7bWF4LXdpZHRoOjYwMHB4O21hcmdpbjo0MHB4IGF1dG87cG9zaXRpb246cmVsYXRpdmU7fVxyXG4jdnctcG9zdC1zaGFyZXMtZGlhbG9nIC52dy1wb3N0LXNoYXJlcy10aXRsZXtjb2xvcjojMTExMTExO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcbiN2dy1wb3N0LXNoYXJlcy1kaWFsb2cgLnZ3LXBvc3Qtc2hhcmVzLXN1YnRpdGxle2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OmJvbGQ7Y29sb3I6I0JCQkJCQjsgbGV0dGVyLXNwYWNpbmc6MHB4O31cclxuI3Z3LXBvc3Qtc2hhcmVzLWRpYWxvZyAudnctcG9zdC1zaGFyZXMtc29jaWFsc3ttYXJnaW4tdG9wOjIwcHg7bWFyZ2luLWJvdHRvbTozMHB4O31cclxuI3Z3LXBvc3Qtc2hhcmVzLWRpYWxvZyAudnctcG9zdC1zaGFyZXMtc29jaWFse2ZvbnQtc2l6ZToyNHB4O2NvbG9yOiNGRkZGRkY7YmFja2dyb3VuZC1jb2xvcjojRUZFRkVGO3BhZGRpbmc6MTBweCAxMHB4O21hcmdpbi10b3A6MTBweDttYXJnaW4tcmlnaHQ6MTBweDtkaXNwbGF5OmlubGluZS1ibG9jazt9XHJcbkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsudnctcG9zdC1zaGFyZS1ib3ggLnZ3LXBvc3Qtc2hhcmVzLXNvY2lhbC13aGF0c2FwcCB7ZGlzcGxheTpub25lO31cclxufVxyXG4iLCIuc2VjdGlvbi10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG59XHJcblxyXG4uaG9tZS1sYXN0LXBvc3RzIHtcclxuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5tYWlsY2hpbXAtZm9ybSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZDFkMWQxO1xyXG4gICAgcGFkZGluZzogMTVweCAwO1xyXG4gICAgbWFyZ2luLXRvcDogLTQwcHg7XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcclxuICAgIH1cclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICBidXR0b24ge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XHJcbiAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNvbHVtbigxLzQsICRjeWNsZTogNCk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYmFubmVycyB7XHJcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG5cclxuICAgIC5iYW5uZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxldCkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMS8zKTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tb3N0LXZpZXdlZCB7XHJcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2RmZGZkZjtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XHJcbiAgICAgICAgLnBvc3QtY2FyZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0ZWdvcmllcyB7XHJcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4uZmVhdHVyZXMge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbjogMzBweCAwO1xyXG4gICAgXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIG1hcmdpbjogMCAzMHB4IDE1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWF4LXdpZHRoICRwaGFibGV0KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG59XHJcblxyXG4uaW5zdGEtZmVlZCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgLnRhYmxldCwgLmRlc2t0b3Age1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGV0KSB7XHJcbiAgICAgICAgLm1vYmlsZSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgICAgICAudGFibGV0IHsgZGlzcGxheTogYmxvY2s7IH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XHJcbiAgICAgICAgLnRhYmxldCB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgICAgICAuZGVza3RvcCB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZvbGxvdy1idXR0b24ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRjtcclxuICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHRleHQtY29sb3I7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCAxNXB4O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xyXG5cclxuJHNsaWNrLWZvbnQtcGF0aDogXCIuL2ZvbnRzL1wiICFkZWZhdWx0O1xyXG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcclxuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvciAhZGVmYXVsdDtcclxuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIuKGkFwiICFkZWZhdWx0O1xyXG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwi4oaSXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIuKAolwiICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XHJcblxyXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcclxuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XHJcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFNsaWRlciAqL1xyXG5cclxuLnNsaWNrLWxpc3Qge1xyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEljb25zICovXHJcbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcclxuICAgIEBmb250LWZhY2Uge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XHJcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdFwiKTtcclxuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEFycm93cyAqL1xyXG5cclxuLnNsaWNrLXByZXYsXHJcbi5zbGljay1uZXh0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMHB4O1xyXG4gICAgZm9udC1zaXplOiAwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbWFyZ2luLXRvcDogLTEwcHhcXDk7IC8qbHRlIElFIDgqL1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTNweDtcclxuICAgIHBhZGRpbmc6IDE4cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xyXG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGljay1wcmV2IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xyXG59XHJcblxyXG4uc2xpY2stbmV4dCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcclxufVxyXG5cclxuLnNsaWNrLXByZXY6YmVmb3JlLCAuc2xpY2stbmV4dDpiZWZvcmUge1xyXG4gICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcclxuICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XHJcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcbi5zbGljay1wcmV2IHtcclxuICAgIC8vbGVmdDogLTI1cHg7XHJcbiAgICBsZWZ0OiAxNXB4O1xyXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHJpZ2h0OiAtMjVweDtcclxuICAgIH1cclxuICAgIC8vJjpiZWZvcmUge1xyXG4gICAgLy8gICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xyXG4gICAgLy8gICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgIC8vICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XHJcbiAgICAvLyAgICB9XHJcbiAgICAvL31cclxufVxyXG5cclxuLnNsaWNrLW5leHQge1xyXG4gICAgLy9yaWdodDogLTI1cHg7XHJcbiAgICByaWdodDogMTVweDtcclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgbGVmdDogLTI1cHg7XHJcbiAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICAvLyY6YmVmb3JlIHtcclxuICAgIC8vICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcclxuICAgIC8vICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAvLyAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xyXG4gICAgLy8gICAgfVxyXG4gICAgLy99XHJcbn1cclxuXHJcbi8qIERvdHMgKi9cclxuXHJcbi5zbGljay1zbGlkZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLnNsaWNrLWRvdHMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAtNDVweDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcclxuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcclxuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFN3aXBlciAzLjAuOFxyXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xyXG4gKiBcclxuICogaHR0cDovL3d3dy5pZGFuZ2Vyby51cy9zd2lwZXIvXHJcbiAqIFxyXG4gKiBDb3B5cmlnaHQgMjAxNSwgVmxhZGltaXIgS2hhcmxhbXBpZGlcclxuICogVGhlIGlEYW5nZXJvLnVzXHJcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvXHJcbiAqIFxyXG4gKiBMaWNlbnNlZCB1bmRlciBNSVRcclxuICogXHJcbiAqIFJlbGVhc2VkIG9uOiBKdW5lIDE0LCAyMDE1XHJcbiAqL1xyXG4uc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXHJcbiAgei1pbmRleDogMTtcclxufVxyXG4uc3dpcGVyLWNvbnRhaW5lci1uby1mbGV4Ym94IC5zd2lwZXItc2xpZGUge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcclxuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gIC1tb3otYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuLnN3aXBlci13cmFwcGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgZGlzcGxheTogLW1vei1ib3g7XHJcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XHJcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG4gIC1tb3otdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAtbXMtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XHJcbiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiAtbW96LXRyYW5zZm9ybTtcclxuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiAtby10cmFuc2Zvcm07XHJcbiAgLW1zLXRyYW5zaXRpb24tcHJvcGVydHk6IC1tcy10cmFuc2Zvcm07XHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxufVxyXG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXHJcbi5zd2lwZXItd3JhcHBlciB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcclxuICAtd2Via2l0LWJveC1saW5lczogbXVsdGlwbGU7XHJcbiAgLW1vei1ib3gtbGluZXM6IG11bHRpcGxlO1xyXG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XHJcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgLW1vei10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgLW1zLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcbi5zd2lwZXItc2xpZGUge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAtbW96LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcbiAgLW1zLXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xyXG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcclxuICBmbGV4LXNocmluazogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi8qIGExMXkgKi9cclxuLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHotaW5kZXg6IC0xMDAwO1xyXG59XHJcbi8qIElFMTAgV2luZG93cyBQaG9uZSA4IEZpeGVzICovXHJcbi5zd2lwZXItd3A4LWhvcml6b250YWwge1xyXG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xyXG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XHJcbn1cclxuLnN3aXBlci13cDgtdmVydGljYWwge1xyXG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi14O1xyXG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XHJcbn1cclxuLyogQXJyb3dzICovXHJcbi5zd2lwZXItYnV0dG9uLXByZXYsXHJcbi5zd2lwZXItYnV0dG9uLW5leHQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICB3aWR0aDogMjdweDtcclxuICBoZWlnaHQ6IDQ0cHg7XHJcbiAgbWFyZ2luLXRvcDogLTIycHg7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiAyN3B4IDQ0cHg7XHJcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxufVxyXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXHJcbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XHJcbiAgb3BhY2l0eTogMC4zNTtcclxuICBjdXJzb3I6IGF1dG87XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuLnN3aXBlci1idXR0b24tcHJldixcclxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xyXG4gIGxlZnQ6IDEwcHg7XHJcbiAgcmlnaHQ6IGF1dG87XHJcbn1cclxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWJsYWNrLFxyXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcclxufVxyXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUsXHJcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24td2hpdGUge1xyXG4gIG9wYWNpdHk6IDAuMjtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcclxufVxyXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxyXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyMzAwN2FmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7XHJcbiAgcmlnaHQ6IDEwcHg7XHJcbiAgbGVmdDogYXV0bztcclxufVxyXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2ssXHJcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2sge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xyXG59XHJcbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcclxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XHJcbiAgb3BhY2l0eTogMC40O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xyXG59XHJcbi8qIFBhZ2luYXRpb24gU3R5bGVzICovXHJcbi5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogMzAwbXM7XHJcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXM7XHJcbiAgdHJhbnNpdGlvbjogMzAwbXM7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB6LWluZGV4OiAxMDtcclxufVxyXG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcclxuICBvcGFjaXR5OiAwO1xyXG59XHJcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogMTVweDtcclxuICBoZWlnaHQ6IDE1cHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGJhY2tncm91bmQ6ICNGRkY7XHJcbiAgLy9vcGFjaXR5OiAwLjQ7XHJcbn1cclxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcclxuICAvL29wYWNpdHk6IDE7XHJcbiAgYmFja2dyb3VuZDogIzAwN2FmZjtcclxufVxyXG5cclxuLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcclxuICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uIHtcclxuICByaWdodDogMTBweDtcclxuICB0b3A6IDUwJTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC01MCUpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG4gIG1hcmdpbjogNXB4IDA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgYm90dG9tOiAxMHB4O1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcclxuICBtYXJnaW46IDAgM3B4O1xyXG59XHJcbi8qIDNEIENvbnRhaW5lciAqL1xyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCB7XHJcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTIwMHB4O1xyXG4gIC1tb3otcGVyc3BlY3RpdmU6IDEyMDBweDtcclxuICAtby1wZXJzcGVjdGl2ZTogMTIwMHB4O1xyXG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci13cmFwcGVyLFxyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLFxyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcclxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXHJcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3cge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAtbW96LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcbiAgLW1zLXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxufVxyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcclxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgei1pbmRleDogMTA7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xyXG4gIC8qIFNhZmFyaSA0KywgQ2hyb21lICovXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xyXG4gIC8qIEZpcmVmb3ggMy42LTE1ICovXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xyXG4gIC8qIE9wZXJhIDExLjEwLTEyLjAwICovXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqL1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgcmlnaHQgdG9wLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XHJcbiAgLyogU2FmYXJpIDQrLCBDaHJvbWUgKi9cclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xyXG4gIC8qIENocm9tZSAxMCssIFNhZmFyaSA1LjErLCBpT1MgNSsgKi9cclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xyXG4gIC8qIEZpcmVmb3ggMy42LTE1ICovXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgLyogT3BlcmEgMTEuMTAtMTIuMDAgKi9cclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqL1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XHJcbiAgLyogU2FmYXJpIDQrLCBDaHJvbWUgKi9cclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcclxuICAvKiBGaXJlZm94IDMuNi0xNSAqL1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgLyogT3BlcmEgMTEuMTAtMTIuMDAgKi9cclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xyXG4gIC8qIEZpcmVmb3ggMTYrLCBJRTEwLCBPcGVyYSAxMi41MCsgKi9cclxufVxyXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xyXG4gIC8qIFNhZmFyaSA0KywgQ2hyb21lICovXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xyXG4gIC8qIENocm9tZSAxMCssIFNhZmFyaSA1LjErLCBpT1MgNSsgKi9cclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XHJcbiAgLyogRmlyZWZveCAzLjYtMTUgKi9cclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xyXG4gIC8qIE9wZXJhIDExLjEwLTEyLjAwICovXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcclxuICAvKiBGaXJlZm94IDE2KywgSUUxMCwgT3BlcmEgMTIuNTArICovXHJcbn1cclxuLyogQ292ZXJmbG93ICovXHJcbi5zd2lwZXItY29udGFpbmVyLWNvdmVyZmxvdyAuc3dpcGVyLXdyYXBwZXIge1xyXG4gIC8qIFdpbmRvd3MgOCBJRSAxMCBmaXggKi9cclxuICAtbXMtcGVyc3BlY3RpdmU6IDEyMDBweDtcclxufVxyXG4vKiBGYWRlICovXHJcbi5zd2lwZXItY29udGFpbmVyLWZhZGUuc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgLW1vei10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgLW1zLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSB7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXHJcbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xyXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG59XHJcbi8qIEN1YmUgKi9cclxuLnN3aXBlci1jb250YWluZXItY3ViZSB7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1zbGlkZSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XHJcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XHJcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcclxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQsXHJcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxyXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUge1xyXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMDtcclxuICBib3R0b206IDBweDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgYmFja2dyb3VuZDogIzAwMDtcclxuICBvcGFjaXR5OiAwLjY7XHJcbiAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgZmlsdGVyOiBibHVyKDUwcHgpO1xyXG59XHJcbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCAuc3dpcGVyLWN1YmUtc2hhZG93IHtcclxuICB6LWluZGV4OiAwO1xyXG59XHJcbi8qIFNjcm9sbGJhciAqL1xyXG4uc3dpcGVyLXNjcm9sbGJhciB7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcclxuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMSU7XHJcbiAgYm90dG9tOiAzcHg7XHJcbiAgei1pbmRleDogNTA7XHJcbiAgaGVpZ2h0OiA1cHg7XHJcbiAgd2lkdGg6IDk4JTtcclxufVxyXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDNweDtcclxuICB0b3A6IDElO1xyXG4gIHotaW5kZXg6IDUwO1xyXG4gIHdpZHRoOiA1cHg7XHJcbiAgaGVpZ2h0OiA5OCU7XHJcbn1cclxuLnN3aXBlci1zY3JvbGxiYXItZHJhZyB7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxufVxyXG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XHJcbiAgY3Vyc29yOiBtb3ZlO1xyXG59XHJcbi8qIFByZWxvYWRlciAqL1xyXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcclxuICB3aWR0aDogNDJweDtcclxuICBoZWlnaHQ6IDQycHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB0b3A6IDUwJTtcclxuICBtYXJnaW4tbGVmdDogLTIxcHg7XHJcbiAgbWFyZ2luLXRvcDogLTIxcHg7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XHJcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XHJcbiAgLW1vei1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcclxuICBhbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcclxufVxyXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyOmFmdGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMTIwJTIwMTIwJyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB4bWxucyUzQXhsaW5rJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJyUzRSUzQ2RlZnMlM0UlM0NsaW5lJTIwaWQlM0QnbCclMjB4MSUzRCc2MCclMjB4MiUzRCc2MCclMjB5MSUzRCc3JyUyMHkyJTNEJzI3JyUyMHN0cm9rZSUzRCclMjM2YzZjNmMnJTIwc3Ryb2tlLXdpZHRoJTNEJzExJyUyMHN0cm9rZS1saW5lY2FwJTNEJ3JvdW5kJyUyRiUzRSUzQyUyRmRlZnMlM0UlM0NnJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoNjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDkwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxMjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE1MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjM3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTgwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNDYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyMTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy41NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI0MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjY2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjcwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNzUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy44NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMzMCUyMDYwJTJDNjApJyUyRiUzRSUzQyUyRmclM0UlM0MlMkZzdmclM0VcIik7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xyXG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG59XHJcbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGU6YWZ0ZXIge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICB9XHJcbn1cclxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICB9XHJcbn1cclxuIl19 */
