/*!
Theme Name: Stylo Doors
Theme URI: http://webiz.team
Author: Webiz Team
Author URI: https://webiz.team/
Description: Stylo Doors Theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: stylo_doors

*/
/**
 * Strips the unit from a given number-unit-combination and returns the number. 
 * @link: http://stackoverflow.com/a/12335841/1779999
 * @usage: parse-int(10px) => 10
 */
/**
 * Simply adds the em unit to a given number. This is used twice in the
 * function underneath, thus the need for a separate function.
 */
/**
 * Calculates em values for a given list of (px or em) values and a given em
 * base. Multiply base values for nested em structures (last @usage example).
 * @usage: em(10px, 1.125) => .55556em
 *         em(24px, .875em) => 1.71429em
 *         em(12px 0 7em rgba(0, 0, 0, .7), 1.75) => .42857em 0 4em rgba(0, 0, 0, 0.7)
 *         em(12px) + em(3em) => 3.75em
 *         em(23px, em(53px)) => .43396em
 *         em(24px, 1.5 * 1.125) => .88889em
 */
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
  overflow-x: hidden;
}

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

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

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

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

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

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

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

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

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

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

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

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

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

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

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

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

/*--------------------------------------------------------------
# Main Layout
--------------------------------------------------------------*/
html {
  background-color: #fff;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  min-width: 300px;
  overflow-x: hidden;
  overflow-y: scroll;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: smooth;
}

* {
  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.4;
  font-weight: 400;
  scroll-behavior: smooth;
}

.container, .alignfull > .kt-row-column-wrap, .alignfull > .kt-row-layout-inner > .kt-row-column-wrap, .wp-block-kadence-rowlayout.alignfull > .kt-row-layout-inner > .kt-row-column-wrap.kb-theme-content-width, .alignfull > .wp-block-group__inner-container, .alignfull > .wp-block-cover__inner-container {
  max-width: 100%;
  padding-left: 1.25em;
  padding-right: 1.25em;
  position: relative;
}
@media (min-width: 768px) {
  .container, .alignfull > .kt-row-column-wrap, .alignfull > .kt-row-layout-inner > .kt-row-column-wrap, .wp-block-kadence-rowlayout.alignfull > .kt-row-layout-inner > .kt-row-column-wrap.kb-theme-content-width, .alignfull > .wp-block-group__inner-container, .alignfull > .wp-block-cover__inner-container {
    max-width: 45.625rem !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 auto;
  }
}
@media (min-width: 1024px) {
  .container, .alignfull > .kt-row-column-wrap, .alignfull > .kt-row-layout-inner > .kt-row-column-wrap, .wp-block-kadence-rowlayout.alignfull > .kt-row-layout-inner > .kt-row-column-wrap.kb-theme-content-width, .alignfull > .wp-block-group__inner-container, .alignfull > .wp-block-cover__inner-container {
    max-width: 93% !important;
  }
}
@media (min-width: 1280px) {
  .container, .alignfull > .kt-row-column-wrap, .alignfull > .kt-row-layout-inner > .kt-row-column-wrap, .wp-block-kadence-rowlayout.alignfull > .kt-row-layout-inner > .kt-row-column-wrap.kb-theme-content-width, .alignfull > .wp-block-group__inner-container, .alignfull > .wp-block-cover__inner-container {
    max-width: 87.5rem !important;
  }
}

@media (min-width: 768px) {
  body .wp-block-columns {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
  }
}
@media (min-width: 768px) and (max-width: 781px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    -ms-flex-preferred-size: 0 !important;
        flex-basis: 0 !important;
  }
}
@media (min-width: 768px) {
  body .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  body .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*=flex-basis] {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
}
.archive-header img {
  max-height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
}

.site-footer {
  margin-top: 1rem;
  padding-bottom: 0;
  position: relative;
}
.site-footer .footer-cta-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #333537;
  border-radius: 1.25rem;
  width: 100%;
  color: #fff;
  padding: 2rem 1.25rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  gap: 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 93%;
}
@media (min-width: 768px) {
  .site-footer .footer-cta-wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 45.625rem;
  }
}
@media (min-width: 1024px) {
  .site-footer .footer-cta-wrapper {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    background: #333537;
    padding: 4rem 2.5rem;
    width: 100%;
    max-width: 93%;
    gap: 2rem;
  }
}
@media (min-width: 1280px) {
  .site-footer .footer-cta-wrapper {
    max-width: 72.5rem;
  }
}
.site-footer .footer-cta-wrapper.single {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (min-width: 1024px) {
  .site-footer .footer-cta-wrapper.single {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.site-footer .footer-cta-wrapper.single .left-part {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media (min-width: 768px) {
  .site-footer .footer-cta-wrapper.single .left-part {
    gap: 3.75rem;
  }
}
.site-footer .footer-cta-wrapper.single .wpcf7 {
  width: 100%;
}
@media (min-width: 768px) {
  .site-footer .footer-cta-wrapper .left-part {
    max-width: 30rem;
  }
}
.site-footer .footer-cta-wrapper .left-part .widget {
  margin: 0;
}
.site-footer .footer-cta-wrapper .left-part .widget:not(:last-of-type) {
  margin-bottom: 2.5rem;
}
@media (max-width: 1023px) {
  .site-footer .footer-cta-wrapper .left-part .widget:not(:last-of-type) {
    margin-bottom: 1.5rem;
  }
}
.site-footer .footer-cta-wrapper .left-part .widget h2 {
  line-height: 1;
  font-size: 3.4375rem;
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .site-footer .footer-cta-wrapper .left-part .widget h2 {
    font-size: 2.5rem;
  }
}
.site-footer .footer-cta-wrapper .left-part .widget p {
  margin-bottom: 0;
}
.site-footer .footer-cta-wrapper .left-part h4 {
  margin-bottom: 0;
  line-height: 1;
  font-weight: 500;
}
.site-footer .footer-cta-wrapper .right-part {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 767px) {
  .site-footer .footer-cta-wrapper .right-part {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: 100%;
  }
}
@media (max-width: 1023px) {
  .site-footer .footer-cta-wrapper .right-part img {
    max-width: 6.25rem;
  }
}
@media (min-width: 768px) {
  .site-footer .about-us .footer-cta-wrapper .left-part {
    max-width: 30rem;
  }
}
@media (min-width: 1024px) {
  .site-footer .about-us .footer-cta-wrapper .left-part {
    max-width: 42.5rem;
  }
}
.site-footer .footer-content {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(22%, rgba(255, 255, 255, 0)), color-stop(22%, #eee));
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 22%, #eee 22%);
}
@media (min-width: 768px) {
  .site-footer .footer-content {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(33%, rgba(255, 255, 255, 0)), color-stop(33%, #eee));
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 33%, #eee 33%);
  }
}
@media (min-width: 1024px) {
  .site-footer .footer-content {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(38%, rgba(255, 255, 255, 0)), color-stop(38%, #eee));
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 38%, #eee 38%);
  }
}
.site-footer .footer-content .mid_footer {
  background: #eee;
  padding: 3.75rem 0 1.25rem;
}
@media (min-width: 768px) {
  .site-footer .footer-content .mid_footer {
    padding: 2.5rem 0 1.25rem;
  }
}
@media (min-width: 1024px) {
  .site-footer .footer-content .mid_footer {
    padding: 4.375rem 0 1.25rem;
  }
}
.site-footer .footer-content .mid_footer .columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .site-footer .footer-content .mid_footer .columns {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}
@media (min-width: 768px) {
  .site-footer .footer-content .mid_footer .columns .column {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 20%;
            flex: 0 1 20%;
  }
}
.site-footer .footer-content .mid_footer .columns .column .site-branding {
  margin-bottom: 1rem;
}
.site-footer .footer-content .mid_footer .columns .column h2, .site-footer .footer-content .mid_footer .columns .column h3, .site-footer .footer-content .mid_footer .columns .column h4, .site-footer .footer-content .mid_footer .columns .column h5 {
  color: #FF764B;
  font-size: 1rem;
  text-transform: capitalize;
  margin-bottom: 1rem;
}
.site-footer .footer-content .mid_footer .columns .column p, .site-footer .footer-content .mid_footer .columns .column a {
  color: #333537;
  font-size: 1rem;
  word-break: break-word;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .site-footer .footer-content .mid_footer .columns .column p, .site-footer .footer-content .mid_footer .columns .column a {
    font-size: 0.875rem;
  }
}
.site-footer .footer-content .mid_footer .columns .column ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-footer .footer-content .mid_footer .columns .column ul li a {
  font-size: 1.125rem;
  font-weight: 600;
  padding: 0.3125rem 0;
  display: block;
}
@media (min-width: 1024px) {
  .site-footer .footer-content .mid_footer .columns .column ul li a {
    padding: 0.4375rem 0;
  }
}
.site-footer .footer-content .mid_footer .columns .column .wp-block-group {
  padding: 0.4375rem 0;
  gap: 0.5rem;
}
.site-footer .footer-content .mid_footer .columns .column .wp-block-group .wp-block-image {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 1.25rem;
          flex: 0 0 1.25rem;
}
.site-footer .footer-content .mid_footer .columns .column .widget {
  margin: 0;
}
.site-footer .footer-content .bottom_footer {
  background: #333537;
}
.site-footer .footer-content .bottom_footer .site-info {
  text-align: center;
}
@media (min-width: 768px) {
  .site-footer .footer-content .bottom_footer .site-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.site-footer .footer-content .bottom_footer .site-info p, .site-footer .footer-content .bottom_footer .site-info a {
  color: #fff;
  font-size: 0.75rem;
  padding: 0.625rem;
  margin: 0;
}
.site-footer .footer-content .bottom_footer .site-info .widget {
  margin: 0;
}
.site-footer .footer-content .bottom_footer .site-info ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.site-footer .footer-content .bottom_footer .site-info ul li p, .site-footer .footer-content .bottom_footer .site-info ul li a {
  display: block;
}

.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}
.widget select {
  max-width: 100%;
}

.blog-relative {
  position: relative;
}

.blog-single-header {
  position: relative;
  min-height: 26.875rem;
  text-align: center;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: linear-gradient(238.32deg, #BCF491 -31.64%, #9DEAA8 1.99%, #6ED586 30.55%, #2C4A85 90.2%);
}
.blog-single-header .bsh-meta .entry_meta {
  font-size: 1rem;
  color: #fff;
}

.category-badge-view {
  display: inline-block;
  padding: 0.375rem 0.75rem;
  background: #2C4A85;
  color: #fff;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 600;
  border-radius: 0.25rem 0;
}

.entry_meta {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.entry_meta .entry_meta_info {
  font-weight: 300;
}
.entry_meta .entry_meta_info .read_time {
  display: inline;
}

.bsh-social-share .social_share .kt_share_shortcode .kt-socialstyle-style_03 a {
  border: 0 none;
  color: #fff;
  margin-left: 0.6rem;
}
.bsh-social-share .social_share .kt_share_shortcode .kt-socialstyle-style_03 a:first-child {
  margin-left: 0;
}

article.post {
  margin: 0 auto;
}
article.post h1, article.post h2, article.post h3, article.post h4, article.post h5, article.post h6 {
  margin-top: 2rem;
}

.social_share_container {
  border-top: 1px solid #EBEBEB;
  padding: 1.875rem 0;
  margin: 1.875rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (min-width: 768px) {
  .social_share_container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.social_share_container .title_wrap p {
  margin-bottom: 0;
  font-weight: bold;
  font-size: 1rem;
}
.social_share_container .social_share_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 1rem;
}
.social_share_container .social_share_wrap a span {
  display: block;
  pointer-events: none;
}
.social_share_container .social_share_wrap a svg {
  fill: rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  height: 1.625rem;
  display: block;
}
.social_share_container .social_share_wrap a:hover svg {
  fill: rgba(0, 0, 0, 0.9);
}
.social_share_container .social_share_wrap a.facebook_share svg {
  height: 1.4375rem;
}
.social_share_container .social_share_wrap a.email_share svg {
  height: 1.75rem;
}

.author-box {
  background: #F6F9FF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.0625rem;
  padding: 1.5625rem;
}
.author-box .author-box-image {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  border-radius: 100%;
  max-width: 6.875rem;
}
.author-box .author-box-bio {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
}
.author-box .author-box-bio > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
}
.author-box .author-box-bio > div h5 {
  font-size: 1.25rem;
}
.author-box .author-box-bio > div p {
  font-size: 1rem;
  color: #0E60C3;
  font-weight: 300;
}
.author-box .author-box-description {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
}
.author-box .author-section-title {
  font-size: 0.75rem;
  text-transform: uppercase;
  color: rgba(26, 30, 34, 0.2509803922);
}

.author-socials {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}
.author-socials img {
  display: block;
}

.author-box-sidebar {
  position: relative;
  font-size: 0.8125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  padding-bottom: 1.25rem;
}
@media (min-width: 1024px) {
  .author-box-sidebar {
    position: absolute;
    top: 0;
    left: 0;
    max-width: calc((100% - 45rem - 5rem) / 2);
    padding-right: 1.25rem;
    border-right: 1px solid rgba(0, 0, 0, 0.07);
    border-bottom: none;
  }
}
.author-box-sidebar .rounded_image img {
  border-radius: 50%;
  max-width: 3.8125rem;
  max-height: 3.8125rem;
  width: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.author-box-sidebar h5 {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
}
.author-box-sidebar .position {
  color: #0E60C3;
  font-size: 0.875rem;
}
.author-box-sidebar .bio {
  font-size: 0.75rem;
}

.subscribe_box {
  background: linear-gradient(18deg, #BCF491 -31.64%, #9DEAA8 1.99%, #6ED586 30.55%, #2C4A85 90.2%);
  border: 1px solid #000000;
  -webkit-box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  border-radius: 0.25rem;
  padding: 2.8125rem 5rem 3.4375rem 5rem;
  color: #fff;
  margin: 3.75rem 0;
}
.subscribe_box h5 {
  font-size: 1.5rem;
  font-weight: bold;
}
.subscribe_box p {
  font-size: 1rem;
}

.subscribe_box_sidebar {
  display: none;
}
@media (min-width: 1024px) {
  .subscribe_box_sidebar {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: calc((100% - 45rem - 5rem) / 2);
  }
}

.single-blog-related-articles {
  padding: 3.75rem 0;
}
@media (min-width: 768px) {
  .single-blog-related-articles {
    padding: 4.375rem 0;
  }
}
.single-blog-related-articles .related-articles {
  list-style: none;
  padding: 0;
}
.single-blog-related-articles .related-posts-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (min-width: 768px) {
  .single-blog-related-articles .related-posts-wrapper {
    gap: 2.1875rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
@media (min-width: 1024px) {
  .single-blog-related-articles .related-posts-wrapper {
    gap: 2.8125rem;
  }
}
.single-blog-related-articles .related-posts-wrapper .related-article {
  border-radius: 0.25rem;
  overflow: hidden;
  -webkit-filter: drop-shadow(0px 10px 15px rgba(110, 213, 134, 0.1));
          filter: drop-shadow(0px 10px 15px rgba(110, 213, 134, 0.1));
}
.single-blog-related-articles .related-posts-wrapper .related-article .image-part {
  min-height: 11.5625rem;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 0.25rem;
  margin-bottom: 1.25rem;
}
.single-blog-related-articles .related-posts-wrapper .related-article .content-part {
  text-align: center;
}
.single-blog-related-articles .related-posts-wrapper .related-article .content-part .post-title {
  margin: 0 0 0.5625rem 0;
  font-size: 1.25rem;
}
@media (min-width: 1024px) {
  .single-blog-related-articles .related-posts-wrapper .related-article .content-part .post-title {
    margin: 0 0 0.75rem 0;
    font-size: 1.625rem;
  }
}
.single-blog-related-articles .related-posts-wrapper .related-article .content-part .entry_meta .entry_meta_info {
  font-size: 0.75rem;
  color: #2F3B3B;
  font-weight: 400;
}
.single-blog-related-articles .splide__track {
  padding-right: 10px !important;
}
@media (min-width: 768px) {
  .single-blog-related-articles .splide__track {
    padding-left: calc((100% - 45.625rem) / 2) !important;
  }
}
@media (min-width: 1024px) {
  .single-blog-related-articles .splide__track {
    padding-left: 3.5% !important;
  }
}
@media (min-width: 1280px) {
  .single-blog-related-articles .splide__track {
    padding-left: calc((100% - 87.5rem) / 2) !important;
  }
}
@media (max-width: 1280px) {
  .single-blog-related-articles .splide__track .splide__slide {
    max-height: 22.5rem;
  }
}

body,
button,
input,
select,
optgroup,
textarea {
  color: #333537;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.2;
}

a {
  text-decoration: none;
}
a:focus {
  outline: 0;
}
a:hover, a:active {
  outline: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  line-height: 1.4;
  margin-top: 0;
}
@media (max-width: 767px) {
  h1, h2, h3, h4, h5, h6 {
    word-break: break-word;
  }
}

h1 {
  font-size: 2.25rem;
}
@media (min-width: 768px) {
  h1 {
    font-size: 2.25rem;
  }
}
@media (min-width: 1280px) {
  h1 {
    font-size: 3.4375rem;
  }
}

h2 {
  font-size: 2rem;
}
@media (min-width: 768px) {
  h2 {
    font-size: 2rem;
  }
}
@media (min-width: 1280px) {
  h2 {
    font-size: 2.5rem;
  }
}

h3 {
  font-size: 1.75rem;
}
@media (min-width: 768px) {
  h3 {
    font-size: 1.75rem;
  }
}
@media (min-width: 1280px) {
  h3 {
    font-size: 2.125rem;
  }
}

h4 {
  font-size: 1.375rem;
}
@media (min-width: 768px) {
  h4 {
    font-size: 1.375rem;
  }
}
@media (min-width: 1280px) {
  h4 {
    font-size: 1.875rem;
  }
}

h5, h6 {
  font-size: 1rem;
}
@media (min-width: 768px) {
  h5, h6 {
    font-size: 1rem;
  }
}
@media (min-width: 1280px) {
  h5, h6 {
    font-size: 1rem;
  }
}

p {
  font-size: 1rem;
  margin-top: 0;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  p {
    font-size: 1rem;
  }
}
@media (min-width: 1280px) {
  p {
    font-size: 1rem;
  }
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

dfn, cite, em, i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 16.875px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code, kbd, tt, var {
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 16.875px;
  font-size: 0.9375rem;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

small {
  font-size: 0.625em;
}

.accent {
  font-size: 1em;
  font-weight: 700;
  text-decoration: none;
}
.accent.small {
  font-size: 0.75em;
  display: block;
  text-align: center;
  margin-top: 1em;
}

@font-face {
  font-family: "Avenir Next";
  src: url("../fonts/AvenirNextLTPro-Regular.woff2") format("woff2"), url("../fonts/AvenirNextLTPro-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Avenir Next";
  src: url("../fonts/AvenirNextLTPro-Bold.woff2") format("woff2"), url("../fonts/AvenirNextLTPro-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Avenir Next";
  src: url("../fonts/AvenirNextLTPro-It.woff2") format("woff2"), url("../fonts/AvenirNextLTPro-It.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-Regular.woff2") format("woff2"), url("../fonts/Montserrat/Montserrat-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-Medium.woff2") format("woff2"), url("../fonts/Montserrat/Montserrat-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-SemiBold.woff2") format("woff2"), url("../fonts/Montserrat/Montserrat-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-Bold.woff2") format("woff2"), url("../fonts/Montserrat/Montserrat-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

ul, ol {
  margin: 0 0 1rem 0;
  padding: 0 0 0 1rem;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1.5em 1.5em;
}

.pagination_wrap {
  padding-top: 1.25rem;
}
.pagination_wrap ul {
  list-style: none outside none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pagination_wrap ul li.active {
  background: #e6e6e6;
}
.pagination_wrap ul li a {
  border: 1px solid #e6e6e6;
  display: inline-block;
  padding: 7px 9px 5px;
  line-height: 1;
  margin: 0 4px;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

.table-wrapper {
  overflow-x: auto;
  margin: 0 0 20px;
  overflow-y: hidden;
}

/*--------------------------------------------------------------
# Gutenberg
--------------------------------------------------------------*/
.has-white-color {
  color: #FFFFFF;
}

.has-white-background-color {
  background-color: #FFFFFF;
}

.has-black-color {
  color: #000000;
}

.has-black-background-color {
  background-color: #000000;
}

.has-primary-color-color {
  color: #333537;
}

.has-primary-color-background-color {
  background-color: #333537;
}

.has-primary-color-light-color {
  color: #737373;
}

.has-primary-color-light-background-color {
  background-color: #737373;
}

.has-secondary-color-color {
  color: #F0F9FF;
}

.has-secondary-color-background-color {
  background-color: #F0F9FF;
}

/**
 * Font sizes.
 *
 * Two sets, once for mobile and one for desktop. Feel free to add or remove if needed
 */
.has-xs-font-size {
  font-size: 0.625rem;
}

.has-s-font-size {
  font-size: 0.875rem;
}

.has-d-font-size {
  font-size: 1rem;
}

.has-m-font-size {
  font-size: 1rem;
}

.has-l-font-size {
  font-size: 1.375rem;
}

.has-xl-font-size {
  font-size: 1.75rem;
}

.has-xxl-font-size {
  font-size: 2rem;
}

.has-xxxl-font-size {
  font-size: 2.25rem;
}

@media (min-width: 768px) {
  .has-xs-font-size {
    font-size: 0.625rem;
  }
  .has-s-font-size {
    font-size: 0.875rem;
  }
  .has-d-font-size {
    font-size: 1rem;
  }
  .has-m-font-size {
    font-size: 1rem;
  }
  .has-l-font-size {
    font-size: 1.375rem;
  }
  .has-xl-font-size {
    font-size: 1.75rem;
  }
  .has-xxl-font-size {
    font-size: 2rem;
  }
  .has-xxxl-font-size {
    font-size: 2.25rem;
  }
}
@media (min-width: 1280px) {
  .has-xs-font-size {
    font-size: 0.75rem;
  }
  .has-s-font-size {
    font-size: 0.875rem;
  }
  .has-d-font-size {
    font-size: 1rem;
  }
  .has-m-font-size {
    font-size: 1.125rem;
  }
  .has-l-font-size {
    font-size: 1.875rem;
  }
  .has-xl-font-size {
    font-size: 2.125rem;
  }
  .has-xxl-font-size {
    font-size: 2.5rem;
  }
  .has-xxxl-font-size {
    font-size: 3.4375rem;
  }
}
.wp-block-group.is-style-s-section-padding {
  padding: 1.25rem 0;
}
@media (min-width: 768px) {
  .wp-block-group.is-style-s-section-padding {
    padding: 2.5rem 0;
  }
}
@media (min-width: 1024px) {
  .wp-block-group.is-style-s-section-padding {
    padding: 3.75rem 0;
  }
}

.wp-block-group.is-style-m-section-padding {
  padding: 2.5rem 0;
}
@media (min-width: 768px) {
  .wp-block-group.is-style-m-section-padding {
    padding: 3.75rem 0;
  }
}
@media (min-width: 1024px) {
  .wp-block-group.is-style-m-section-padding {
    padding: 5rem 0;
  }
}

.wp-block-group.is-style-l-section-padding {
  padding: 3.75rem 0;
}
@media (min-width: 768px) {
  .wp-block-group.is-style-l-section-padding {
    padding: 5rem 0;
  }
}
@media (min-width: 1024px) {
  .wp-block-group.is-style-l-section-padding {
    padding: 6.25rem 0;
  }
}

.wp-block-image.is-style-news-single {
  padding: 2rem 0;
  border-radius: 0.625rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .wp-block-image.is-style-news-single {
    padding: 3rem 0;
  }
}
@media (min-width: 1024px) {
  .wp-block-image.is-style-news-single {
    padding: 4rem 0;
  }
}
.wp-block-image.is-style-news-single img {
  display: block;
  width: 100%;
}

.vertical-overlay {
  position: relative;
}
.vertical-overlay::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(28%, rgba(255, 255, 255, 0)), to(#737373));
  background: linear-gradient(0, rgba(255, 255, 255, 0) 28%, #737373 100%);
  pointer-events: none;
}

.vertical-overlay-home {
  position: relative;
}
.vertical-overlay-home::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(68, 65, 65, 0.85)), color-stop(50%, rgba(255, 255, 255, 0)));
  background: linear-gradient(180deg, rgba(68, 65, 65, 0.85) 0%, rgba(255, 255, 255, 0) 50%);
  pointer-events: none;
}

.vertical-overlay-v2 {
  position: relative;
}
.vertical-overlay-v2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(4.7%, #333537), color-stop(44.63%, rgba(51, 53, 55, 0)));
  background: linear-gradient(180deg, #333537 4.7%, rgba(51, 53, 55, 0) 44.63%);
  pointer-events: none;
  opacity: 1;
  z-index: 1;
}

.vertical-overlay-v3 {
  position: relative;
}
.vertical-overlay-v3::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(3.4%, rgba(0, 0, 0, 0)), color-stop(131.78%, #000000));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 3.4%, #000000 131.78%);
  pointer-events: none;
}

.vertical-overlay-v4 {
  position: relative;
}
.vertical-overlay-v4::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(3.4%, rgba(0, 0, 0, 0)), color-stop(135%, #000000));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 3.4%, #000000 135%);
  pointer-events: none;
}

.frosted-glass {
  backdrop-filter: blur(75px);
  -webkit-backdrop-filter: blur(75px);
  background-color: rgba(51, 53, 55, 0.1);
  border-radius: 0.625rem;
  padding: 1.25rem 1.5rem;
}

.frosted-glass-white {
  backdrop-filter: blur(75px);
  -webkit-backdrop-filter: blur(75px);
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 0.625rem;
  padding: 1.25rem 1.5rem;
}

.indent-block-top {
  margin-top: -45px;
}
@media (max-width: 1023px) {
  .indent-block-top {
    margin-top: -120px;
  }
}

.indent-block-top-x2 {
  margin-top: -160px;
}
@media (min-width: 400px) {
  .indent-block-top-x2 {
    margin-top: -140px;
  }
}
@media (min-width: 768px) {
  .indent-block-top-x2 {
    margin-top: -120px;
  }
}
@media (min-width: 1024px) {
  .indent-block-top-x2 {
    margin-top: -180px;
  }
}

.indent-block-bottom {
  margin-bottom: -60px;
}
.secondary_width {
  max-width: 72.5rem !important;
  width: 100%;
  margin: 0 auto !important;
}

.half-width {
  gap: 1.5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 2;
}
@media (min-width: 1024px) {
  .half-width {
    gap: 2.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.half-width > * {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.stick-bottom {
  position: absolute;
  bottom: 2rem;
  width: calc(100% - 40px);
  margin: 0 auto;
}
@media (min-width: 768px) {
  .stick-bottom {
    bottom: 5rem;
  }
}

.obj-fit-cover {
  -o-object-fit: cover;
     object-fit: cover;
}
.obj-fit-cover img {
  -o-object-fit: cover;
     object-fit: cover;
}

.min-height-600 {
  min-height: 31.25rem;
}
@media (min-width: 768px) {
  .min-height-600 {
    min-height: 37.5rem;
  }
}
.min-height-600 img {
  height: 100%;
  width: auto;
  min-height: 31.25rem;
}
@media (min-width: 768px) {
  .min-height-600 img {
    min-height: 37.5rem;
  }
}

.max-height-100vh {
  max-height: 100vh;
}
.max-height-100vh img {
  max-height: 100vh;
}

.wp-block-cover.alignfull {
  padding: 0;
}
.wp-block-cover.alignfull .wp-block-cover__inner-container {
  width: 100%;
}

.columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -0.9375rem;
  margin-right: -0.9375rem;
}
.columns .column {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  padding-bottom: 0.9375rem;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
}
@media (min-width: 768px) {
  .columns .column {
    padding-top: 0.9375rem;
  }
}
@media (min-width: 768px) {
  .columns.grid_2 .column {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
  }
}
@media (min-width: 768px) {
  .columns.grid_3 .column {
    width: 33.333%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
  }
}
@media (min-width: 768px) {
  .columns.grid_4 .column {
    width: 50%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
  }
}
@media (min-width: 1024px) {
  .columns.grid_4 .column {
    width: 25%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
  }
}
@media (min-width: 768px) {
  .columns.grid_5 .column {
    width: 20%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
            flex: 0 0 20%;
  }
}
@media (min-width: 1024px) {
  .columns.grid_5 .column {
    width: 20%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
            flex: 0 0 20%;
  }
}

.clear-margin {
  margin: 0;
}

.wp-block-rank-math-toc-block {
  background: #F6F9FF;
  padding: 1.5625rem 2.1875rem;
  position: relative;
}
@media (min-width: 1024px) {
  .wp-block-rank-math-toc-block {
    padding: 2.5rem 3.4375rem;
  }
}
.wp-block-rank-math-toc-block:before {
  content: "";
  position: absolute;
  left: -100%;
  top: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(255, 255, 255)), color-stop(85%, rgb(255, 255, 255)), color-stop(90%, rgba(255, 255, 255, 0.8996192227)), color-stop(95%, rgba(255, 255, 255, 0.7959777661)), to(rgba(255, 255, 255, 0.2021402311)));
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 85%, rgba(255, 255, 255, 0.8996192227) 90%, rgba(255, 255, 255, 0.7959777661) 95%, rgba(255, 255, 255, 0.2021402311) 100%);
  z-index: 2;
  height: 100%;
  width: 100%;
}
.wp-block-rank-math-toc-block h2 {
  margin: 0 0 2rem 0;
  font-size: 1.625rem;
}
@media (min-width: 1024px) {
  .wp-block-rank-math-toc-block h2 {
    margin: 0 0 2.8125rem 0;
    font-size: 2rem;
  }
}
.wp-block-rank-math-toc-block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.875rem;
  list-style: none;
}
.wp-block-rank-math-toc-block ul li {
  counter-increment: step-counter;
  position: relative;
  font-size: 1.25rem;
  font-weight: 300;
  color: #1A1E22;
}
.wp-block-rank-math-toc-block ul li:before {
  content: counter(step-counter) ".";
  font-size: 1.25rem;
  position: absolute;
  right: 100%;
  top: 0;
}
.wp-block-rank-math-toc-block ul li a {
  color: #1A1E22;
  padding-left: 0.3125rem;
  display: block;
}

.table-of-contents-sidebar {
  display: none;
}
@media (min-width: 1024px) {
  .table-of-contents-sidebar {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    max-width: calc((100% - 45rem - 5rem) / 2);
    opacity: 0;
  }
  .table-of-contents-sidebar h2 {
    text-transform: uppercase;
    font-size: 1rem;
  }
  .table-of-contents-sidebar .content-element-row:not(:last-of-type) {
    margin-bottom: 0.625rem;
  }
  .table-of-contents-sidebar .content-element-row.active .content-heading span {
    color: #fff;
  }
  .table-of-contents-sidebar .content-element-row.active .content-heading span:before {
    background: blue;
  }
  .table-of-contents-sidebar .content-element-row.active .content-heading a {
    text-decoration: underline;
  }
  .table-of-contents-sidebar .content-element-row .content-heading {
    font-size: 0.875rem;
    color: #1A1E22;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.25rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .table-of-contents-sidebar .content-element-row .content-heading span {
    position: relative;
    max-width: 1.25rem;
    text-align: center;
    font-size: 0.75rem;
    line-height: 1.3125rem;
  }
  .table-of-contents-sidebar .content-element-row .content-heading span:before {
    content: "";
    background: red;
    width: 1.3125rem;
    height: 1.3125rem;
    position: absolute;
    border-radius: 50%;
    z-index: -1;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .table-of-contents-sidebar .content-element-row .content-heading a {
    color: #1A1E22;
  }
}

.highlight-icons {
  max-width: 72.5rem !important;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.highlight-icons:before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 0.625rem;
  padding: 1px;
  background: linear-gradient(91.44deg, #FFFFFF -2.13%, rgba(255, 255, 255, 0) 97.02%);
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
@media (max-width: 1023px) {
  .highlight-icons {
    padding: 2.5rem;
    gap: 2rem;
  }
}
.highlight-icons p {
  font-size: 1.5rem;
  color: #333537;
  font-weight: 500;
}
@media (max-width: 1023px) {
  .highlight-icons p {
    font-size: 1.125rem;
  }
}
.highlight-icons .wp-block-group__inner-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.875rem;
}
.highlight-icons .wp-block-group {
  -webkit-transition: scale 0.6s ease-in-out;
  transition: scale 0.6s ease-in-out;
  z-index: 2;
  position: relative;
}
.highlight-icons .wp-block-group:hover {
  scale: 1.15;
}

.half-size-part-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
}
@media (min-width: 1024px) {
  .half-size-part-wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.half-size-part-wrapper .left-part {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2.25rem;
}
@media (min-width: 1024px) {
  .half-size-part-wrapper .left-part {
    width: 50%;
  }
}
.half-size-part-wrapper .left-part .section-tag {
  border: 1px solid #999FBF;
  border-radius: 3.75rem;
  color: #999FBF;
  font-weight: 500;
  padding: 0.375rem 2rem;
}
.half-size-part-wrapper .left-part .section-title {
  line-height: 1;
  font-size: 3.4375rem;
  letter-spacing: -2px;
}
@media (max-width: 1023px) {
  .half-size-part-wrapper .left-part .section-title {
    letter-spacing: initial;
    font-size: 2rem;
    font-weight: 500;
  }
}
.half-size-part-wrapper .right-part {
  width: 100%;
}
@media (min-width: 1024px) {
  .half-size-part-wrapper .right-part {
    width: 50%;
  }
}

.sd-product-catalog {
  position: relative;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 2.5rem;
  min-height: 32.5rem;
}
@media (min-width: 1024px) {
  .sd-product-catalog {
    gap: 3.75rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
.sd-product-catalog:before {
  content: "";
  background: #333537;
  width: 200vw;
  height: 100%;
  position: absolute;
  right: -50%;
  top: 0;
  border-radius: 1.25rem;
}
@media (min-width: 1024px) {
  .sd-product-catalog:before {
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    height: calc(100% - 100px);
  }
}
.sd-product-catalog .left-part {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.5rem;
  padding: 2rem 0;
}
@media (max-width: 1023px) {
  .sd-product-catalog .left-part {
    background: none;
  }
}
@media (min-width: 1024px) {
  .sd-product-catalog .left-part {
    gap: 5rem;
    padding: 3.125rem;
  }
}
.sd-product-catalog .left-part .section-title {
  color: #fff;
  font-weight: 500;
  line-height: 1;
}
.sd-product-catalog .left-part .brochures-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.25rem;
}
.sd-product-catalog .left-part .brochures-list a {
  border: 1px solid #fff;
  border-radius: 0.5rem;
  padding: 0.625rem;
  color: #fff;
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
}
.sd-product-catalog .left-part .brochures-list a .download-icon {
  padding: 0.4375rem;
  border: 1px solid #fff;
  border-radius: 50%;
  min-width: 2rem;
  width: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  aspect-ratio: 1/1;
}
.sd-product-catalog .left-part .brochures-list a .download-icon img {
  display: block;
  aspect-ratio: 1/1;
}
.sd-product-catalog .left-part .brochures-list a span {
  width: 100%;
}
.sd-product-catalog .right-part {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.sd-product-catalog .right-part .flipbook {
  height: 100%;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.m-t-100 {
  margin-top: 6.25rem;
}

.cards-wrapper {
  padding: 3.75rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.25rem;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .cards-wrapper {
    gap: 2.5rem;
    padding: 7.5rem 0;
  }
}

.card {
  position: relative;
  border-radius: 0.625rem;
  overflow: hidden;
  -webkit-box-shadow: 0px 0px 14px 0px rgba(0, 0, 0, 0.1490196078);
          box-shadow: 0px 0px 14px 0px rgba(0, 0, 0, 0.1490196078);
  max-height: 32.5rem;
  width: 100%;
  position: relative;
  aspect-ratio: 33/23;
}
.card::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(4.7%, #333537), color-stop(44.63%, rgba(51, 53, 55, 0)));
  background: linear-gradient(360deg, #333537 4.7%, rgba(51, 53, 55, 0) 44.63%);
  pointer-events: none;
  -webkit-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
  opacity: 1;
}
@media (min-width: 1024px) {
  .card::after {
    opacity: 0;
  }
}
@media (min-width: 568px) {
  .card {
    aspect-ratio: 35/20;
  }
}
@media (min-width: 768px) {
  .card {
    aspect-ratio: initial;
    min-height: 18.75rem;
  }
}
@media (min-width: 768px) {
  .card.half {
    width: calc(50% - 10px);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media (min-width: 1024px) {
  .card.half {
    width: calc(50% - 20px);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media (min-width: 768px) {
  .card.big {
    width: calc(66.66% - 6px);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media (min-width: 1024px) {
  .card.big {
    width: calc(66.66% - 13px);
  }
}
.card.full {
  width: 100%;
}
@media (min-width: 768px) {
  .card.small {
    width: calc(33.33% - 14px);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media (min-width: 1024px) {
  .card.small {
    width: calc(33.33% - 27px);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media (min-width: 1024px) {
  .card:hover:not(.no-hover):after {
    opacity: 1;
  }
  .card:hover:not(.no-hover) img {
    scale: 1.2;
  }
  .card:hover:not(.no-hover) .card-hover {
    -webkit-transform: translateY(-40px);
            transform: translateY(-40px);
  }
}
.card .card-content {
  position: absolute;
  top: 1.25rem;
  left: 0;
  color: white;
  width: 100%;
  text-align: left;
  z-index: 2;
}
@media (min-width: 768px) {
  .card .card-content {
    top: 2.8125rem;
  }
}
.card .card-content .category-title {
  margin: 0;
  padding: 0 1.25rem;
  font-weight: 600;
  font-size: 1.5rem;
  word-wrap: break-word;
}
@media (min-width: 768px) {
  .card .card-content .category-title {
    font-size: 1.125rem;
  }
}
@media (min-width: 1280px) {
  .card .card-content .category-title {
    font-size: 2.125rem;
  }
}
.card img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: scale 0.6s ease-in-out;
  transition: scale 0.6s ease-in-out;
}

.card-hover {
  position: absolute;
  bottom: 1.25rem;
  left: 0;
  color: red;
  width: 100%;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transition: -webkit-transform 0.6s ease-in-out;
  transition: -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
  z-index: 2;
}
@media (min-width: 1024px) {
  .card-hover {
    bottom: 0;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    gap: 0.25rem;
  }
}
.card-hover a {
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.1875rem 1.25rem;
}
@media (min-width: 768px) {
  .card-hover a {
    font-size: 1.125rem;
    padding: 0.375rem 1.25rem;
  }
}
@media (min-width: 1024px) {
  .card-hover a {
    font-size: 1.5rem;
    padding: 0.375rem 2.5rem;
  }
}

.df-bg {
  background: none !important;
}

.news-header {
  padding: 1.5rem;
}
@media (min-width: 1024px) {
  .news-header {
    padding: 5rem 6.25rem;
  }
}

.pill {
  padding: 0.375rem 0.625rem;
  border: 1px solid #333537;
  font-weight: 600;
  border-radius: 2.5rem;
  color: #333537;
}

.news-wrapper {
  padding: 2.5rem 0 6.25rem 0;
}
@media (min-width: 1024px) {
  .news-wrapper {
    padding: 4rem 0 8.75rem 0;
  }
}
.news-wrapper .facetwp-facet {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.news-wrapper .facetwp-facet .facetwp-radio {
  background: none;
  margin-bottom: 0;
  padding: 0.5rem 0.875rem;
  border: 1px solid #333537;
  font-weight: 600;
  border-radius: 2.5rem;
  color: #333537;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.875rem;
}
@media (min-width: 1024px) {
  .news-wrapper .facetwp-facet .facetwp-radio {
    font-size: 1rem;
  }
}
.news-wrapper .facetwp-facet .facetwp-radio.checked {
  background: #333537;
  color: #fff;
}
.news-wrapper .facetwp-facet .facetwp-radio .facetwp-display-value {
  padding: 0;
}
.news-wrapper .facetwp-facet .facetwp-radio .facetwp-counter {
  display: none;
}
.news-wrapper .posts-holder {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .news-wrapper .posts-holder {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .news-wrapper .posts-holder {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
  }
}
.news-wrapper .posts-holder .post-card {
  border-radius: 0.625rem;
  -webkit-box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.1490196078);
          box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.1490196078);
  visibility: hidden;
}
.news-wrapper .posts-holder .post-card img {
  aspect-ratio: 1/0.7;
  display: block;
  border-radius: 0.625rem;
}
.news-wrapper .posts-holder .post-card .post-info {
  padding: 1.25rem;
}
.news-wrapper .posts-holder .post-card .post-info .meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 600;
  margin-bottom: 1.25rem;
}
@media (min-width: 1024px) {
  .news-wrapper .posts-holder .post-card .post-info .meta {
    margin-bottom: 2.5rem;
  }
}
.news-wrapper .posts-holder .post-card .post-info .meta .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
}
.news-wrapper .posts-holder .post-card .post-info .post-title {
  font-size: 1.375rem;
  color: #333537;
  --max-lines: 2;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--max-lines);
}
@media (min-width: 1024px) {
  .news-wrapper .posts-holder .post-card .post-info .post-title {
    font-size: 1.6875rem;
  }
}

.single-blog.news {
  margin-top: 3.125rem;
}
@media (min-width: 768px) {
  .single-blog.news {
    margin-top: 3.75rem;
  }
}
.single-blog.news .meta {
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (min-width: 768px) {
  .single-blog.news .meta {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 2rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.single-blog.news .meta .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.single-blog.news p {
  font-size: 1.125rem;
}

.highlight-text p {
  margin-bottom: 0;
}

.splide__arrows .splide__arrow {
  border-radius: 50% !important;
  height: 3rem !important;
  width: 3rem !important;
  padding: initial !important;
  min-width: unset !important;
  background: #333537;
}
.splide__arrows .splide__arrow svg path {
  fill: #fff;
}
.splide__arrows .splide__arrow.splide__arrow--prev {
  left: 3rem;
}
.splide__arrows .splide__arrow.splide__arrow--next {
  right: 3rem;
}

.pulse {
  opacity: 0; /* Hide the element but reserve space */
  -webkit-transform: scale(1.2);
          transform: scale(1.2); /* Set the initial transform to match the animation start */
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out; /* Optional: fade in effect on initial load */
  will-change: opacity, transform; /* Inform the browser about upcoming changes */
}

@media (min-width: 768px) {
  .header-container {
    -webkit-transform: translateY(-200px);
            transform: translateY(-200px); /* Matches the initial state in the GSAP animation */
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; /* Optional: smooth initial load */
    will-change: transform; /* Prepare the browser for the animation */
  }
}

.text-content {
  opacity: 0; /* Start with opacity 0 but reserve space */
  -webkit-transform: translateY(100px);
          transform: translateY(100px); /* Match the initial transform in the animation */
  will-change: opacity, transform; /* Optimize for the upcoming changes */
}

.slide-from-bottom {
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  opacity: 0.4;
  will-change: opacity, transform;
}

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

.hidden-h1tag {
  position: absolute;
  left: -9999px;
  top: -9999px;
  height: 0;
  width: 0;
  overflow: hidden;
  visibility: hidden;
}

button:not(.block-editor-button-block-appender):not(.components-button):not(.splide__pagination__page),
.button,
input[type=button],
input[type=reset],
input[type=submit],
.wp-block-button__link {
  border: 0 none;
  border-radius: 0.625rem;
  color: #333537;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.8125rem 2.1875rem;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  min-width: 8.75rem;
}
button:not(.block-editor-button-block-appender):not(.components-button):not(.splide__pagination__page):disabled, button:not(.block-editor-button-block-appender):not(.components-button):not(.splide__pagination__page)[disabled],
button:not(.block-editor-button-block-appender):not(.components-button):not(.splide__pagination__page) .disabled,
.button:disabled,
.button[disabled],
.button .disabled,
input[type=button]:disabled,
input[type=button][disabled],
input[type=button] .disabled,
input[type=reset]:disabled,
input[type=reset][disabled],
input[type=reset] .disabled,
input[type=submit]:disabled,
input[type=submit][disabled],
input[type=submit] .disabled,
.wp-block-button__link:disabled,
.wp-block-button__link[disabled],
.wp-block-button__link .disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.default-button {
  display: block;
  border-radius: 0.625rem;
  background: #333537;
  padding: 0.875rem;
  font-weight: 600;
  color: #EBF3FF;
}

.dark-button {
  background-color: #333;
  color: #fff;
  border: none;
  text-align: center;
  text-decoration: none;
  text-wrap: nowrap;
  cursor: pointer;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
.dark-button:hover, .dark-button:focus {
  background-color: #1a1a1a;
  outline: none;
}

.wpcf7-submit {
  font-size: 1.125rem !important;
  background-color: #737373;
  border-radius: 0.25rem;
  color: #fff !important;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea,
select {
  color: #666;
  border: 1px solid #ccc;
  padding: 0.8125rem 1rem;
  border-radius: 0.25rem;
  -webkit-transition: 300ms all;
  transition: 300ms all;
  max-width: 100%;
  font-weight: 500;
  width: 100%;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus,
select:focus {
  color: #111;
  -webkit-transition: 300ms all;
  transition: 300ms all;
  outline: none;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem; /* Adjust the gap as needed */
}
form .form-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem; /* Adjust the gap between the fields as needed */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (min-width: 768px) {
  form .form-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
form label {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
form textarea {
  width: 100%;
  height: 100px; /* Adjust the height as needed */
}
form button {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
form p {
  margin-bottom: 0;
}

/*--------------------------------------------------------------
# Header and Menu
--------------------------------------------------------------*/
@-webkit-keyframes marquee {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - var(--gap)));
            transform: translateX(calc(-100% - var(--gap)));
  }
}
@keyframes marquee {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - var(--gap)));
            transform: translateX(calc(-100% - var(--gap)));
  }
}
body.admin-bar .site-header {
  top: 90px;
}
@media (min-width: 785px) {
  body.admin-bar .site-header {
    top: 77px;
  }
}
body.admin-bar .site-header.not-on-top {
  top: 0;
}
@media (min-width: 785px) {
  body.admin-bar .site-header.not-on-top {
    top: 32px;
  }
}
@media (max-width: 1023px) {
  body.admin-bar .header-wrap.menu_open .menu-wrap {
    margin-top: 46px;
  }
}

body.separate_header {
  padding-top: 4.375rem;
}
@media (min-width: 1024px) {
  body.separate_header {
    padding-top: "auto";
  }
}

.top-bar {
  height: 0;
  opacity: 0;
  width: 100%;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(43%, #ECF3FB), to(#DCE8F7)) 0% 0% no-repeat padding-box;
  background: transparent linear-gradient(180deg, #FFFFFF 0%, #ECF3FB 43%, #DCE8F7 100%) 0% 0% no-repeat padding-box;
  text-align: center;
  line-height: 3.125rem;
  overflow: hidden;
  padding: 0 10px;
}
.top-bar span, .top-bar p, .top-bar a {
  color: #333333;
}
.top-bar > a {
  line-height: 3.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.top-bar p {
  margin: 0;
  padding: 0;
  display: inline-block;
  font-weight: 500;
  max-width: calc(100% - 100px);
  line-height: 3.125rem;
  height: 3.125rem;
  overflow: hidden;
  position: relative;
}
.top-bar p .st2 {
  display: none;
}
@media (max-width: 767px) {
  .top-bar p {
    width: calc(100% - 100px);
  }
  .top-bar p .marquee {
    --gap: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    white-space: nowrap;
    width: auto;
    overflow: hidden;
    position: absolute;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    min-width: 100%;
    gap: var(--gap);
  }
  .top-bar p .marquee .st {
    height: 3.125rem;
    width: auto;
    display: block;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    white-space: nowrap;
    -webkit-animation: marquee 15s linear infinite;
            animation: marquee 15s linear infinite;
  }
  .top-bar p .marquee .st.st2 {
    display: block;
  }
}
.top-bar .tb-btn {
  font-weight: bold;
  margin-left: 8px;
  line-height: 3.125rem;
  height: 3.125rem;
  display: inline-block;
}

.enabled_top_bar {
  padding-top: 3.125rem;
}
.enabled_top_bar.hiden_header_and_footer {
  padding-top: 0;
}
.enabled_top_bar .top-bar {
  height: 3.125rem !important;
  z-index: 101;
  opacity: 1;
}
.enabled_top_bar .site-header.header-hide {
  top: -9.5rem;
}
@media (max-width: 767px) {
  .enabled_top_bar .menu-wrap .menu-scroll-container {
    top: 3.125rem;
  }
}

.site-header {
  position: absolute;
  width: 100%;
  z-index: 100;
  top: 2.8125rem;
  -webkit-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}
.site-header.not-on-top, .site-header.menu_open_masthead, .site-header.desktop_menu_open_masthead {
  position: fixed;
}
.site-header.header-hide {
  top: -auto;
}
.site-header:hover.header-hide {
  top: 0;
}
@media (max-width: 1023px) {
  .site-header .is-stuck, .site-header .menu_open, .site-header .separate_header_on_wrap {
    background-color: #fff;
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1019607843);
            box-shadow: 0 0 5px rgba(0, 0, 0, 0.1019607843);
  }
  .site-header .is-stuck .logo-white, .site-header .menu_open .logo-white, .site-header .separate_header_on_wrap .logo-white {
    opacity: 0 !important;
  }
  .site-header .is-stuck .logo-blue, .site-header .menu_open .logo-blue, .site-header .separate_header_on_wrap .logo-blue {
    opacity: 1 !important;
  }
}
.site-header .header-wrap {
  -webkit-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
  border-bottom: 1px solid transparent;
}

.site-header:not(.not-on-top) .header-wrap {
  -webkit-transition-delay: 130ms;
          transition-delay: 130ms;
}
.site-header:not(.not-on-top) .header-wrap .menu-wrap {
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.site-header:not(.not-on-top) .header-wrap .logo-white, .site-header:not(.not-on-top) .header-wrap .logo-blue {
  -webkit-transition-delay: 80ms;
          transition-delay: 80ms;
}
.site-header:not(.not-on-top) .header-wrap.menu_open, .site-header:not(.not-on-top) .header-wrap.desktop_menu_open {
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.site-header:not(.not-on-top) .header-wrap.menu_open .menu-wrap, .site-header:not(.not-on-top) .header-wrap.desktop_menu_open .menu-wrap {
  -webkit-transition-delay: 80ms;
          transition-delay: 80ms;
}
.site-header:not(.not-on-top) .header-wrap.menu_open .logo-white, .site-header:not(.not-on-top) .header-wrap.menu_open .logo-blue, .site-header:not(.not-on-top) .header-wrap.desktop_menu_open .logo-white, .site-header:not(.not-on-top) .header-wrap.desktop_menu_open .logo-blue {
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}

@media (max-width: 1023px) {
  .header-wrap.menu_open .menu-wrap {
    top: 4.375rem;
    background: #fff;
    bottom: 0;
    opacity: 1;
  }
  .header-wrap.menu_open .hamburger span:nth-child(1) {
    top: 0.375rem;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .header-wrap.menu_open .hamburger span:nth-child(2) {
    opacity: 0;
    right: -15px;
  }
  .header-wrap.menu_open .hamburger span:nth-child(3) {
    top: 0.375rem;
    -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
  }
  .top-bar {
    display: none;
  }
  .header-container {
    padding: 0.75rem 0.9375rem;
    height: 4.375rem;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    background: -webkit-gradient(linear, left top, left bottom, from(#000), to(rgba(0, 0, 0, 0.2588235294)));
    background: linear-gradient(#000, rgba(0, 0, 0, 0.2588235294));
  }
  .header-container .logo-container {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 9.75rem;
            flex: 0 0 9.75rem;
  }
  .header-container .logo-container .main-logo {
    display: block;
    position: relative;
    height: 2.6875rem;
  }
  .header-container .logo-container .main-logo a {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    display: block;
  }
  .header-container .logo-container .main-logo a img {
    max-height: 2.6875rem;
    display: block;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .header-container button.mobile-menu-icon {
    height: 3.125rem;
    width: 4.4375rem;
    display: block;
    margin-left: auto;
    position: relative;
    background: transparent;
    border-radius: 0;
  }
  .header-container button.mobile-menu-icon:hover, .header-container button.mobile-menu-icon:focus {
    background: transparent;
  }
  .header-container .cta {
    display: none;
  }
  .menu-wrap {
    position: fixed;
    top: calc(-100% + 50px);
    background: #fff;
    left: 0;
    right: 0;
    bottom: 100%;
    opacity: 0;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
    will-change: opacity;
    z-index: -1;
    -webkit-transition-delay: 150ms;
            transition-delay: 150ms;
  }
  .menu-wrap .menu-scroll-container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 4.6875rem;
    overflow-y: scroll;
  }
  .menu-wrap .mega-main-menu {
    text-align: left;
    padding: 0;
    list-style: none;
  }
  .menu-wrap .mega-main-menu li.dept-0 {
    overflow: hidden;
    width: 100%;
  }
  .menu-wrap .mega-main-menu li.dept-0 > a {
    text-transform: uppercase;
    font-size: 0.875rem;
    font-weight: bold;
    padding: 1.3125rem;
    position: relative;
    display: block;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
    color: #333333;
  }
  .menu-wrap .mega-main-menu li.dept-0 > a:before {
    content: "";
    display: block;
    position: absolute;
    left: 1.3125rem;
    right: 1.3125rem;
    height: 0.0625rem;
    background: #CED6E0;
    bottom: -0.03125rem;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
  }
  .menu-wrap .mega-main-menu li.dept-0.wide_border > a:before {
    left: 0;
    right: 0;
  }
  .menu-wrap .mega-main-menu li.dept-0.menu-item-has-children > a:after {
    content: "";
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    margin-top: -0.125rem;
    top: 50%;
    right: 1.3125rem;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid #000;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
  }
  .menu-wrap .mega-main-menu li.dept-0.open {
    position: relative;
  }
  .menu-wrap .mega-main-menu li.dept-0.open:before {
    content: "";
    width: 100%;
    position: absolute;
    top: -0.0625rem;
    display: block;
    height: 0.0625rem;
    background: #CED6E0;
  }
  .menu-wrap .mega-main-menu li.dept-0.open > a {
    color: #223d63;
    background: #F8F8F8;
  }
  .menu-wrap .mega-main-menu li.dept-0.open > a:after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .menu-wrap .mega-main-menu li.dept-0.open > a:before {
    left: 0;
    right: 0;
  }
  .menu-wrap .mega-main-menu li.dept-0.open > .sub-menu-wrap {
    border-bottom: 1px solid #CED6E0;
    opacity: 1;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap {
    max-height: 0;
    position: relative;
    overflow: hidden;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
    will-change: max-height;
    opacity: 0;
    border-bottom: 1px solid transparent;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu {
    width: 100%;
    margin: 0;
    position: relative;
    padding: 0;
    list-style: none;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1:first-child {
    padding-top: 1.21875rem;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > a.a-dept-1 {
    color: #677892;
    font-size: 0.875rem;
    text-transform: uppercase;
    font-weight: bold;
    position: relative;
    padding: 0 1.3125rem;
    width: 100%;
    display: block;
    line-height: 1;
    padding-top: 0.65625rem;
    padding-bottom: 0.6875rem;
    margin-bottom: 1.21875rem;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > a.a-dept-1:after {
    height: 0.0625rem;
    background: #BFBFBF;
    content: "";
    display: block;
    position: absolute;
    left: 1.3125rem;
    right: 1.3125rem;
    bottom: -0.03125rem;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.columns > .sub-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.columns > .sub-menu > li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    margin: 0;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.columns > .sub-menu > li:nth-child(2n) a {
    padding: 0.65625rem 1.3125rem 0.65625rem 0.65625rem;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.columns > .sub-menu > li a {
    padding: 0.65625rem 0.65625rem 0.65625rem 1.3125rem;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.resources .a-dept-1 {
    font-weight: normal;
    color: #223d63;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.resources > .sub-menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.resources > .sub-menu.content-sub-menu {
    padding-left: 1.3125rem;
    display: block;
    overflow: hidden;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.resources > .sub-menu > li > a {
    position: relative;
    padding: 0.375rem 1.25rem 0.375rem 2.25rem;
    margin-bottom: 0.1875rem;
    font-weight: bold;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.resources > .sub-menu > li > a:before {
    content: "";
    display: block;
    position: absolute;
    width: 0.35rem;
    height: 0.5rem;
    top: 0.75rem;
    left: 1.375rem;
    background: url("../images/right_arrow_green.svg");
    background-size: contain;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1.resources > .sub-menu > li > a span.desc {
    display: inline;
    margin-left: 6px;
    font-weight: normal;
    font-size: 0.875rem;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > .sub-menu {
    margin: 0 auto;
    padding: 0;
    list-style: none;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > .sub-menu > li {
    margin: 0 auto;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > .sub-menu > li:last-child a {
    margin-bottom: 1.21875rem;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > .sub-menu > li > a {
    padding: 0.65625rem 1.3125rem;
    margin-bottom: 0.5625rem;
    font-size: 0.875rem;
    font-weight: bold;
    color: #333333;
    display: block;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > .sub-menu > li > a:focus {
    color: #fff;
    background: #223d63;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > .sub-menu > li > a:focus .desc {
    color: #fff;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 > .sub-menu > li > a .desc {
    display: block;
    color: #677892;
    font-size: 0.8125rem;
    font-weight: normal;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 .see_all_link {
    position: relative;
    padding-bottom: 1.1875rem;
    padding-left: 1.3125rem;
    text-transform: uppercase;
    color: #333333;
    font-size: 0.875rem;
    display: block;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 .see_all_link:after {
    content: "";
    display: block;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    width: 3.4375rem;
    height: 0.25rem;
    position: absolute;
    bottom: 12px;
    left: 1.3125rem;
    background: #BFBFBF;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 .see_all_link:hover {
    background: transparent;
    color: #223d63;
  }
  .menu-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > ul.sub-menu li.dept-1 .see_all_link:hover:after {
    background: #333333;
    width: 90%;
  }
  .menu-wrap .cta-btns {
    position: absolute;
    bottom: 1.3125rem;
    z-index: 100;
    left: 1.3125rem;
    right: 1.3125rem;
    max-width: 22.5rem;
    margin: 0 auto;
  }
  .menu-wrap .cta-btns ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .menu-wrap .cta-btns ul li {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 50%;
            flex: 1 1 50%;
  }
  .menu-wrap .cta-btns ul li:nth-child(2) {
    border-left: 1px solid #CED6E0;
  }
  .menu-wrap .cta-btns ul li:nth-child(2) a {
    color: #333333;
  }
  .menu-wrap .cta-btns ul li a {
    display: block;
    text-align: center;
    padding: 1.625rem 0;
    font-size: 0.875rem;
    color: #223d63;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
  }
  .menu-wrap .cta-btns ul li a:focus {
    color: #fff;
    background: #223d63;
  }
  .site-header {
    top: 0;
    background: -webkit-gradient(linear, left top, left bottom, from(#000), to(rgba(0, 0, 0, 0.2588235294)));
    background: linear-gradient(#000, rgba(0, 0, 0, 0.2588235294));
  }
}
.hamburger {
  width: 1.25rem;
  height: 0.875rem;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
  margin: 0 auto;
  text-align: center;
  position: absolute;
  top: 1.125rem;
  right: 0;
}
.hamburger span {
  display: block;
  position: absolute;
  height: 0.09375rem;
  width: 100%;
  background: #fff;
  border-radius: 0.09375rem;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 0;
}
.hamburger span:nth-child(2) {
  top: 0.40625rem;
}
.hamburger span:nth-child(3) {
  bottom: 0;
}

@media (min-width: 1024px) {
  .site-header.header-hide {
    top: -auto;
  }
  .site-header .header-wrap {
    position: relative;
  }
  .site-header .header-wrap.is-stuck, .site-header .header-wrap.desktop_menu_open, .site-header .header-wrap.separate_header_on_wrap {
    background-color: #fff;
    -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0.1019607843);
            box-shadow: 0 0 0 rgba(0, 0, 0, 0.1019607843);
    border-bottom: 1px solid #ededed;
  }
  .site-header .header-wrap.is-stuck .mega-main-menu .a-dept-0, .site-header .header-wrap.desktop_menu_open .mega-main-menu .a-dept-0, .site-header .header-wrap.separate_header_on_wrap .mega-main-menu .a-dept-0 {
    color: #333333 !important;
  }
  .site-header .header-wrap.is-stuck .mega-main-menu .a-dept-0:before, .site-header .header-wrap.desktop_menu_open .mega-main-menu .a-dept-0:before, .site-header .header-wrap.separate_header_on_wrap .mega-main-menu .a-dept-0:before {
    background: #FF764B !important;
  }
  .site-header .header-wrap.is-stuck .mega-main-menu .a-dept-0:after, .site-header .header-wrap.desktop_menu_open .mega-main-menu .a-dept-0:after, .site-header .header-wrap.separate_header_on_wrap .mega-main-menu .a-dept-0:after {
    border-top: 4px solid #000 !important;
  }
  .site-header .header-wrap.is-stuck a.contact_btn, .site-header .header-wrap.desktop_menu_open a.contact_btn, .site-header .header-wrap.separate_header_on_wrap a.contact_btn {
    color: #223d63 !important;
  }
  .site-header .header-wrap.is-stuck a.contact_btn:before, .site-header .header-wrap.desktop_menu_open a.contact_btn:before, .site-header .header-wrap.separate_header_on_wrap a.contact_btn:before {
    background: #333333 !important;
  }
  .site-header .header-wrap.desktop_menu_open .mega-main-menu li.dept-0 > .sub-menu-wrap {
    z-index: -5;
    -webkit-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .site-header .header-wrap.desktop_menu_open .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu > li {
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
    opacity: 0.3;
  }
  .site-header .header-wrap.desktop_menu_open .mega-main-menu li.dept-0.open > .sub-menu-wrap {
    z-index: -2;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .site-header .header-wrap.desktop_menu_open .mega-main-menu li.dept-0.open > .sub-menu-wrap > .sub-menu > li {
    opacity: 1;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .site-header .header-wrap .top-bar {
    height: 2.5rem;
    background: transparent -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(43%, #ECF3FB), to(#DCE8F7)) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, #FFFFFF 0%, #ECF3FB 43%, #DCE8F7 100%) 0% 0% no-repeat padding-box;
    text-align: center;
  }
  .site-header .header-wrap .top-bar p {
    margin: 0;
    font-size: 0.9375rem;
    text-align: center;
    color: #fff;
    width: 100%;
  }
  .site-header .header-wrap .header-container {
    backdrop-filter: blur(60px);
    -webkit-backdrop-filter: blur(60px);
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 0.625rem;
    padding: 1.25rem 1.5rem;
    gap: 1.5rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (min-width: 1024px) and (min-width: 1024px) {
  .site-header .header-wrap .header-container {
    max-width: 93% !important;
  }
}
@media (min-width: 1024px) and (min-width: 1280px) {
  .site-header .header-wrap .header-container {
    max-width: 87.5rem !important;
  }
}
@media (min-width: 1024px) {
  .site-header .header-wrap .header-container .logo-container {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 9.75rem;
            flex: 0 0 9.75rem;
  }
  .site-header .header-wrap .header-container .logo-container .main-logo {
    display: block;
    position: relative;
    height: 2.6875rem;
  }
  .site-header .header-wrap .header-container .logo-container .main-logo a {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    display: block;
  }
  .site-header .header-wrap .header-container .logo-container .main-logo a img {
    max-height: 2.6875rem;
    display: block;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .site-header .header-wrap .header-container .menu-container {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
    height: "auto";
    text-align: left;
  }
  .site-header .header-wrap .header-container .menu-container .menu-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .site-header .header-wrap .header-container .menu-container .menu-wrap .menu-scroll-container {
    margin-left: 2rem;
  }
  .site-header .header-wrap .header-container .menu-container .menu-wrap .cta-btns {
    display: none;
  }
  .site-header .header-wrap .header-container .menu-container .mobile-menu-icon {
    display: none;
  }
  .site-header .header-wrap .mega-main-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    list-style: none;
    padding: 0;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 a.a-dept-0 {
    color: #fff;
    display: block;
    padding: 0 1.25rem 0 1.25rem;
    position: relative;
    font-size: 1rem;
    font-weight: 500;
    -webkit-transition: color 0.2s ease-out;
    transition: color 0.2s ease-out;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    text-transform: uppercase;
    text-align: center;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 a.a-dept-0:hover:before {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: bottom left;
            transform-origin: bottom left;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 a.a-dept-0:before {
    content: "";
    display: block;
    position: absolute;
    right: 1.125rem;
    left: 19px;
    height: 0.1875rem;
    margin-top: 0.9375rem;
    top: 50%;
    background: #fff;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: bottom right;
            transform-origin: bottom right;
    -webkit-transition: -webkit-transform 0.15s ease-out;
    transition: -webkit-transform 0.15s ease-out;
    transition: transform 0.15s ease-out;
    transition: transform 0.15s ease-out, -webkit-transform 0.15s ease-out;
  }
}
@media (min-width: 1024px) and (min-width: 1024px) and (max-width: 1279px) {
  .site-header .header-wrap .mega-main-menu li.dept-0 a.a-dept-0:before {
    left: 10px;
  }
}
@media (min-width: 1024px) {
  .site-header .header-wrap .mega-main-menu li.dept-0.menu-item-has-children > a {
    padding: 0 2.125rem 0 1.25rem;
  }
}
@media (min-width: 1024px) and (min-width: 1024px) and (max-width: 1279px) {
  .site-header .header-wrap .mega-main-menu li.dept-0.menu-item-has-children > a {
    padding: 0 1.875rem 0 0.625rem;
  }
}
@media (min-width: 1024px) {
  .site-header .header-wrap .mega-main-menu li.dept-0.menu-item-has-children > a:after {
    content: "";
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    margin-top: -0.0625rem;
    top: 50%;
    right: 1.125rem;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid #fff;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0.open > a:after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .site-header .header-wrap .mega-main-menu li.dept-0.open > a:before {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: bottom left;
            transform-origin: bottom left;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0.open > .sub-menu-wrap {
    z-index: -1;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap {
    max-height: 0;
    position: absolute;
    top: auto;
    z-index: -2;
    left: 0;
    margin: 0;
    overflow: hidden;
    right: 0;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu {
    width: 100%;
    background: #fff;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
    padding: 0 calc((100% - 1170px) / 2) 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    list-style: none;
    border-bottom: 1px solid #ededed;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 {
    padding-top: 1.21875rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 100%;
            flex: 0 1 100%;
    position: relative;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > a.a-dept-1 {
    color: #677892;
    font-size: 0.875rem;
    font-weight: bold;
    position: relative;
    padding: 0 1.3125rem;
    width: 100%;
    display: block;
    line-height: 1;
    padding-top: 0.65625rem;
    padding-bottom: 0.6875rem;
    margin-bottom: 1.21875rem;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > a.a-dept-1:after {
    height: 0.125rem;
    background: #ededed;
    content: "";
    display: block;
    position: absolute;
    left: 1.3125rem;
    right: 1.3125rem;
    bottom: -0.03125rem;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.resources > .sub-menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    list-style: none;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.resources > .sub-menu > li > a {
    position: relative;
    padding: 0.375rem 1.4375rem;
    margin-bottom: 0.1875rem;
    font-weight: bold;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.resources > .sub-menu > li > a:before {
    content: "";
    display: block;
    position: absolute;
    width: 0.35rem;
    height: 0.5rem;
    top: 0.75rem;
    left: 0.59375rem;
    background: url("../images/right_arrow_green.svg");
    background-size: contain;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.resources > .sub-menu > li > a span.desc {
    display: inline;
    margin-left: 6px;
    font-weight: normal;
    font-size: 0.875rem;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu > li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu > li.last_item_size_2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu > li.last_item_size_3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu > li.last_item_size_4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.desktop_columns_3 > .sub-menu > li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33%;
            flex: 0 0 33%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.desktop_columns_3 > .sub-menu > li.last_item_size_2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66%;
            flex: 0 0 66%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.desktop_columns_3 > .sub-menu > li.last_item_size_3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.desktop_columns_2 > .sub-menu > li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.desktop_columns_2 > .sub-menu > li.last_item_size_2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1.desktop_columns_1 > .sub-menu > li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu {
    margin: 0 auto;
    padding-left: 0.75rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-bottom: 2.46875rem;
    list-style: none;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu.content-sub-menu {
    padding-left: 1.3125rem;
    display: block;
    overflow: hidden;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu.content-sub-menu p {
    margin-bottom: 0;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu > li > a {
    padding: 0.65625rem 0.625rem 0.625rem 0.625rem;
    margin-bottom: 0.5625rem;
    font-size: 0.875rem;
    font-weight: bold;
    color: #333333;
    display: block;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu > li > a:hover, .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu > li > a:focus {
    background: #f4f4f4;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 > .sub-menu > li > a .desc {
    display: block;
    color: #677892;
    font-size: 0.8125rem;
    font-weight: normal;
    margin-top: 0.375rem;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 .see_all_link {
    position: absolute;
    bottom: 0.5625rem;
    left: 1.3125rem;
    text-transform: uppercase;
    color: #333333;
    font-size: 0.875rem;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 .see_all_link:after {
    content: "";
    display: block;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    width: 3.4375rem;
    height: 0.25rem;
    position: absolute;
    bottom: -4px;
    left: 0;
    background: #CED6E0;
    -webkit-transform: skewX(315deg);
            transform: skewX(315deg);
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 .see_all_link:hover {
    background: transparent;
    color: #223d63;
  }
  .site-header .header-wrap .mega-main-menu li.dept-0 > .sub-menu-wrap > .sub-menu .dept-1 .see_all_link:hover:after {
    background: #ededed;
    width: 100%;
  }
}
/*
body.inverse_header .site-header{


  .top-bar {
    background: transparent linear-gradient(180deg, #0E60C3 0%, #0D478D 100%) 0% 0% no-repeat padding-box;
    span, p, a {
      color: #fff;
    }
  }

  .is-at-top {
    .logo-white {
      opacity: 0 !important;
    }
    .logo-blue {
      opacity: 1 !important;
    }
  }
  .logo-white {
    opacity: 0 !important;
  }

  .logo-blue {
    opacity: 1 !important;
  }

  @include bp(tabletlandscape) {
    .header-wrap .mega-main-menu li.dept-0 a.a-dept-0 {
      color: $darkblue-new;
      &:before{
        background: $darkblue-new;
      }
      &:after{
        border-top: 4px solid $darkblue-new !important;
      }
      &:hover{
        //color: $menu-text-color;
        &:before{
          background: $menu-text-color;
        }
        &:after{
          border-top: 4px solid $menu-text-color !important;
        }
      }
    }

    .header-wrap .header-container .menu-container .menu-wrap .cta-btns ul li a {
      color: $darkblue-new;
      &:before{
        background: $darkblue-new;
      }
    }
    .header-wrap .header-container .menu-container .menu-wrap .cta-btns ul li a.book_btn{
      color: #fff;
      background: $menu-text-color;
      &:hover{
        background: lighten($menu-text-color,10%);
      }
    }
  }

  .hamburger {
    span{
      background: #223d63;
    }
  }
}
*/
@media (max-width: 767px) {
  .hide-on-mobile {
    display: none !important;
  }
}

@media (min-width: 1024px) {
  .hide-on-desktop {
    display: none !important;
  }
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  -webkit-clip-path: none;
          clip-path: none;
  color: #21759b;
  display: block;
  font-size: 15.75px;
  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. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Modules
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

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

.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
  width: 100vw;
}

.alignwide {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
  width: 100vw;
  padding-left: 1.875em;
  padding-right: 1.875em;
}
@media (max-width: 360px) {
  .alignwide {
    padding-left: 0.9375em;
    padding-right: 0.9375em;
  }
}
@media (min-width: 1280px) {
  .alignwide {
    margin-left: calc(50% - 600px);
    margin-right: calc(50% - 600px);
    max-width: 87.5rem;
    width: 87.5rem;
  }
}

.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after {
  clear: both;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

img {
  height: auto; /* Make sure images are scaled correctly. */
  max-width: 100%; /* Adhere to container width. */
}

figure {
  margin: 0; /* Extra wide images within figure tags don't overflow the content area. */
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

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

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}
.gallery-columns-2 .gallery-item {
  max-width: 50%;
}
.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}
.gallery-columns-4 .gallery-item {
  max-width: 25%;
}
.gallery-columns-5 .gallery-item {
  max-width: 20%;
}
.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

@media (min-width: 768px) {
  .show-xs {
    display: none;
  }
}

@media (max-width: 767px) {
  .hide-xs {
    display: none;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNpdGUuc2NzcyIsInZhcmlhYmxlcy9fc2l6aW5nLWZ1bmN0aW9ucy5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwic2l0ZS5jc3MiLCJsYXlvdXQvX2dlbmVyYWwuc2NzcyIsInZhcmlhYmxlcy9fY29sb3JzLnNjc3MiLCJ2YXJpYWJsZXMvX3R5cG9ncmFwaHkuc2NzcyIsInZhcmlhYmxlcy9fYnJlYWtwb2ludHMuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJ2YXJpYWJsZXMvX3N0cnVjdHVyZS5zY3NzIiwibGF5b3V0L193aWRnZXRzLnNjc3MiLCJsYXlvdXQvX2Jsb2cuc2NzcyIsIm1peGlucy9fbWl4aW5zLW1hc3Rlci5zY3NzIiwidHlwb2dyYXBoeS9fdHlwb2dyYXBoeS5zY3NzIiwidHlwb2dyYXBoeS9fZm9udF9mYWNlcy5zY3NzIiwiZWxlbWVudHMvX2VsZW1lbnRzLnNjc3MiLCJlbGVtZW50cy9fbGlzdHMuc2NzcyIsImVsZW1lbnRzL190YWJsZXMuc2NzcyIsImd1dGVuYmVyZy9fZ3V0ZW5fZm9udF9jb2xvcl92YXJpYWJsZXMuc2NzcyIsImd1dGVuYmVyZy9fYmxvY2tfc3R5bGVzLnNjc3MiLCJndXRlbmJlcmcvX2d1dGVuYmVyZy5zY3NzIiwiZm9ybXMvX2J1dHRvbnMuc2NzcyIsImZvcm1zL19maWVsZHMuc2NzcyIsImZvcm1zL19mb3Jtcy5zY3NzIiwibmF2aWdhdGlvbi9fbWVnYV9tYWluX21lbnUuc2NzcyIsIm1vZHVsZXMvX2FjY2Vzc2liaWxpdHkuc2NzcyIsIm1vZHVsZXMvX2FsaWdubWVudHMuc2NzcyIsIm1vZHVsZXMvX2NsZWFyaW5ncy5zY3NzIiwibWVkaWEvX21lZGlhLnNjc3MiLCJtZWRpYS9fY2FwdGlvbnMuc2NzcyIsIm1lZGlhL19nYWxsZXJpZXMuc2NzcyIsImxheW91dC9fdmlzaWJpbGl0eS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztDQUFBO0FDSUE7Ozs7RUFBQTtBQVdF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dEJxQjtBSDQ5QnZCO0FJMThCSTtFTUdKO0lBR0ksZVBkbUI7RUhzOUJyQjtBQUNGO0FJNzdCSTtFTWZKO0lBTUksaUJQckNZO0VIKytCZDtBQUNGOztBVXY4QkE7RUFDRSxrQlBqQ29CO0FIMitCdEI7QUl4OUJJO0VNYUo7SUFHSSxrQlB6QmtCO0VIcStCcEI7QUFDRjtBSTM4Qkk7RU1MSjtJQU1JLG1CUGhEVztFSDgvQmI7QUFDRjs7QVUzOEJBO0VBQ0UsbUJQNUNtQjtBSDAvQnJCO0FJdCtCSTtFTXVCSjtJQUdJLG1CUHBDaUI7RUhvL0JuQjtBQUNGO0FJejlCSTtFTUtKO0lBTUksbUJQM0RVO0VINmdDWjtBQUNGOztBVS84QkE7RUFDRSxlUHhEbUI7QUgwZ0NyQjtBSXAvQkk7RU1pQ0o7SUFHSSxlUGhEaUI7RUhvZ0NuQjtBQUNGO0FJditCSTtFTWVKO0lBTUksZVB4RVU7RUg4aENaO0FBQ0Y7O0FVbjlCQTtFQUNFLGVQbEVtQjtFT3lFbkIsYUFBQTtFQUNBLG1CQUFBO0FWZzlCRjtBSXBnQ0k7RU0yQ0o7SUFHSSxlUDFEaUI7RUhvaENuQjtBQUNGO0FJdi9CSTtFTXlCSjtJQU1JLGVQbEZVO0VIOGlDWjtBQUNGOztBVXY5QkE7RUFDRSxzQlIxRHFCO0VRMkRyQixTQUFBO0VBQ0EsV0FBQTtFQUNBLG9CQUFBO0FWMDlCRjs7QVV2OUJBO0VBQ0Usa0JBQUE7QVYwOUJGOztBVXY5QkE7RUFDRSxlQUFBO0FWMDlCRjs7QVV0OUJBO0VBQ0UsaUJBQUE7QVZ5OUJGOztBVXQ5QkE7RUFDRSxnQlI3RXNCO0VROEV0QixtRFA3RVU7RU03Q1YsbUJBQUE7RUFDQSxvQkFBQTtFQzJIQSxnQlA3RXNCO0VPOEV0QixvQkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtBVjA5QkY7O0FVdjlCQTtFQUNFLDJEUHhGVztFTTVDWCxtQkFBQTtFQUNBLG9CQUFBO0FUK2xDRjs7QVV4OUJBO0VBQ0UsOEJBQUE7RUFDQSxZQUFBO0FWMjlCRjs7QVV4OUJBO0VBQ0UsbUJSakdzQjtFUWtHdEIscUJBQUE7QVYy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OztBd0JwbkhBOzs7RWZhRSxXQUFBO0FUNm1IRjs7QUhya0hBOzsrREFBQTtBNEI5REE7OztFQUdDLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7RUFDQSxVQUFBO0F6QnlvSEQ7O0F5QnRvSEEsdURBQUE7QUFDQTs7O0VBR0MsZUFBQTtBekJ5b0hEOztBeUJ0b0hBO0VBQ0MsWUFBQSxFQUFBLDJDQUFBO0VBQ0EsZUFBQSxFQUFBLCtCQUFBO0F6QnlvSEQ7O0F5QnRvSEE7RUFDQyxTQUFBLEVBQUEsMEVBQUE7QXpCeW9IRDs7QXlCcG9IQTs7K0RBQUE7QUMzQkE7RUFDQyxvQkFBQTtFQUNBLGVBQUE7QTFCcXFIRDtBMEJucUhDO0VqQnVCQyxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtBVCtvSEY7QTBCcHFIQztFQUNDLGtCQUFBO0ExQnNxSEY7O0EwQmxxSEE7RUFDQyxrQkFBQTtBMUJxcUhEOztBeUJucEhBOzsrREFBQTtBRWhDQTtFQUNDLG9CQUFBO0EzQnlySEQ7O0EyQnRySEE7RUFDQyxxQkFBQTtFQUNBLGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0EzQnlySEQ7QTJCcnJIRTtFQUNDLGNBQUE7QTNCdXJISDtBMkJ4ckhFO0VBQ0MsaUJBQUE7QTNCMHJISDtBMkIzckhFO0VBQ0MsY0FBQTtBM0I2ckhIO0EyQjlySEU7RUFDQyxjQUFBO0EzQmdzSEg7QTJCanNIRTtFQUNDLGlCQUFBO0EzQm1zSEg7QTJCcHNIRTtFQUNDLGlCQUFBO0EzQnNzSEg7QTJCdnNIRTtFQUNDLGdCQUFBO0EzQnlzSEg7QTJCMXNIRTtFQUNDLGlCQUFBO0EzQjRzSEg7O0EyQnZzSEE7RUFDQyxjQUFBO0EzQjBzSEQ7O0FJOXFISTtFd0I3Q0o7SUFFSSxhQUFBO0U1Qjh0SEY7QUFDRjs7QUkxckhJO0V3QmpDSjtJQUVJLGFBQUE7RTVCOHRIRjtBQUNGIiwiZmlsZSI6InNpdGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG5UaGVtZSBOYW1lOiBTdHlsbyBEb29yc1xuVGhlbWUgVVJJOiBodHRwOi8vd2ViaXoudGVhbVxuQXV0aG9yOiBXZWJpeiBUZWFtXG5BdXRob3IgVVJJOiBodHRwczovL3dlYml6LnRlYW0vXG5EZXNjcmlwdGlvbjogU3R5bG8gRG9vcnMgVGhlbWVcblZlcnNpb246IDEuMC4wXG5MaWNlbnNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MiBvciBsYXRlclxuTGljZW5zZSBVUkk6IExJQ0VOU0VcblRleHQgRG9tYWluOiBzdHlsb19kb29yc1xuXG4qL1xuXG5AaW1wb3J0IFwidmFyaWFibGVzL3ZhcmlhYmxlcy1zaXRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL21peGlucy1tYXN0ZXJcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBOb3JtYWxpemVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJub3JtYWxpemVcIjtcblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE1haW4gTGF5b3V0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vL0BpbXBvcnQgXCJmbGV4Ym94Z3JpZC9mbGV4Z3JpZFwiO1xuXG5AaW1wb3J0IFwibGF5b3V0L2dlbmVyYWxcIjtcbkBpbXBvcnQgXCJsYXlvdXQvZm9vdGVyXCI7XG5AaW1wb3J0IFwibGF5b3V0L3dpZGdldHNcIjtcbkBpbXBvcnQgXCJsYXlvdXQvYmxvZ1wiO1xuXG5AaW1wb3J0IFwidHlwb2dyYXBoeS90eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwidHlwb2dyYXBoeS9mb250X2ZhY2VzXCI7XG5cbkBpbXBvcnQgXCJlbGVtZW50cy9lbGVtZW50c1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEd1dGVuYmVyZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbkBpbXBvcnQgXCJndXRlbmJlcmcvZ3V0ZW5iZXJnXCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybXNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBIZWFkZXIgYW5kIE1lbnVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJuYXZpZ2F0aW9uL21lZ2FfbWFpbl9tZW51XCI7XG4vL0BpbXBvcnQgXCJuYXZpZ2F0aW9uL3NpbXBsZV9tYWluX21lbnVcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBBY2Nlc3NpYmlsaXR5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibW9kdWxlcy9hY2Nlc3NpYmlsaXR5XCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTW9kdWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm1vZHVsZXMvYWxpZ25tZW50c1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvY2xlYXJpbmdzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTWVkaWFcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJtZWRpYS9tZWRpYVwiO1xuQGltcG9ydCBcImxheW91dC92aXNpYmlsaXR5XCI7XG5cblxuXG4iLCIvLyBQWCB0byBFTS9SRU0gLSBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9pc2VsbHNvYXAvODI5OTcyNlxuXG4kYmFzZS1mb250LXNpemU6IDE2cHg7XG5cbi8qKlxuICogU3RyaXBzIHRoZSB1bml0IGZyb20gYSBnaXZlbiBudW1iZXItdW5pdC1jb21iaW5hdGlvbiBhbmQgcmV0dXJucyB0aGUgbnVtYmVyLiBcbiAqIEBsaW5rOiBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xMjMzNTg0MS8xNzc5OTk5XG4gKiBAdXNhZ2U6IHBhcnNlLWludCgxMHB4KSA9PiAxMFxuICovXG4gQHVzZSAnc2FzczptYXRoJztcbiBAZnVuY3Rpb24gcGFyc2UtaW50KCRudW1iZXIpIHtcbiAgXG4gICAgQHJldHVybiBtYXRoLmRpdigkbnVtYmVyLCAkbnVtYmVyICogMCArIDEpO1xuICB9XG4gIFxuICAvKipcbiAgICogU2ltcGx5IGFkZHMgdGhlIGVtIHVuaXQgdG8gYSBnaXZlbiBudW1iZXIuIFRoaXMgaXMgdXNlZCB0d2ljZSBpbiB0aGVcbiAgICogZnVuY3Rpb24gdW5kZXJuZWF0aCwgdGh1cyB0aGUgbmVlZCBmb3IgYSBzZXBhcmF0ZSBmdW5jdGlvbi5cbiAgICovXG4gIFxuICBAZnVuY3Rpb24gYWRkLWVtLXVuaXQoJG51bWJlcikge1xuICAgIEByZXR1cm4gJG51bWJlciAqIDFlbTtcbiAgfVxuICBcbiAgQGZ1bmN0aW9uIGFkZC1yZW0tdW5pdCgkbnVtYmVyKSB7XG4gICAgQHJldHVybiAkbnVtYmVyICogMXJlbTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIENhbGN1bGF0ZXMgZW0gdmFsdWVzIGZvciBhIGdpdmVuIGxpc3Qgb2YgKHB4IG9yIGVtKSB2YWx1ZXMgYW5kIGEgZ2l2ZW4gZW1cbiAgICogYmFzZS4gTXVsdGlwbHkgYmFzZSB2YWx1ZXMgZm9yIG5lc3RlZCBlbSBzdHJ1Y3R1cmVzIChsYXN0IEB1c2FnZSBleGFtcGxlKS5cbiAgICogQHVzYWdlOiBlbSgxMHB4LCAxLjEyNSkgPT4gLjU1NTU2ZW1cbiAgICogICAgICAgICBlbSgyNHB4LCAuODc1ZW0pID0+IDEuNzE0MjllbVxuICAgKiAgICAgICAgIGVtKDEycHggMCA3ZW0gcmdiYSgwLCAwLCAwLCAuNyksIDEuNzUpID0+IC40Mjg1N2VtIDAgNGVtIHJnYmEoMCwgMCwgMCwgMC43KVxuICAgKiAgICAgICAgIGVtKDEycHgpICsgZW0oM2VtKSA9PiAzLjc1ZW1cbiAgICogICAgICAgICBlbSgyM3B4LCBlbSg1M3B4KSkgPT4gLjQzMzk2ZW1cbiAgICogICAgICAgICBlbSgyNHB4LCAxLjUgKiAxLjEyNSkgPT4gLjg4ODg5ZW1cbiAgICovXG4gIFxuICBAZnVuY3Rpb24gZW0oJHZhbHVlcywgJGVtLWJhc2U6IDEpIHtcbiAgICAkYmFzZS1mb250LXNpemU6IHBhcnNlLWludCgkYmFzZS1mb250LXNpemUpO1xuICAgICRlbS1iYXNlOiBwYXJzZS1pbnQoJGVtLWJhc2UpO1xuICAgICRyZXN1bHQ6ICgpO1xuICBcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgICBAaWYgJHZhbHVlID09IDAgb3IgdHlwZS1vZigkdmFsdWUpICE9IFwibnVtYmVyXCIge1xuICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdW5pdDogdW5pdCgkdmFsdWUpO1xuICAgICAgICAkdmFsdWU6IHBhcnNlLWludCgkdmFsdWUpO1xuICBcbiAgICAgICAgQGlmICR1bml0ID09IFwicHhcIiB7XG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIGFkZC1lbS11bml0KChjYWxjKCR2YWx1ZSAvICgkYmFzZS1mb250LXNpemUgKiAkZW0tYmFzZSkpKSkpO1xuICAgICAgICB9IEBlbHNlIGlmICR1bml0ID09IFwiZW1cIiB7XG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIGFkZC1lbS11bml0KGNhbGMoJHZhbHVlIC8gJGVtLWJhc2UpKSk7XG4gICAgICAgIH0gQGVsc2UgaWYgJHVuaXQgPT0gXCJcIiB7XG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIGFkZC1lbS11bml0KChjYWxjKCR2YWx1ZSAvICgkYmFzZS1mb250LXNpemUgKiAkZW0tYmFzZSkpKSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBcbiAgICAvKipcbiAgICAgKiBJZiBvbmx5IG9uZSB2YWx1ZSBpcyBwcm92aWRlZCwgb3V0cHV0IHRoZSBpbnN0YW5jZSBvZiB0aGF0IG9iamVjdCBpbnN0ZWFkXG4gICAgICogb2YgdGhlIHdob2xlIGxpc3QuIFRoaXMgZW5hYmxlcyB1c2UgY2FzZXMgbGlrZSBuZXN0ZWQgZnVuY3Rpb24gaW52b2NhdGlvbnNcbiAgICAgKiAoZS5nLiBgZW0oMnB4LCBlbSgxNXB4KSlgKSBvciBhZGRpdGlvbnMvc3VidHJhY3Rpb25zIChlLmcuIGBlbSg1cHgpICsgZW0oMzJweClgKS5cbiAgICAgKi9cbiAgICBAaWYgbGVuZ3RoKCRyZXN1bHQpID09IDEge1xuICAgICAgQHJldHVybiBudGgoJHJlc3VsdCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuICRyZXN1bHQ7XG4gICAgfVxuICB9XG4gIFxuICBcbiAgQGZ1bmN0aW9uIHJlbSgkdmFsdWVzLCAkZW0tYmFzZTogMSkge1xuICAgICRiYXNlLWZvbnQtc2l6ZTogcGFyc2UtaW50KCRiYXNlLWZvbnQtc2l6ZSk7XG4gICAgJGVtLWJhc2U6IHBhcnNlLWludCgkZW0tYmFzZSk7XG4gICAgJHJlc3VsdDogKCk7XG4gIFxuICAgIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gMCBvciB0eXBlLW9mKCR2YWx1ZSkgIT0gXCJudW1iZXJcIiB7XG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiB1bml0KCR2YWx1ZSk7XG4gICAgICAgICR2YWx1ZTogcGFyc2UtaW50KCR2YWx1ZSk7XG4gIFxuICAgICAgICBAaWYgJHVuaXQgPT0gXCJweFwiIHtcbiAgICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgYWRkLXJlbS11bml0KChjYWxjKCR2YWx1ZSAvICgkYmFzZS1mb250LXNpemUgKiAkZW0tYmFzZSkpKSkpO1xuICAgICAgICB9IEBlbHNlIGlmICR1bml0ID09IFwiZW1cIiB7XG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIGFkZC1yZW0tdW5pdChjYWxjKCR2YWx1ZSAvICRlbS1iYXNlKSkpO1xuICAgICAgICB9IEBlbHNlIGlmICR1bml0ID09IFwiXCIge1xuICAgICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBhZGQtcmVtLXVuaXQoKGNhbGMoJHZhbHVlIC8gKCRiYXNlLWZvbnQtc2l6ZSAqICRlbS1iYXNlKSkpKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIC8qKlxuICAgICAqIElmIG9ubHkgb25lIHZhbHVlIGlzIHByb3ZpZGVkLCBvdXRwdXQgdGhlIGluc3RhbmNlIG9mIHRoYXQgb2JqZWN0IGluc3RlYWRcbiAgICAgKiBvZiB0aGUgd2hvbGUgbGlzdC4gVGhpcyBlbmFibGVzIHVzZSBjYXNlcyBsaWtlIG5lc3RlZCBmdW5jdGlvbiBpbnZvY2F0aW9uc1xuICAgICAqIChlLmcuIGBlbSgycHgsIGVtKDE1cHgpKWApIG9yIGFkZGl0aW9ucy9zdWJ0cmFjdGlvbnMgKGUuZy4gYGVtKDVweCkgKyBlbSgzMnB4KWApLlxuICAgICAqL1xuICAgIEBpZiBsZW5ndGgoJHJlc3VsdCkgPT0gMSB7XG4gICAgICBAcmV0dXJuIG50aCgkcmVzdWx0LCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gJHJlc3VsdDtcbiAgICB9XG4gIH0iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuXHRsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuXHQtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuXHRtYXJnaW46IDA7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuXHRoZWlnaHQ6IDA7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuXHRmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcblx0Zm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuXHRmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuXHRmb250LXNpemU6IDc1JTtcblx0bGluZS1oZWlnaHQ6IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuXHRib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG5cdHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuXHRmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cblx0bWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG5cdG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuXHRwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqXHRcdGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cblx0Y29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cblx0ZGlzcGxheTogdGFibGU7IC8qIDEgKi9cblx0bWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG5cdHBhZGRpbmc6IDA7IC8qIDMgKi9cblx0d2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuXHRvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cblx0cGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuXHRmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG5cdGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qIVxuVGhlbWUgTmFtZTogU3R5bG8gRG9vcnNcblRoZW1lIFVSSTogaHR0cDovL3dlYml6LnRlYW1cbkF1dGhvcjogV2ViaXogVGVhbVxuQXV0aG9yIFVSSTogaHR0cHM6Ly93ZWJpei50ZWFtL1xuRGVzY3JpcHRpb246IFN0eWxvIERvb3JzIFRoZW1lXG5WZXJzaW9uOiAxLjAuMFxuTGljZW5zZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjIgb3IgbGF0ZXJcbkxpY2Vuc2UgVVJJOiBMSUNFTlNFXG5UZXh0IERvbWFpbjogc3R5bG9fZG9vcnNcblxuKi9cbi8qKlxuICogU3RyaXBzIHRoZSB1bml0IGZyb20gYSBnaXZlbiBudW1iZXItdW5pdC1jb21iaW5hdGlvbiBhbmQgcmV0dXJucyB0aGUgbnVtYmVyLiBcbiAqIEBsaW5rOiBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xMjMzNTg0MS8xNzc5OTk5XG4gKiBAdXNhZ2U6IHBhcnNlLWludCgxMHB4KSA9PiAxMFxuICovXG4vKipcbiAqIFNpbXBseSBhZGRzIHRoZSBlbSB1bml0IHRvIGEgZ2l2ZW4gbnVtYmVyLiBUaGlzIGlzIHVzZWQgdHdpY2UgaW4gdGhlXG4gKiBmdW5jdGlvbiB1bmRlcm5lYXRoLCB0aHVzIHRoZSBuZWVkIGZvciBhIHNlcGFyYXRlIGZ1bmN0aW9uLlxuICovXG4vKipcbiAqIENhbGN1bGF0ZXMgZW0gdmFsdWVzIGZvciBhIGdpdmVuIGxpc3Qgb2YgKHB4IG9yIGVtKSB2YWx1ZXMgYW5kIGEgZ2l2ZW4gZW1cbiAqIGJhc2UuIE11bHRpcGx5IGJhc2UgdmFsdWVzIGZvciBuZXN0ZWQgZW0gc3RydWN0dXJlcyAobGFzdCBAdXNhZ2UgZXhhbXBsZSkuXG4gKiBAdXNhZ2U6IGVtKDEwcHgsIDEuMTI1KSA9PiAuNTU1NTZlbVxuICogICAgICAgICBlbSgyNHB4LCAuODc1ZW0pID0+IDEuNzE0MjllbVxuICogICAgICAgICBlbSgxMnB4IDAgN2VtIHJnYmEoMCwgMCwgMCwgLjcpLCAxLjc1KSA9PiAuNDI4NTdlbSAwIDRlbSByZ2JhKDAsIDAsIDAsIDAuNylcbiAqICAgICAgICAgZW0oMTJweCkgKyBlbSgzZW0pID0+IDMuNzVlbVxuICogICAgICAgICBlbSgyM3B4LCBlbSg1M3B4KSkgPT4gLjQzMzk2ZW1cbiAqICAgICAgICAgZW0oMjRweCwgMS41ICogMS4xMjUpID0+IC44ODg4OWVtXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTm9ybWFsaXplXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1idXR0b25dOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9cmVzZXRdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9c3VibWl0XTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKlx0XHRgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9c2VhcmNoXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBNYWluIExheW91dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaHRtbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBtaW4td2lkdGg6IDMwMHB4O1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtbW96LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuKiB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG4uY29udGFpbmVyLCAuYWxpZ25mdWxsID4gLmt0LXJvdy1jb2x1bW4td3JhcCwgLmFsaWduZnVsbCA+IC5rdC1yb3ctbGF5b3V0LWlubmVyID4gLmt0LXJvdy1jb2x1bW4td3JhcCwgLndwLWJsb2NrLWthZGVuY2Utcm93bGF5b3V0LmFsaWduZnVsbCA+IC5rdC1yb3ctbGF5b3V0LWlubmVyID4gLmt0LXJvdy1jb2x1bW4td3JhcC5rYi10aGVtZS1jb250ZW50LXdpZHRoLCAuYWxpZ25mdWxsID4gLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIsIC5hbGlnbmZ1bGwgPiAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250YWluZXIsIC5hbGlnbmZ1bGwgPiAua3Qtcm93LWNvbHVtbi13cmFwLCAuYWxpZ25mdWxsID4gLmt0LXJvdy1sYXlvdXQtaW5uZXIgPiAua3Qtcm93LWNvbHVtbi13cmFwLCAud3AtYmxvY2sta2FkZW5jZS1yb3dsYXlvdXQuYWxpZ25mdWxsID4gLmt0LXJvdy1sYXlvdXQtaW5uZXIgPiAua3Qtcm93LWNvbHVtbi13cmFwLmtiLXRoZW1lLWNvbnRlbnQtd2lkdGgsIC5hbGlnbmZ1bGwgPiAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciwgLmFsaWduZnVsbCA+IC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDQ1LjYyNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY29udGFpbmVyLCAuYWxpZ25mdWxsID4gLmt0LXJvdy1jb2x1bW4td3JhcCwgLmFsaWduZnVsbCA+IC5rdC1yb3ctbGF5b3V0LWlubmVyID4gLmt0LXJvdy1jb2x1bW4td3JhcCwgLndwLWJsb2NrLWthZGVuY2Utcm93bGF5b3V0LmFsaWduZnVsbCA+IC5rdC1yb3ctbGF5b3V0LWlubmVyID4gLmt0LXJvdy1jb2x1bW4td3JhcC5rYi10aGVtZS1jb250ZW50LXdpZHRoLCAuYWxpZ25mdWxsID4gLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIsIC5hbGlnbmZ1bGwgPiAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5MyUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuY29udGFpbmVyLCAuYWxpZ25mdWxsID4gLmt0LXJvdy1jb2x1bW4td3JhcCwgLmFsaWduZnVsbCA+IC5rdC1yb3ctbGF5b3V0LWlubmVyID4gLmt0LXJvdy1jb2x1bW4td3JhcCwgLndwLWJsb2NrLWthZGVuY2Utcm93bGF5b3V0LmFsaWduZnVsbCA+IC5rdC1yb3ctbGF5b3V0LWlubmVyID4gLmt0LXJvdy1jb2x1bW4td3JhcC5rYi10aGVtZS1jb250ZW50LXdpZHRoLCAuYWxpZ25mdWxsID4gLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIsIC5hbGlnbmZ1bGwgPiAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA4Ny41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkgLndwLWJsb2NrLWNvbHVtbnMge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDc4MXB4KSB7XG4gIC53cC1ibG9jay1jb2x1bW5zOm5vdCguaXMtbm90LXN0YWNrZWQtb24tbW9iaWxlKSA+IC53cC1ibG9jay1jb2x1bW4ge1xuICAgIGZsZXgtYmFzaXM6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkgLndwLWJsb2NrLWNvbHVtbnM6bm90KC5pcy1ub3Qtc3RhY2tlZC1vbi1tb2JpbGUpID4gLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cbiAgYm9keSAud3AtYmxvY2stY29sdW1uczpub3QoLmlzLW5vdC1zdGFja2VkLW9uLW1vYmlsZSkgPiAud3AtYmxvY2stY29sdW1uW3N0eWxlKj1mbGV4LWJhc2lzXSB7XG4gICAgZmxleC1ncm93OiAwO1xuICB9XG59XG4uYXJjaGl2ZS1oZWFkZXIgaW1nIHtcbiAgbWF4LWhlaWdodDogMTAwdmg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uc2l0ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYmFja2dyb3VuZDogIzMzMzUzNztcbiAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAycmVtIDEuMjVyZW07XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgZ2FwOiAxLjVyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1heC13aWR0aDogOTMlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWZvb3RlciAuZm9vdGVyLWN0YS13cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIG1heC13aWR0aDogNDUuNjI1cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaXRlLWZvb3RlciAuZm9vdGVyLWN0YS13cmFwcGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgYmFja2dyb3VuZDogIzMzMzUzNztcbiAgICBwYWRkaW5nOiA0cmVtIDIuNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDkzJTtcbiAgICBnYXA6IDJyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIge1xuICAgIG1heC13aWR0aDogNzIuNXJlbTtcbiAgfVxufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIuc2luZ2xlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIuc2luZ2xlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jdGEtd3JhcHBlci5zaW5nbGUgLmxlZnQtcGFydCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMnJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jdGEtd3JhcHBlci5zaW5nbGUgLmxlZnQtcGFydCB7XG4gICAgZ2FwOiAzLjc1cmVtO1xuICB9XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jdGEtd3JhcHBlci5zaW5nbGUgLndwY2Y3IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIgLmxlZnQtcGFydCB7XG4gICAgbWF4LXdpZHRoOiAzMHJlbTtcbiAgfVxufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIgLmxlZnQtcGFydCAud2lkZ2V0IHtcbiAgbWFyZ2luOiAwO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIgLmxlZnQtcGFydCAud2lkZ2V0Om5vdCg6bGFzdC1vZi10eXBlKSB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIgLmxlZnQtcGFydCAud2lkZ2V0Om5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jdGEtd3JhcHBlciAubGVmdC1wYXJ0IC53aWRnZXQgaDIge1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAzLjQzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5zaXRlLWZvb3RlciAuZm9vdGVyLWN0YS13cmFwcGVyIC5sZWZ0LXBhcnQgLndpZGdldCBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWN0YS13cmFwcGVyIC5sZWZ0LXBhcnQgLndpZGdldCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWN0YS13cmFwcGVyIC5sZWZ0LXBhcnQgaDQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWN0YS13cmFwcGVyIC5yaWdodC1wYXJ0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY3RhLXdyYXBwZXIgLnJpZ2h0LXBhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jdGEtd3JhcHBlciAucmlnaHQtcGFydCBpbWcge1xuICAgIG1heC13aWR0aDogNi4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWZvb3RlciAuYWJvdXQtdXMgLmZvb3Rlci1jdGEtd3JhcHBlciAubGVmdC1wYXJ0IHtcbiAgICBtYXgtd2lkdGg6IDMwcmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaXRlLWZvb3RlciAuYWJvdXQtdXMgLmZvb3Rlci1jdGEtd3JhcHBlciAubGVmdC1wYXJ0IHtcbiAgICBtYXgtd2lkdGg6IDQyLjVyZW07XG4gIH1cbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDIyJSwgI2VlZSAyMiUpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMzMlLCAjZWVlIDMzJSk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAzOCUsICNlZWUgMzglKTtcbiAgfVxufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAubWlkX2Zvb3RlciB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIHBhZGRpbmc6IDMuNzVyZW0gMCAxLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLm1pZF9mb290ZXIge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAwIDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAubWlkX2Zvb3RlciB7XG4gICAgcGFkZGluZzogNC4zNzVyZW0gMCAxLjI1cmVtO1xuICB9XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5taWRfZm9vdGVyIC5jb2x1bW5zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLm1pZF9mb290ZXIgLmNvbHVtbnMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5taWRfZm9vdGVyIC5jb2x1bW5zIC5jb2x1bW4ge1xuICAgIGZsZXg6IDAgMSAyMCU7XG4gIH1cbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLm1pZF9mb290ZXIgLmNvbHVtbnMgLmNvbHVtbiAuc2l0ZS1icmFuZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5taWRfZm9vdGVyIC5jb2x1bW5zIC5jb2x1bW4gaDIsIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLm1pZF9mb290ZXIgLmNvbHVtbnMgLmNvbHVtbiBoMywgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAubWlkX2Zvb3RlciAuY29sdW1ucyAuY29sdW1uIGg0LCAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5taWRfZm9vdGVyIC5jb2x1bW5zIC5jb2x1bW4gaDUge1xuICBjb2xvcjogI0ZGNzY0QjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLm1pZF9mb290ZXIgLmNvbHVtbnMgLmNvbHVtbiBwLCAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5taWRfZm9vdGVyIC5jb2x1bW5zIC5jb2x1bW4gYSB7XG4gIGNvbG9yOiAjMzMzNTM3O1xuICBmb250LXNpemU6IDFyZW07XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAubWlkX2Zvb3RlciAuY29sdW1ucyAuY29sdW1uIHAsIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLm1pZF9mb290ZXIgLmNvbHVtbnMgLmNvbHVtbiBhIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5taWRfZm9vdGVyIC5jb2x1bW5zIC5jb2x1bW4gdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5taWRfZm9vdGVyIC5jb2x1bW5zIC5jb2x1bW4gdWwgbGkgYSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDAuMzEyNXJlbSAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAubWlkX2Zvb3RlciAuY29sdW1ucyAuY29sdW1uIHVsIGxpIGEge1xuICAgIHBhZGRpbmc6IDAuNDM3NXJlbSAwO1xuICB9XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5taWRfZm9vdGVyIC5jb2x1bW5zIC5jb2x1bW4gLndwLWJsb2NrLWdyb3VwIHtcbiAgcGFkZGluZzogMC40Mzc1cmVtIDA7XG4gIGdhcDogMC41cmVtO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAubWlkX2Zvb3RlciAuY29sdW1ucyAuY29sdW1uIC53cC1ibG9jay1ncm91cCAud3AtYmxvY2staW1hZ2Uge1xuICBmbGV4OiAwIDAgMS4yNXJlbTtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLm1pZF9mb290ZXIgLmNvbHVtbnMgLmNvbHVtbiAud2lkZ2V0IHtcbiAgbWFyZ2luOiAwO1xufVxuLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAuYm90dG9tX2Zvb3RlciB7XG4gIGJhY2tncm91bmQ6ICMzMzM1Mzc7XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5ib3R0b21fZm9vdGVyIC5zaXRlLWluZm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAuYm90dG9tX2Zvb3RlciAuc2l0ZS1pbmZvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLmJvdHRvbV9mb290ZXIgLnNpdGUtaW5mbyBwLCAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5ib3R0b21fZm9vdGVyIC5zaXRlLWluZm8gYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBtYXJnaW46IDA7XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5ib3R0b21fZm9vdGVyIC5zaXRlLWluZm8gLndpZGdldCB7XG4gIG1hcmdpbjogMDtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQgLmJvdHRvbV9mb290ZXIgLnNpdGUtaW5mbyB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50IC5ib3R0b21fZm9vdGVyIC5zaXRlLWluZm8gdWwgbGkgcCwgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudCAuYm90dG9tX2Zvb3RlciAuc2l0ZS1pbmZvIHVsIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndpZGdldCB7XG4gIG1hcmdpbjogMCAwIDEuNWVtO1xuICAvKiBNYWtlIHN1cmUgc2VsZWN0IGVsZW1lbnRzIGZpdCBpbiB3aWRnZXRzLiAqL1xufVxuLndpZGdldCBzZWxlY3Qge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5ibG9nLXJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYmxvZy1zaW5nbGUtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAyNi44NzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjM4LjMyZGVnLCAjQkNGNDkxIC0zMS42NCUsICM5REVBQTggMS45OSUsICM2RUQ1ODYgMzAuNTUlLCAjMkM0QTg1IDkwLjIlKTtcbn1cbi5ibG9nLXNpbmdsZS1oZWFkZXIgLmJzaC1tZXRhIC5lbnRyeV9tZXRhIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmNhdGVnb3J5LWJhZGdlLXZpZXcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIGJhY2tncm91bmQ6ICMyQzRBODU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gMDtcbn1cblxuLmVudHJ5X21ldGEge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5lbnRyeV9tZXRhIC5lbnRyeV9tZXRhX2luZm8ge1xuICBmb250LXdlaWdodDogMzAwO1xufVxuLmVudHJ5X21ldGEgLmVudHJ5X21ldGFfaW5mbyAucmVhZF90aW1lIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uYnNoLXNvY2lhbC1zaGFyZSAuc29jaWFsX3NoYXJlIC5rdF9zaGFyZV9zaG9ydGNvZGUgLmt0LXNvY2lhbHN0eWxlLXN0eWxlXzAzIGEge1xuICBib3JkZXI6IDAgbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG59XG4uYnNoLXNvY2lhbC1zaGFyZSAuc29jaWFsX3NoYXJlIC5rdF9zaGFyZV9zaG9ydGNvZGUgLmt0LXNvY2lhbHN0eWxlLXN0eWxlXzAzIGE6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuYXJ0aWNsZS5wb3N0IHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5hcnRpY2xlLnBvc3QgaDEsIGFydGljbGUucG9zdCBoMiwgYXJ0aWNsZS5wb3N0IGgzLCBhcnRpY2xlLnBvc3QgaDQsIGFydGljbGUucG9zdCBoNSwgYXJ0aWNsZS5wb3N0IGg2IHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLnNvY2lhbF9zaGFyZV9jb250YWluZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0VCRUJFQjtcbiAgcGFkZGluZzogMS44NzVyZW0gMDtcbiAgbWFyZ2luOiAxLjg3NXJlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDFyZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zb2NpYWxfc2hhcmVfY29udGFpbmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbi5zb2NpYWxfc2hhcmVfY29udGFpbmVyIC50aXRsZV93cmFwIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnNvY2lhbF9zaGFyZV9jb250YWluZXIgLnNvY2lhbF9zaGFyZV93cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBnYXA6IDFyZW07XG59XG4uc29jaWFsX3NoYXJlX2NvbnRhaW5lciAuc29jaWFsX3NoYXJlX3dyYXAgYSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnNvY2lhbF9zaGFyZV9jb250YWluZXIgLnNvY2lhbF9zaGFyZV93cmFwIGEgc3ZnIHtcbiAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgaGVpZ2h0OiAxLjYyNXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc29jaWFsX3NoYXJlX2NvbnRhaW5lciAuc29jaWFsX3NoYXJlX3dyYXAgYTpob3ZlciBzdmcge1xuICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG4uc29jaWFsX3NoYXJlX2NvbnRhaW5lciAuc29jaWFsX3NoYXJlX3dyYXAgYS5mYWNlYm9va19zaGFyZSBzdmcge1xuICBoZWlnaHQ6IDEuNDM3NXJlbTtcbn1cbi5zb2NpYWxfc2hhcmVfY29udGFpbmVyIC5zb2NpYWxfc2hhcmVfd3JhcCBhLmVtYWlsX3NoYXJlIHN2ZyB7XG4gIGhlaWdodDogMS43NXJlbTtcbn1cblxuLmF1dGhvci1ib3gge1xuICBiYWNrZ3JvdW5kOiAjRjZGOUZGO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMS4wNjI1cmVtO1xuICBwYWRkaW5nOiAxLjU2MjVyZW07XG59XG4uYXV0aG9yLWJveCAuYXV0aG9yLWJveC1pbWFnZSB7XG4gIGZsZXg6IDE7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIG1heC13aWR0aDogNi44NzVyZW07XG59XG4uYXV0aG9yLWJveCAuYXV0aG9yLWJveC1iaW8ge1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuNjI1cmVtO1xufVxuLmF1dGhvci1ib3ggLmF1dGhvci1ib3gtYmlvID4gZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwLjYyNXJlbTtcbn1cbi5hdXRob3ItYm94IC5hdXRob3ItYm94LWJpbyA+IGRpdiBoNSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbi5hdXRob3ItYm94IC5hdXRob3ItYm94LWJpbyA+IGRpdiBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzBFNjBDMztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbi5hdXRob3ItYm94IC5hdXRob3ItYm94LWRlc2NyaXB0aW9uIHtcbiAgZmxleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwLjYyNXJlbTtcbn1cbi5hdXRob3ItYm94IC5hdXRob3Itc2VjdGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHJnYmEoMjYsIDMwLCAzNCwgMC4yNTA5ODAzOTIyKTtcbn1cblxuLmF1dGhvci1zb2NpYWxzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjYyNXJlbTtcbn1cbi5hdXRob3Itc29jaWFscyBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmF1dGhvci1ib3gtc2lkZWJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMC42MjVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmF1dGhvci1ib3gtc2lkZWJhciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogY2FsYygoMTAwJSAtIDQ1cmVtIC0gNXJlbSkgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNyk7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuLmF1dGhvci1ib3gtc2lkZWJhciAucm91bmRlZF9pbWFnZSBpbWcge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1heC13aWR0aDogMy44MTI1cmVtO1xuICBtYXgtaGVpZ2h0OiAzLjgxMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uYXV0aG9yLWJveC1zaWRlYmFyIGg1IHtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbi5hdXRob3ItYm94LXNpZGViYXIgLnBvc2l0aW9uIHtcbiAgY29sb3I6ICMwRTYwQzM7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4uYXV0aG9yLWJveC1zaWRlYmFyIC5iaW8ge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi5zdWJzY3JpYmVfYm94IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4ZGVnLCAjQkNGNDkxIC0zMS42NCUsICM5REVBQTggMS45OSUsICM2RUQ1ODYgMzAuNTUlLCAjMkM0QTg1IDkwLjIlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgYm94LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgcGFkZGluZzogMi44MTI1cmVtIDVyZW0gMy40Mzc1cmVtIDVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW46IDMuNzVyZW0gMDtcbn1cbi5zdWJzY3JpYmVfYm94IGg1IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnN1YnNjcmliZV9ib3ggcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnN1YnNjcmliZV9ib3hfc2lkZWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zdWJzY3JpYmVfYm94X3NpZGViYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSA0NXJlbSAtIDVyZW0pIC8gMik7XG4gIH1cbn1cblxuLnNpbmdsZS1ibG9nLXJlbGF0ZWQtYXJ0aWNsZXMge1xuICBwYWRkaW5nOiAzLjc1cmVtIDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpbmdsZS1ibG9nLXJlbGF0ZWQtYXJ0aWNsZXMge1xuICAgIHBhZGRpbmc6IDQuMzc1cmVtIDA7XG4gIH1cbn1cbi5zaW5nbGUtYmxvZy1yZWxhdGVkLWFydGljbGVzIC5yZWxhdGVkLWFydGljbGVzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cbi5zaW5nbGUtYmxvZy1yZWxhdGVkLWFydGljbGVzIC5yZWxhdGVkLXBvc3RzLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDIuNXJlbTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2luZ2xlLWJsb2ctcmVsYXRlZC1hcnRpY2xlcyAucmVsYXRlZC1wb3N0cy13cmFwcGVyIHtcbiAgICBnYXA6IDIuMTg3NXJlbTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaW5nbGUtYmxvZy1yZWxhdGVkLWFydGljbGVzIC5yZWxhdGVkLXBvc3RzLXdyYXBwZXIge1xuICAgIGdhcDogMi44MTI1cmVtO1xuICB9XG59XG4uc2luZ2xlLWJsb2ctcmVsYXRlZC1hcnRpY2xlcyAucmVsYXRlZC1wb3N0cy13cmFwcGVyIC5yZWxhdGVkLWFydGljbGUge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAxMHB4IDE1cHggcmdiYSgxMTAsIDIxMywgMTM0LCAwLjEpKTtcbn1cbi5zaW5nbGUtYmxvZy1yZWxhdGVkLWFydGljbGVzIC5yZWxhdGVkLXBvc3RzLXdyYXBwZXIgLnJlbGF0ZWQtYXJ0aWNsZSAuaW1hZ2UtcGFydCB7XG4gIG1pbi1oZWlnaHQ6IDExLjU2MjVyZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4uc2luZ2xlLWJsb2ctcmVsYXRlZC1hcnRpY2xlcyAucmVsYXRlZC1wb3N0cy13cmFwcGVyIC5yZWxhdGVkLWFydGljbGUgLmNvbnRlbnQtcGFydCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zaW5nbGUtYmxvZy1yZWxhdGVkLWFydGljbGVzIC5yZWxhdGVkLXBvc3RzLXdyYXBwZXIgLnJlbGF0ZWQtYXJ0aWNsZSAuY29udGVudC1wYXJ0IC5wb3N0LXRpdGxlIHtcbiAgbWFyZ2luOiAwIDAgMC41NjI1cmVtIDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNpbmdsZS1ibG9nLXJlbGF0ZWQtYXJ0aWNsZXMgLnJlbGF0ZWQtcG9zdHMtd3JhcHBlciAucmVsYXRlZC1hcnRpY2xlIC5jb250ZW50LXBhcnQgLnBvc3QtdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDAuNzVyZW0gMDtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICB9XG59XG4uc2luZ2xlLWJsb2ctcmVsYXRlZC1hcnRpY2xlcyAucmVsYXRlZC1wb3N0cy13cmFwcGVyIC5yZWxhdGVkLWFydGljbGUgLmNvbnRlbnQtcGFydCAuZW50cnlfbWV0YSAuZW50cnlfbWV0YV9pbmZvIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogIzJGM0IzQjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5zaW5nbGUtYmxvZy1yZWxhdGVkLWFydGljbGVzIC5zcGxpZGVfX3RyYWNrIHtcbiAgcGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaW5nbGUtYmxvZy1yZWxhdGVkLWFydGljbGVzIC5zcGxpZGVfX3RyYWNrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoKDEwMCUgLSA0NS42MjVyZW0pIC8gMikgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2luZ2xlLWJsb2ctcmVsYXRlZC1hcnRpY2xlcyAuc3BsaWRlX190cmFjayB7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjUlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLnNpbmdsZS1ibG9nLXJlbGF0ZWQtYXJ0aWNsZXMgLnNwbGlkZV9fdHJhY2sge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygoMTAwJSAtIDg3LjVyZW0pIC8gMikgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAuc2luZ2xlLWJsb2ctcmVsYXRlZC1hcnRpY2xlcyAuc3BsaWRlX190cmFjayAuc3BsaWRlX19zbGlkZSB7XG4gICAgbWF4LWhlaWdodDogMjIuNXJlbTtcbiAgfVxufVxuXG5ib2R5LFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgY29sb3I6ICMzMzM1Mzc7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmE6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuYTpob3ZlciwgYTphY3RpdmUge1xuICBvdXRsaW5lOiAwO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB9XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMy40Mzc1cmVtO1xuICB9XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07XG4gIH1cbn1cblxuaDQge1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICB9XG59XG5cbmg1LCBoNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoNSwgaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICBoNSwgaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG5wIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuaHIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuZGZuLCBjaXRlLCBlbSwgaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAxLjVlbTtcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG5wcmUge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICBmb250LWZhbWlseTogXCJDb3VyaWVyIDEwIFBpdGNoXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxNi44NzVweDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1hcmdpbi1ib3R0b206IDEuNmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiAxLjZlbTtcbn1cblxuY29kZSwga2JkLCB0dCwgdmFyIHtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNi44NzVweDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG59XG5cbmFiYnIsIGFjcm9ueW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICM2NjY7XG4gIGN1cnNvcjogaGVscDtcbn1cblxubWFyaywgaW5zIHtcbiAgYmFja2dyb3VuZDogI2ZmZjljMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5iaWcge1xuICBmb250LXNpemU6IDEyNSU7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjYyNWVtO1xufVxuXG4uYWNjZW50IHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5hY2NlbnQuc21hbGwge1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiQXZlbmlyIE5leHRcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9BdmVuaXJOZXh0TFRQcm8tUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQXZlbmlyTmV4dExUUHJvLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJBdmVuaXIgTmV4dFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0F2ZW5pck5leHRMVFByby1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9BdmVuaXJOZXh0TFRQcm8tQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJBdmVuaXIgTmV4dFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0F2ZW5pck5leHRMVFByby1JdC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQXZlbmlyTmV4dExUUHJvLUl0LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1SZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtTWVkaXVtLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtTWVkaXVtLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1TZW1pQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LVNlbWlCb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIgeyAvKiBJbmhlcml0IGJveC1zaXppbmcgdG8gbWFrZSBpdCBlYXNpZXIgdG8gY2hhbmdlIHRoZSBwcm9wZXJ0eSBmb3IgY29tcG9uZW50cyB0aGF0IGxldmVyYWdlIG90aGVyIGJlaGF2aW9yOyBzZWUgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvICovXG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbnVsLCBvbCB7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMCAwIDAgMXJlbTtcbn1cblxub2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG5saSA+IHVsLFxubGkgPiBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAxLjVlbTtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuZGQge1xuICBtYXJnaW46IDAgMS41ZW0gMS41ZW07XG59XG5cbi5wYWdpbmF0aW9uX3dyYXAge1xuICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcbn1cbi5wYWdpbmF0aW9uX3dyYXAgdWwge1xuICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGUgbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ucGFnaW5hdGlvbl93cmFwIHVsIGxpLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG59XG4ucGFnaW5hdGlvbl93cmFwIHVsIGxpIGEge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDdweCA5cHggNXB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwIDRweDtcbn1cblxudGFibGUge1xuICBtYXJnaW46IDAgMCAxLjVlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50YWJsZS13cmFwcGVyIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWFyZ2luOiAwIDAgMjBweDtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEd1dGVuYmVyZ1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmhhcy13aGl0ZS1jb2xvciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4uaGFzLXdoaXRlLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxuXG4uaGFzLWJsYWNrLWNvbG9yIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi5oYXMtcHJpbWFyeS1jb2xvci1jb2xvciB7XG4gIGNvbG9yOiAjMzMzNTM3O1xufVxuXG4uaGFzLXByaW1hcnktY29sb3ItYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM1Mzc7XG59XG5cbi5oYXMtcHJpbWFyeS1jb2xvci1saWdodC1jb2xvciB7XG4gIGNvbG9yOiAjNzM3MzczO1xufVxuXG4uaGFzLXByaW1hcnktY29sb3ItbGlnaHQtYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3MzczNzM7XG59XG5cbi5oYXMtc2Vjb25kYXJ5LWNvbG9yLWNvbG9yIHtcbiAgY29sb3I6ICNGMEY5RkY7XG59XG5cbi5oYXMtc2Vjb25kYXJ5LWNvbG9yLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGOUZGO1xufVxuXG4vKipcbiAqIEZvbnQgc2l6ZXMuXG4gKlxuICogVHdvIHNldHMsIG9uY2UgZm9yIG1vYmlsZSBhbmQgb25lIGZvciBkZXNrdG9wLiBGZWVsIGZyZWUgdG8gYWRkIG9yIHJlbW92ZSBpZiBuZWVkZWRcbiAqL1xuLmhhcy14cy1mb250LXNpemUge1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xufVxuXG4uaGFzLXMtZm9udC1zaXplIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLmhhcy1kLWZvbnQtc2l6ZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmhhcy1tLWZvbnQtc2l6ZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmhhcy1sLWZvbnQtc2l6ZSB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG59XG5cbi5oYXMteGwtZm9udC1zaXplIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuXG4uaGFzLXh4bC1mb250LXNpemUge1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbi5oYXMteHh4bC1mb250LXNpemUge1xuICBmb250LXNpemU6IDIuMjVyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGFzLXhzLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgfVxuICAuaGFzLXMtZm9udC1zaXplIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG4gIC5oYXMtZC1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICAuaGFzLW0tZm9udC1zaXplIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgLmhhcy1sLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgfVxuICAuaGFzLXhsLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG4gIC5oYXMteHhsLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gIC5oYXMteHh4bC1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuaGFzLXhzLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG4gIC5oYXMtcy1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cbiAgLmhhcy1kLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIC5oYXMtbS1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbiAgLmhhcy1sLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgfVxuICAuaGFzLXhsLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgfVxuICAuaGFzLXh4bC1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG4gIC5oYXMteHh4bC1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogMy40Mzc1cmVtO1xuICB9XG59XG4ud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtcy1zZWN0aW9uLXBhZGRpbmcge1xuICBwYWRkaW5nOiAxLjI1cmVtIDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLndwLWJsb2NrLWdyb3VwLmlzLXN0eWxlLXMtc2VjdGlvbi1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtcy1zZWN0aW9uLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDMuNzVyZW0gMDtcbiAgfVxufVxuXG4ud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtbS1zZWN0aW9uLXBhZGRpbmcge1xuICBwYWRkaW5nOiAyLjVyZW0gMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtbS1zZWN0aW9uLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDMuNzVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtbS1zZWN0aW9uLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDVyZW0gMDtcbiAgfVxufVxuXG4ud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtbC1zZWN0aW9uLXBhZGRpbmcge1xuICBwYWRkaW5nOiAzLjc1cmVtIDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLndwLWJsb2NrLWdyb3VwLmlzLXN0eWxlLWwtc2VjdGlvbi1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiA1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLndwLWJsb2NrLWdyb3VwLmlzLXN0eWxlLWwtc2VjdGlvbi1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiA2LjI1cmVtIDA7XG4gIH1cbn1cblxuLndwLWJsb2NrLWltYWdlLmlzLXN0eWxlLW5ld3Mtc2luZ2xlIHtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAud3AtYmxvY2staW1hZ2UuaXMtc3R5bGUtbmV3cy1zaW5nbGUge1xuICAgIHBhZGRpbmc6IDNyZW0gMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAud3AtYmxvY2staW1hZ2UuaXMtc3R5bGUtbmV3cy1zaW5nbGUge1xuICAgIHBhZGRpbmc6IDRyZW0gMDtcbiAgfVxufVxuLndwLWJsb2NrLWltYWdlLmlzLXN0eWxlLW5ld3Mtc2luZ2xlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnZlcnRpY2FsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udmVydGljYWwtb3ZlcmxheTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDI4JSwgIzczNzM3MyAxMDAlKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi52ZXJ0aWNhbC1vdmVybGF5LWhvbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udmVydGljYWwtb3ZlcmxheS1ob21lOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg2OCwgNjUsIDY1LCAwLjg1KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA1MCUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnZlcnRpY2FsLW92ZXJsYXktdjIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udmVydGljYWwtb3ZlcmxheS12Mjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMzMzM1MzcgNC43JSwgcmdiYSg1MSwgNTMsIDU1LCAwKSA0NC42MyUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogMTtcbn1cblxuLnZlcnRpY2FsLW92ZXJsYXktdjMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udmVydGljYWwtb3ZlcmxheS12Mzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwKSAzLjQlLCAjMDAwMDAwIDEzMS43OCUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnZlcnRpY2FsLW92ZXJsYXktdjQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udmVydGljYWwtb3ZlcmxheS12NDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwKSAzLjQlLCAjMDAwMDAwIDEzNSUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmZyb3N0ZWQtZ2xhc3Mge1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNzVweCk7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDc1cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUxLCA1MywgNTUsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbn1cblxuLmZyb3N0ZWQtZ2xhc3Mtd2hpdGUge1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNzVweCk7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDc1cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbn1cblxuLmluZGVudC1ibG9jay10b3Age1xuICBtYXJnaW4tdG9wOiAtNDVweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmluZGVudC1ibG9jay10b3Age1xuICAgIG1hcmdpbi10b3A6IC0xMjBweDtcbiAgfVxufVxuXG4uaW5kZW50LWJsb2NrLXRvcC14MiB7XG4gIG1hcmdpbi10b3A6IC0xNjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MDBweCkge1xuICAuaW5kZW50LWJsb2NrLXRvcC14MiB7XG4gICAgbWFyZ2luLXRvcDogLTE0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmluZGVudC1ibG9jay10b3AteDIge1xuICAgIG1hcmdpbi10b3A6IC0xMjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaW5kZW50LWJsb2NrLXRvcC14MiB7XG4gICAgbWFyZ2luLXRvcDogLTE4MHB4O1xuICB9XG59XG5cbi5pbmRlbnQtYmxvY2stYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogLTYwcHg7XG59XG4uc2Vjb25kYXJ5X3dpZHRoIHtcbiAgbWF4LXdpZHRoOiA3Mi41cmVtICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xufVxuXG4uaGFsZi13aWR0aCB7XG4gIGdhcDogMS41cmVtO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB6LWluZGV4OiAyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaGFsZi13aWR0aCB7XG4gICAgZ2FwOiAyLjVyZW07XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuLmhhbGYtd2lkdGggPiAqIHtcbiAgZmxleDogMTtcbn1cblxuLnN0aWNrLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAycmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGljay1ib3R0b20ge1xuICAgIGJvdHRvbTogNXJlbTtcbiAgfVxufVxuXG4ub2JqLWZpdC1jb3ZlciB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLm9iai1maXQtY292ZXIgaW1nIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5taW4taGVpZ2h0LTYwMCB7XG4gIG1pbi1oZWlnaHQ6IDMxLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5taW4taGVpZ2h0LTYwMCB7XG4gICAgbWluLWhlaWdodDogMzcuNXJlbTtcbiAgfVxufVxuLm1pbi1oZWlnaHQtNjAwIGltZyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDMxLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5taW4taGVpZ2h0LTYwMCBpbWcge1xuICAgIG1pbi1oZWlnaHQ6IDM3LjVyZW07XG4gIH1cbn1cblxuLm1heC1oZWlnaHQtMTAwdmgge1xuICBtYXgtaGVpZ2h0OiAxMDB2aDtcbn1cbi5tYXgtaGVpZ2h0LTEwMHZoIGltZyB7XG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xufVxuXG4ud3AtYmxvY2stY292ZXIuYWxpZ25mdWxsIHtcbiAgcGFkZGluZzogMDtcbn1cbi53cC1ibG9jay1jb3Zlci5hbGlnbmZ1bGwgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNvbHVtbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG59XG4uY29sdW1ucyAuY29sdW1uIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuOTM3NXJlbTtcbiAgZmxleDogMSAxIDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbHVtbnMgLmNvbHVtbiB7XG4gICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2x1bW5zLmdyaWRfMiAuY29sdW1uIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbHVtbnMuZ3JpZF8zIC5jb2x1bW4ge1xuICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sdW1ucy5ncmlkXzQgLmNvbHVtbiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jb2x1bW5zLmdyaWRfNCAuY29sdW1uIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sdW1ucy5ncmlkXzUgLmNvbHVtbiB7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jb2x1bW5zLmdyaWRfNSAuY29sdW1uIHtcbiAgICB3aWR0aDogMjAlO1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gIH1cbn1cblxuLmNsZWFyLW1hcmdpbiB7XG4gIG1hcmdpbjogMDtcbn1cblxuLndwLWJsb2NrLXJhbmstbWF0aC10b2MtYmxvY2sge1xuICBiYWNrZ3JvdW5kOiAjRjZGOUZGO1xuICBwYWRkaW5nOiAxLjU2MjVyZW0gMi4xODc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC53cC1ibG9jay1yYW5rLW1hdGgtdG9jLWJsb2NrIHtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMy40Mzc1cmVtO1xuICB9XG59XG4ud3AtYmxvY2stcmFuay1tYXRoLXRvYy1ibG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0xMDAlO1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYigyNTUsIDI1NSwgMjU1KSAwJSwgcmdiKDI1NSwgMjU1LCAyNTUpIDg1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg5OTYxOTIyMjcpIDkwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc5NTk3Nzc2NjEpIDk1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIwMjE0MDIzMTEpIDEwMCUpO1xuICB6LWluZGV4OiAyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLndwLWJsb2NrLXJhbmstbWF0aC10b2MtYmxvY2sgaDIge1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIGZvbnQtc2l6ZTogMS42MjVyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC53cC1ibG9jay1yYW5rLW1hdGgtdG9jLWJsb2NrIGgyIHtcbiAgICBtYXJnaW46IDAgMCAyLjgxMjVyZW0gMDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cbi53cC1ibG9jay1yYW5rLW1hdGgtdG9jLWJsb2NrIHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxLjg3NXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi53cC1ibG9jay1yYW5rLW1hdGgtdG9jLWJsb2NrIHVsIGxpIHtcbiAgY291bnRlci1pbmNyZW1lbnQ6IHN0ZXAtY291bnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMUExRTIyO1xufVxuLndwLWJsb2NrLXJhbmstbWF0aC10b2MtYmxvY2sgdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogY291bnRlcihzdGVwLWNvdW50ZXIpIFwiLlwiO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbn1cbi53cC1ibG9jay1yYW5rLW1hdGgtdG9jLWJsb2NrIHVsIGxpIGEge1xuICBjb2xvcjogIzFBMUUyMjtcbiAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGFibGUtb2YtY29udGVudHMtc2lkZWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC50YWJsZS1vZi1jb250ZW50cy1zaWRlYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiBjYWxjKCgxMDAlIC0gNDVyZW0gLSA1cmVtKSAvIDIpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLnRhYmxlLW9mLWNvbnRlbnRzLXNpZGViYXIgaDIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIC50YWJsZS1vZi1jb250ZW50cy1zaWRlYmFyIC5jb250ZW50LWVsZW1lbnQtcm93Om5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIH1cbiAgLnRhYmxlLW9mLWNvbnRlbnRzLXNpZGViYXIgLmNvbnRlbnQtZWxlbWVudC1yb3cuYWN0aXZlIC5jb250ZW50LWhlYWRpbmcgc3BhbiB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLnRhYmxlLW9mLWNvbnRlbnRzLXNpZGViYXIgLmNvbnRlbnQtZWxlbWVudC1yb3cuYWN0aXZlIC5jb250ZW50LWhlYWRpbmcgc3BhbjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGJsdWU7XG4gIH1cbiAgLnRhYmxlLW9mLWNvbnRlbnRzLXNpZGViYXIgLmNvbnRlbnQtZWxlbWVudC1yb3cuYWN0aXZlIC5jb250ZW50LWhlYWRpbmcgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLnRhYmxlLW9mLWNvbnRlbnRzLXNpZGViYXIgLmNvbnRlbnQtZWxlbWVudC1yb3cgLmNvbnRlbnQtaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzFBMUUyMjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMS4yNXJlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC50YWJsZS1vZi1jb250ZW50cy1zaWRlYmFyIC5jb250ZW50LWVsZW1lbnQtcm93IC5jb250ZW50LWhlYWRpbmcgc3BhbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMS4yNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMxMjVyZW07XG4gIH1cbiAgLnRhYmxlLW9mLWNvbnRlbnRzLXNpZGViYXIgLmNvbnRlbnQtZWxlbWVudC1yb3cgLmNvbnRlbnQtaGVhZGluZyBzcGFuOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiByZWQ7XG4gICAgd2lkdGg6IDEuMzEyNXJlbTtcbiAgICBoZWlnaHQ6IDEuMzEyNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxuICAudGFibGUtb2YtY29udGVudHMtc2lkZWJhciAuY29udGVudC1lbGVtZW50LXJvdyAuY29udGVudC1oZWFkaW5nIGEge1xuICAgIGNvbG9yOiAjMUExRTIyO1xuICB9XG59XG5cbi5oaWdobGlnaHQtaWNvbnMge1xuICBtYXgtd2lkdGg6IDcyLjVyZW0gIWltcG9ydGFudDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5oaWdobGlnaHQtaWNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XG4gIHBhZGRpbmc6IDFweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkxLjQ0ZGVnLCAjRkZGRkZGIC0yLjEzJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA5Ny4wMiUpO1xuICAtd2Via2l0LW1hc2s6IGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCkgY29udGVudC1ib3gsIGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7XG4gIC13ZWJraXQtbWFzay1jb21wb3NpdGU6IHhvcjtcbiAgbWFzay1jb21wb3NpdGU6IGV4Y2x1ZGU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5oaWdobGlnaHQtaWNvbnMge1xuICAgIHBhZGRpbmc6IDIuNXJlbTtcbiAgICBnYXA6IDJyZW07XG4gIH1cbn1cbi5oaWdobGlnaHQtaWNvbnMgcCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBjb2xvcjogIzMzMzUzNztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmhpZ2hsaWdodC1pY29ucyBwIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG4uaGlnaGxpZ2h0LWljb25zIC53cC1ibG9jay1ncm91cF9faW5uZXItY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjg3NXJlbTtcbn1cbi5oaWdobGlnaHQtaWNvbnMgLndwLWJsb2NrLWdyb3VwIHtcbiAgdHJhbnNpdGlvbjogc2NhbGUgMC42cyBlYXNlLWluLW91dDtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhpZ2hsaWdodC1pY29ucyAud3AtYmxvY2stZ3JvdXA6aG92ZXIge1xuICBzY2FsZTogMS4xNTtcbn1cblxuLmhhbGYtc2l6ZS1wYXJ0LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMi41cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaGFsZi1zaXplLXBhcnQtd3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuLmhhbGYtc2l6ZS1wYXJ0LXdyYXBwZXIgLmxlZnQtcGFydCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAyLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaGFsZi1zaXplLXBhcnQtd3JhcHBlciAubGVmdC1wYXJ0IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4uaGFsZi1zaXplLXBhcnQtd3JhcHBlciAubGVmdC1wYXJ0IC5zZWN0aW9uLXRhZyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTlGQkY7XG4gIGJvcmRlci1yYWRpdXM6IDMuNzVyZW07XG4gIGNvbG9yOiAjOTk5RkJGO1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAycmVtO1xufVxuLmhhbGYtc2l6ZS1wYXJ0LXdyYXBwZXIgLmxlZnQtcGFydCAuc2VjdGlvbi10aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDMuNDM3NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5oYWxmLXNpemUtcGFydC13cmFwcGVyIC5sZWZ0LXBhcnQgLnNlY3Rpb24tdGl0bGUge1xuICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG59XG4uaGFsZi1zaXplLXBhcnQtd3JhcHBlciAucmlnaHQtcGFydCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaGFsZi1zaXplLXBhcnQtd3JhcHBlciAucmlnaHQtcGFydCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uc2QtcHJvZHVjdC1jYXRhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICBnYXA6IDIuNXJlbTtcbiAgbWluLWhlaWdodDogMzIuNXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNkLXByb2R1Y3QtY2F0YWxvZyB7XG4gICAgZ2FwOiAzLjc1cmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIH1cbn1cbi5zZC1wcm9kdWN0LWNhdGFsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogIzMzMzUzNztcbiAgd2lkdGg6IDIwMHZ3O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC01MCU7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNkLXByb2R1Y3QtY2F0YWxvZzpiZWZvcmUge1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEwMHB4KTtcbiAgfVxufVxuLnNkLXByb2R1Y3QtY2F0YWxvZyAubGVmdC1wYXJ0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDIuNXJlbTtcbiAgcGFkZGluZzogMnJlbSAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuc2QtcHJvZHVjdC1jYXRhbG9nIC5sZWZ0LXBhcnQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNkLXByb2R1Y3QtY2F0YWxvZyAubGVmdC1wYXJ0IHtcbiAgICBnYXA6IDVyZW07XG4gICAgcGFkZGluZzogMy4xMjVyZW07XG4gIH1cbn1cbi5zZC1wcm9kdWN0LWNhdGFsb2cgLmxlZnQtcGFydCAuc2VjdGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5zZC1wcm9kdWN0LWNhdGFsb2cgLmxlZnQtcGFydCAuYnJvY2h1cmVzLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMS4yNXJlbTtcbn1cbi5zZC1wcm9kdWN0LWNhdGFsb2cgLmxlZnQtcGFydCAuYnJvY2h1cmVzLWxpc3QgYSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNzVyZW07XG59XG4uc2QtcHJvZHVjdC1jYXRhbG9nIC5sZWZ0LXBhcnQgLmJyb2NodXJlcy1saXN0IGEgLmRvd25sb2FkLWljb24ge1xuICBwYWRkaW5nOiAwLjQzNzVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWluLXdpZHRoOiAycmVtO1xuICB3aWR0aDogMnJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xufVxuLnNkLXByb2R1Y3QtY2F0YWxvZyAubGVmdC1wYXJ0IC5icm9jaHVyZXMtbGlzdCBhIC5kb3dubG9hZC1pY29uIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbn1cbi5zZC1wcm9kdWN0LWNhdGFsb2cgLmxlZnQtcGFydCAuYnJvY2h1cmVzLWxpc3QgYSBzcGFuIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2QtcHJvZHVjdC1jYXRhbG9nIC5yaWdodC1wYXJ0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uc2QtcHJvZHVjdC1jYXRhbG9nIC5yaWdodC1wYXJ0IC5mbGlwYm9vayB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubS10LTEwMCB7XG4gIG1hcmdpbi10b3A6IDYuMjVyZW07XG59XG5cbi5jYXJkcy13cmFwcGVyIHtcbiAgcGFkZGluZzogMy43NXJlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jYXJkcy13cmFwcGVyIHtcbiAgICBnYXA6IDIuNXJlbTtcbiAgICBwYWRkaW5nOiA3LjVyZW0gMDtcbiAgfVxufVxuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0OTAxOTYwNzgpO1xuICBtYXgtaGVpZ2h0OiAzMi41cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhc3BlY3QtcmF0aW86IDMzLzIzO1xufVxuLmNhcmQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsICMzMzM1MzcgNC43JSwgcmdiYSg1MSwgNTMsIDU1LCAwKSA0NC42MyUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZS1pbi1vdXQ7XG4gIG9wYWNpdHk6IDE7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jYXJkOjphZnRlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU2OHB4KSB7XG4gIC5jYXJkIHtcbiAgICBhc3BlY3QtcmF0aW86IDM1LzIwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhcmQge1xuICAgIGFzcGVjdC1yYXRpbzogaW5pdGlhbDtcbiAgICBtaW4taGVpZ2h0OiAxOC43NXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJkLmhhbGYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNhcmQuaGFsZiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJkLmJpZyB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjYlIC0gNnB4KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jYXJkLmJpZyB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjYlIC0gMTNweCk7XG4gIH1cbn1cbi5jYXJkLmZ1bGwge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FyZC5zbWFsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gMTRweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2FyZC5zbWFsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gMjdweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2FyZDpob3Zlcjpub3QoLm5vLWhvdmVyKTphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAuY2FyZDpob3Zlcjpub3QoLm5vLWhvdmVyKSBpbWcge1xuICAgIHNjYWxlOiAxLjI7XG4gIH1cbiAgLmNhcmQ6aG92ZXI6bm90KC5uby1ob3ZlcikgLmNhcmQtaG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCk7XG4gIH1cbn1cbi5jYXJkIC5jYXJkLWNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMS4yNXJlbTtcbiAgbGVmdDogMDtcbiAgY29sb3I6IHdoaXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FyZCAuY2FyZC1jb250ZW50IHtcbiAgICB0b3A6IDIuODEyNXJlbTtcbiAgfVxufVxuLmNhcmQgLmNhcmQtY29udGVudCAuY2F0ZWdvcnktdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FyZCAuY2FyZC1jb250ZW50IC5jYXRlZ29yeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuY2FyZCAuY2FyZC1jb250ZW50IC5jYXRlZ29yeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgfVxufVxuLmNhcmQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB0cmFuc2l0aW9uOiBzY2FsZSAwLjZzIGVhc2UtaW4tb3V0O1xufVxuXG4uY2FyZC1ob3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxLjI1cmVtO1xuICBsZWZ0OiAwO1xuICBjb2xvcjogcmVkO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQ7XG4gIHotaW5kZXg6IDI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jYXJkLWhvdmVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIGdhcDogMC4yNXJlbTtcbiAgfVxufVxuLmNhcmQtaG92ZXIgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDAuMTg3NXJlbSAxLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJkLWhvdmVyIGEge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2FyZC1ob3ZlciBhIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjM3NXJlbSAyLjVyZW07XG4gIH1cbn1cblxuLmRmLWJnIHtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubmV3cy1oZWFkZXIge1xuICBwYWRkaW5nOiAxLjVyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5uZXdzLWhlYWRlciB7XG4gICAgcGFkZGluZzogNXJlbSA2LjI1cmVtO1xuICB9XG59XG5cbi5waWxsIHtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC42MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMzM1Mzc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJvcmRlci1yYWRpdXM6IDIuNXJlbTtcbiAgY29sb3I6ICMzMzM1Mzc7XG59XG5cbi5uZXdzLXdyYXBwZXIge1xuICBwYWRkaW5nOiAyLjVyZW0gMCA2LjI1cmVtIDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5uZXdzLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDRyZW0gMCA4Ljc1cmVtIDA7XG4gIH1cbn1cbi5uZXdzLXdyYXBwZXIgLmZhY2V0d3AtZmFjZXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDFyZW07XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC1tcy1zY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xufVxuLm5ld3Mtd3JhcHBlciAuZmFjZXR3cC1mYWNldCAuZmFjZXR3cC1yYWRpbyB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjg3NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzMzMzUzNztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMi41cmVtO1xuICBjb2xvcjogIzMzMzUzNztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm5ld3Mtd3JhcHBlciAuZmFjZXR3cC1mYWNldCAuZmFjZXR3cC1yYWRpbyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4ubmV3cy13cmFwcGVyIC5mYWNldHdwLWZhY2V0IC5mYWNldHdwLXJhZGlvLmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kOiAjMzMzNTM3O1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uZXdzLXdyYXBwZXIgLmZhY2V0d3AtZmFjZXQgLmZhY2V0d3AtcmFkaW8gLmZhY2V0d3AtZGlzcGxheS12YWx1ZSB7XG4gIHBhZGRpbmc6IDA7XG59XG4ubmV3cy13cmFwcGVyIC5mYWNldHdwLWZhY2V0IC5mYWNldHdwLXJhZGlvIC5mYWNldHdwLWNvdW50ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm5ld3Mtd3JhcHBlciAucG9zdHMtaG9sZGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgZ2FwOiAxLjVyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5ld3Mtd3JhcHBlciAucG9zdHMtaG9sZGVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5uZXdzLXdyYXBwZXIgLnBvc3RzLWhvbGRlciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBnYXA6IDIuNXJlbTtcbiAgfVxufVxuLm5ld3Mtd3JhcHBlciAucG9zdHMtaG9sZGVyIC5wb3N0LWNhcmQge1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgYm94LXNoYWRvdzogMHB4IDRweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQ5MDE5NjA3OCk7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5uZXdzLXdyYXBwZXIgLnBvc3RzLWhvbGRlciAucG9zdC1jYXJkIGltZyB7XG4gIGFzcGVjdC1yYXRpbzogMS8wLjc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbn1cbi5uZXdzLXdyYXBwZXIgLnBvc3RzLWhvbGRlciAucG9zdC1jYXJkIC5wb3N0LWluZm8ge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuLm5ld3Mtd3JhcHBlciAucG9zdHMtaG9sZGVyIC5wb3N0LWNhcmQgLnBvc3QtaW5mbyAubWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm5ld3Mtd3JhcHBlciAucG9zdHMtaG9sZGVyIC5wb3N0LWNhcmQgLnBvc3QtaW5mbyAubWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICB9XG59XG4ubmV3cy13cmFwcGVyIC5wb3N0cy1ob2xkZXIgLnBvc3QtY2FyZCAucG9zdC1pbmZvIC5tZXRhIC5yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC43NXJlbTtcbn1cbi5uZXdzLXdyYXBwZXIgLnBvc3RzLWhvbGRlciAucG9zdC1jYXJkIC5wb3N0LWluZm8gLnBvc3QtdGl0bGUge1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xuICBjb2xvcjogIzMzMzUzNztcbiAgLS1tYXgtbGluZXM6IDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IHZhcigtLW1heC1saW5lcyk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5uZXdzLXdyYXBwZXIgLnBvc3RzLWhvbGRlciAucG9zdC1jYXJkIC5wb3N0LWluZm8gLnBvc3QtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICB9XG59XG5cbi5zaW5nbGUtYmxvZy5uZXdzIHtcbiAgbWFyZ2luLXRvcDogMy4xMjVyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpbmdsZS1ibG9nLm5ld3Mge1xuICAgIG1hcmdpbi10b3A6IDMuNzVyZW07XG4gIH1cbn1cbi5zaW5nbGUtYmxvZy5uZXdzIC5tZXRhIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxcmVtO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2luZ2xlLWJsb2cubmV3cyAubWV0YSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBnYXA6IDJyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuLnNpbmdsZS1ibG9nLm5ld3MgLm1ldGEgLnJpZ2h0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxcmVtO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnNpbmdsZS1ibG9nLm5ld3MgcCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbi5oaWdobGlnaHQtdGV4dCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93IHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB3aWR0aDogM3JlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogIzMzMzUzNztcbn1cbi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdyBzdmcgcGF0aCB7XG4gIGZpbGw6ICNmZmY7XG59XG4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3cuc3BsaWRlX19hcnJvdy0tcHJldiB7XG4gIGxlZnQ6IDNyZW07XG59XG4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3cuc3BsaWRlX19hcnJvdy0tbmV4dCB7XG4gIHJpZ2h0OiAzcmVtO1xufVxuXG4ucHVsc2Uge1xuICBvcGFjaXR5OiAwOyAvKiBIaWRlIHRoZSBlbGVtZW50IGJ1dCByZXNlcnZlIHNwYWNlICovXG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgLyogU2V0IHRoZSBpbml0aWFsIHRyYW5zZm9ybSB0byBtYXRjaCB0aGUgYW5pbWF0aW9uIHN0YXJ0ICovXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLW91dDsgLyogT3B0aW9uYWw6IGZhZGUgaW4gZWZmZWN0IG9uIGluaXRpYWwgbG9hZCAqL1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgdHJhbnNmb3JtOyAvKiBJbmZvcm0gdGhlIGJyb3dzZXIgYWJvdXQgdXBjb21pbmcgY2hhbmdlcyAqL1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1jb250YWluZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwcHgpOyAvKiBNYXRjaGVzIHRoZSBpbml0aWFsIHN0YXRlIGluIHRoZSBHU0FQIGFuaW1hdGlvbiAqL1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0OyAvKiBPcHRpb25hbDogc21vb3RoIGluaXRpYWwgbG9hZCAqL1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07IC8qIFByZXBhcmUgdGhlIGJyb3dzZXIgZm9yIHRoZSBhbmltYXRpb24gKi9cbiAgfVxufVxuXG4udGV4dC1jb250ZW50IHtcbiAgb3BhY2l0eTogMDsgLyogU3RhcnQgd2l0aCBvcGFjaXR5IDAgYnV0IHJlc2VydmUgc3BhY2UgKi9cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHB4KTsgLyogTWF0Y2ggdGhlIGluaXRpYWwgdHJhbnNmb3JtIGluIHRoZSBhbmltYXRpb24gKi9cbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybTsgLyogT3B0aW1pemUgZm9yIHRoZSB1cGNvbWluZyBjaGFuZ2VzICovXG59XG5cbi5zbGlkZS1mcm9tLWJvdHRvbSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgb3BhY2l0eTogMC40O1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgdHJhbnNmb3JtO1xufVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4uaGlkZGVuLWgxdGFnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OXB4O1xuICB0b3A6IC05OTk5cHg7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuYnV0dG9uOm5vdCguYmxvY2stZWRpdG9yLWJ1dHRvbi1ibG9jay1hcHBlbmRlcik6bm90KC5jb21wb25lbnRzLWJ1dHRvbik6bm90KC5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2UpLFxuLmJ1dHRvbixcbmlucHV0W3R5cGU9YnV0dG9uXSxcbmlucHV0W3R5cGU9cmVzZXRdLFxuaW5wdXRbdHlwZT1zdWJtaXRdLFxuLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGJvcmRlcjogMCBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgY29sb3I6ICMzMzM1Mzc7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogMC44MTI1cmVtIDIuMTg3NXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgbWluLXdpZHRoOiA4Ljc1cmVtO1xufVxuYnV0dG9uOm5vdCguYmxvY2stZWRpdG9yLWJ1dHRvbi1ibG9jay1hcHBlbmRlcik6bm90KC5jb21wb25lbnRzLWJ1dHRvbik6bm90KC5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2UpOmRpc2FibGVkLCBidXR0b246bm90KC5ibG9jay1lZGl0b3ItYnV0dG9uLWJsb2NrLWFwcGVuZGVyKTpub3QoLmNvbXBvbmVudHMtYnV0dG9uKTpub3QoLnNwbGlkZV9fcGFnaW5hdGlvbl9fcGFnZSlbZGlzYWJsZWRdLFxuYnV0dG9uOm5vdCguYmxvY2stZWRpdG9yLWJ1dHRvbi1ibG9jay1hcHBlbmRlcik6bm90KC5jb21wb25lbnRzLWJ1dHRvbik6bm90KC5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2UpIC5kaXNhYmxlZCxcbi5idXR0b246ZGlzYWJsZWQsXG4uYnV0dG9uW2Rpc2FibGVkXSxcbi5idXR0b24gLmRpc2FibGVkLFxuaW5wdXRbdHlwZT1idXR0b25dOmRpc2FibGVkLFxuaW5wdXRbdHlwZT1idXR0b25dW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9YnV0dG9uXSAuZGlzYWJsZWQsXG5pbnB1dFt0eXBlPXJlc2V0XTpkaXNhYmxlZCxcbmlucHV0W3R5cGU9cmVzZXRdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9cmVzZXRdIC5kaXNhYmxlZCxcbmlucHV0W3R5cGU9c3VibWl0XTpkaXNhYmxlZCxcbmlucHV0W3R5cGU9c3VibWl0XVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPXN1Ym1pdF0gLmRpc2FibGVkLFxuLndwLWJsb2NrLWJ1dHRvbl9fbGluazpkaXNhYmxlZCxcbi53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLFxuLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5kZWZhdWx0LWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgYmFja2dyb3VuZDogIzMzMzUzNztcbiAgcGFkZGluZzogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjRUJGM0ZGO1xufVxuXG4uZGFyay1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC13cmFwOiBub3dyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzO1xufVxuLmRhcmstYnV0dG9uOmhvdmVyLCAuZGFyay1idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWExYTFhO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ud3BjZjctc3VibWl0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzM3MzczO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG5pbnB1dFt0eXBlPXRleHRdLFxuaW5wdXRbdHlwZT1lbWFpbF0sXG5pbnB1dFt0eXBlPXVybF0sXG5pbnB1dFt0eXBlPXBhc3N3b3JkXSxcbmlucHV0W3R5cGU9c2VhcmNoXSxcbmlucHV0W3R5cGU9bnVtYmVyXSxcbmlucHV0W3R5cGU9dGVsXSxcbmlucHV0W3R5cGU9cmFuZ2VdLFxuaW5wdXRbdHlwZT1kYXRlXSxcbmlucHV0W3R5cGU9bW9udGhdLFxuaW5wdXRbdHlwZT13ZWVrXSxcbmlucHV0W3R5cGU9dGltZV0sXG5pbnB1dFt0eXBlPWRhdGV0aW1lXSxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuaW5wdXRbdHlwZT1jb2xvcl0sXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGNvbG9yOiAjNjY2O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBwYWRkaW5nOiAwLjgxMjVyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogMzAwbXMgYWxsO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuaW5wdXRbdHlwZT10ZXh0XTpmb2N1cyxcbmlucHV0W3R5cGU9ZW1haWxdOmZvY3VzLFxuaW5wdXRbdHlwZT11cmxdOmZvY3VzLFxuaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXMsXG5pbnB1dFt0eXBlPXNlYXJjaF06Zm9jdXMsXG5pbnB1dFt0eXBlPW51bWJlcl06Zm9jdXMsXG5pbnB1dFt0eXBlPXRlbF06Zm9jdXMsXG5pbnB1dFt0eXBlPXJhbmdlXTpmb2N1cyxcbmlucHV0W3R5cGU9ZGF0ZV06Zm9jdXMsXG5pbnB1dFt0eXBlPW1vbnRoXTpmb2N1cyxcbmlucHV0W3R5cGU9d2Vla106Zm9jdXMsXG5pbnB1dFt0eXBlPXRpbWVdOmZvY3VzLFxuaW5wdXRbdHlwZT1kYXRldGltZV06Zm9jdXMsXG5pbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1cyxcbmlucHV0W3R5cGU9Y29sb3JdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMsXG5zZWxlY3Q6Zm9jdXMge1xuICBjb2xvcjogIzExMTtcbiAgdHJhbnNpdGlvbjogMzAwbXMgYWxsO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5zZWxlY3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xufVxuXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxcmVtOyAvKiBBZGp1c3QgdGhlIGdhcCBhcyBuZWVkZWQgKi9cbn1cbmZvcm0gLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxcmVtOyAvKiBBZGp1c3QgdGhlIGdhcCBiZXR3ZWVuIHRoZSBmaWVsZHMgYXMgbmVlZGVkICovXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgZm9ybSAuZm9ybS1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbmZvcm0gbGFiZWwge1xuICBmbGV4OiAxO1xufVxuZm9ybSB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHB4OyAvKiBBZGp1c3QgdGhlIGhlaWdodCBhcyBuZWVkZWQgKi9cbn1cbmZvcm0gYnV0dG9uIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbn1cbmZvcm0gcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgSGVhZGVyIGFuZCBNZW51XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5Aa2V5ZnJhbWVzIG1hcnF1ZWUge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xMDAlIC0gdmFyKC0tZ2FwKSkpO1xuICB9XG59XG5ib2R5LmFkbWluLWJhciAuc2l0ZS1oZWFkZXIge1xuICB0b3A6IDkwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzg1cHgpIHtcbiAgYm9keS5hZG1pbi1iYXIgLnNpdGUtaGVhZGVyIHtcbiAgICB0b3A6IDc3cHg7XG4gIH1cbn1cbmJvZHkuYWRtaW4tYmFyIC5zaXRlLWhlYWRlci5ub3Qtb24tdG9wIHtcbiAgdG9wOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc4NXB4KSB7XG4gIGJvZHkuYWRtaW4tYmFyIC5zaXRlLWhlYWRlci5ub3Qtb24tdG9wIHtcbiAgICB0b3A6IDMycHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgYm9keS5hZG1pbi1iYXIgLmhlYWRlci13cmFwLm1lbnVfb3BlbiAubWVudS13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiA0NnB4O1xuICB9XG59XG5cbmJvZHkuc2VwYXJhdGVfaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDQuMzc1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBib2R5LnNlcGFyYXRlX2hlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IFwiYXV0b1wiO1xuICB9XG59XG5cbi50b3AtYmFyIHtcbiAgaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNGRkZGRkYgMCUsICNFQ0YzRkIgNDMlLCAjRENFOEY3IDEwMCUpIDAlIDAlIG5vLXJlcGVhdCBwYWRkaW5nLWJveDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMy4xMjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cbi50b3AtYmFyIHNwYW4sIC50b3AtYmFyIHAsIC50b3AtYmFyIGEge1xuICBjb2xvcjogIzMzMzMzMztcbn1cbi50b3AtYmFyID4gYSB7XG4gIGxpbmUtaGVpZ2h0OiAzLjEyNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnRvcC1iYXIgcCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEwMHB4KTtcbiAgbGluZS1oZWlnaHQ6IDMuMTI1cmVtO1xuICBoZWlnaHQ6IDMuMTI1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udG9wLWJhciBwIC5zdDIge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC50b3AtYmFyIHAge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7XG4gIH1cbiAgLnRvcC1iYXIgcCAubWFycXVlZSB7XG4gICAgLS1nYXA6IDJyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBnYXA6IHZhcigtLWdhcCk7XG4gIH1cbiAgLnRvcC1iYXIgcCAubWFycXVlZSAuc3Qge1xuICAgIGhlaWdodDogMy4xMjVyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBhbmltYXRpb246IG1hcnF1ZWUgMTVzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuICAudG9wLWJhciBwIC5tYXJxdWVlIC5zdC5zdDIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4udG9wLWJhciAudGItYnRuIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzLjEyNXJlbTtcbiAgaGVpZ2h0OiAzLjEyNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZW5hYmxlZF90b3BfYmFyIHtcbiAgcGFkZGluZy10b3A6IDMuMTI1cmVtO1xufVxuLmVuYWJsZWRfdG9wX2Jhci5oaWRlbl9oZWFkZXJfYW5kX2Zvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuLmVuYWJsZWRfdG9wX2JhciAudG9wLWJhciB7XG4gIGhlaWdodDogMy4xMjVyZW0gIWltcG9ydGFudDtcbiAgei1pbmRleDogMTAxO1xuICBvcGFjaXR5OiAxO1xufVxuLmVuYWJsZWRfdG9wX2JhciAuc2l0ZS1oZWFkZXIuaGVhZGVyLWhpZGUge1xuICB0b3A6IC05LjVyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVuYWJsZWRfdG9wX2JhciAubWVudS13cmFwIC5tZW51LXNjcm9sbC1jb250YWluZXIge1xuICAgIHRvcDogMy4xMjVyZW07XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xuICB0b3A6IDIuODEyNXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQ7XG59XG4uc2l0ZS1oZWFkZXIubm90LW9uLXRvcCwgLnNpdGUtaGVhZGVyLm1lbnVfb3Blbl9tYXN0aGVhZCwgLnNpdGUtaGVhZGVyLmRlc2t0b3BfbWVudV9vcGVuX21hc3RoZWFkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuLnNpdGUtaGVhZGVyLmhlYWRlci1oaWRlIHtcbiAgdG9wOiAtYXV0bztcbn1cbi5zaXRlLWhlYWRlcjpob3Zlci5oZWFkZXItaGlkZSB7XG4gIHRvcDogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnNpdGUtaGVhZGVyIC5pcy1zdHVjaywgLnNpdGUtaGVhZGVyIC5tZW51X29wZW4sIC5zaXRlLWhlYWRlciAuc2VwYXJhdGVfaGVhZGVyX29uX3dyYXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuMTAxOTYwNzg0Myk7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5pcy1zdHVjayAubG9nby13aGl0ZSwgLnNpdGUtaGVhZGVyIC5tZW51X29wZW4gLmxvZ28td2hpdGUsIC5zaXRlLWhlYWRlciAuc2VwYXJhdGVfaGVhZGVyX29uX3dyYXAgLmxvZ28td2hpdGUge1xuICAgIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmlzLXN0dWNrIC5sb2dvLWJsdWUsIC5zaXRlLWhlYWRlciAubWVudV9vcGVuIC5sb2dvLWJsdWUsIC5zaXRlLWhlYWRlciAuc2VwYXJhdGVfaGVhZGVyX29uX3dyYXAgLmxvZ28tYmx1ZSB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICB9XG59XG4uc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5zaXRlLWhlYWRlcjpub3QoLm5vdC1vbi10b3ApIC5oZWFkZXItd3JhcCB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEzMG1zO1xufVxuLnNpdGUtaGVhZGVyOm5vdCgubm90LW9uLXRvcCkgLmhlYWRlci13cmFwIC5tZW51LXdyYXAge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwbXM7XG59XG4uc2l0ZS1oZWFkZXI6bm90KC5ub3Qtb24tdG9wKSAuaGVhZGVyLXdyYXAgLmxvZ28td2hpdGUsIC5zaXRlLWhlYWRlcjpub3QoLm5vdC1vbi10b3ApIC5oZWFkZXItd3JhcCAubG9nby1ibHVlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogODBtcztcbn1cbi5zaXRlLWhlYWRlcjpub3QoLm5vdC1vbi10b3ApIC5oZWFkZXItd3JhcC5tZW51X29wZW4sIC5zaXRlLWhlYWRlcjpub3QoLm5vdC1vbi10b3ApIC5oZWFkZXItd3JhcC5kZXNrdG9wX21lbnVfb3BlbiB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBtcztcbn1cbi5zaXRlLWhlYWRlcjpub3QoLm5vdC1vbi10b3ApIC5oZWFkZXItd3JhcC5tZW51X29wZW4gLm1lbnUtd3JhcCwgLnNpdGUtaGVhZGVyOm5vdCgubm90LW9uLXRvcCkgLmhlYWRlci13cmFwLmRlc2t0b3BfbWVudV9vcGVuIC5tZW51LXdyYXAge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA4MG1zO1xufVxuLnNpdGUtaGVhZGVyOm5vdCgubm90LW9uLXRvcCkgLmhlYWRlci13cmFwLm1lbnVfb3BlbiAubG9nby13aGl0ZSwgLnNpdGUtaGVhZGVyOm5vdCgubm90LW9uLXRvcCkgLmhlYWRlci13cmFwLm1lbnVfb3BlbiAubG9nby1ibHVlLCAuc2l0ZS1oZWFkZXI6bm90KC5ub3Qtb24tdG9wKSAuaGVhZGVyLXdyYXAuZGVza3RvcF9tZW51X29wZW4gLmxvZ28td2hpdGUsIC5zaXRlLWhlYWRlcjpub3QoLm5vdC1vbi10b3ApIC5oZWFkZXItd3JhcC5kZXNrdG9wX21lbnVfb3BlbiAubG9nby1ibHVlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMG1zO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5oZWFkZXItd3JhcC5tZW51X29wZW4gLm1lbnUtd3JhcCB7XG4gICAgdG9wOiA0LjM3NXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvdHRvbTogMDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC5oZWFkZXItd3JhcC5tZW51X29wZW4gLmhhbWJ1cmdlciBzcGFuOm50aC1jaGlsZCgxKSB7XG4gICAgdG9wOiAwLjM3NXJlbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICB9XG4gIC5oZWFkZXItd3JhcC5tZW51X29wZW4gLmhhbWJ1cmdlciBzcGFuOm50aC1jaGlsZCgyKSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICByaWdodDogLTE1cHg7XG4gIH1cbiAgLmhlYWRlci13cmFwLm1lbnVfb3BlbiAuaGFtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgICB0b3A6IDAuMzc1cmVtO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICB9XG4gIC50b3AtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuOTM3NXJlbTtcbiAgICBoZWlnaHQ6IDQuMzc1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIzAwMCwgcmdiYSgwLCAwLCAwLCAwLjI1ODgyMzUyOTQpKTtcbiAgfVxuICAuaGVhZGVyLWNvbnRhaW5lciAubG9nby1jb250YWluZXIge1xuICAgIGZsZXg6IDAgMCA5Ljc1cmVtO1xuICB9XG4gIC5oZWFkZXItY29udGFpbmVyIC5sb2dvLWNvbnRhaW5lciAubWFpbi1sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAyLjY4NzVyZW07XG4gIH1cbiAgLmhlYWRlci1jb250YWluZXIgLmxvZ28tY29udGFpbmVyIC5tYWluLWxvZ28gYSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5oZWFkZXItY29udGFpbmVyIC5sb2dvLWNvbnRhaW5lciAubWFpbi1sb2dvIGEgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiAyLjY4NzVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgfVxuICAuaGVhZGVyLWNvbnRhaW5lciBidXR0b24ubW9iaWxlLW1lbnUtaWNvbiB7XG4gICAgaGVpZ2h0OiAzLjEyNXJlbTtcbiAgICB3aWR0aDogNC40Mzc1cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIC5oZWFkZXItY29udGFpbmVyIGJ1dHRvbi5tb2JpbGUtbWVudS1pY29uOmhvdmVyLCAuaGVhZGVyLWNvbnRhaW5lciBidXR0b24ubW9iaWxlLW1lbnUtaWNvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLmhlYWRlci1jb250YWluZXIgLmN0YSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubWVudS13cmFwIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiBjYWxjKC0xMDAlICsgNTBweCk7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLW91dDtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxNTBtcztcbiAgfVxuICAubWVudS13cmFwIC5tZW51LXNjcm9sbC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDQuNjg3NXJlbTtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMS4zMTI1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gICAgY29sb3I6ICMzMzMzMzM7XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gYTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEuMzEyNXJlbTtcbiAgICByaWdodDogMS4zMTI1cmVtO1xuICAgIGhlaWdodDogMC4wNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNDRUQ2RTA7XG4gICAgYm90dG9tOiAtMC4wMzEyNXJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wLndpZGVfYm9yZGVyID4gYTpiZWZvcmUge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLTAuMTI1cmVtO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAxLjMxMjVyZW07XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgIzAwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wLm9wZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAub3BlbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTAuMDYyNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDAuMDYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjQ0VENkUwO1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMC5vcGVuID4gYSB7XG4gICAgY29sb3I6ICMyMjNkNjM7XG4gICAgYmFja2dyb3VuZDogI0Y4RjhGODtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAub3BlbiA+IGE6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wLm9wZW4gPiBhOmJlZm9yZSB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAub3BlbiA+IC5zdWItbWVudS13cmFwIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0NFRDZFMDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwIHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLW91dDtcbiAgICB3aWxsLWNoYW5nZTogbWF4LWhlaWdodDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMTpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy10b3A6IDEuMjE4NzVyZW07XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiB1bC5zdWItbWVudSBsaS5kZXB0LTEgPiBhLmEtZGVwdC0xIHtcbiAgICBjb2xvcjogIzY3Nzg5MjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgMS4zMTI1cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBhZGRpbmctdG9wOiAwLjY1NjI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjY4NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yMTg3NXJlbTtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMSA+IGEuYS1kZXB0LTE6YWZ0ZXIge1xuICAgIGhlaWdodDogMC4wNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNCRkJGQkY7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMS4zMTI1cmVtO1xuICAgIHJpZ2h0OiAxLjMxMjVyZW07XG4gICAgYm90dG9tOiAtMC4wMzEyNXJlbTtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMS5jb2x1bW5zID4gLnN1Yi1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiB1bC5zdWItbWVudSBsaS5kZXB0LTEuY29sdW1ucyA+IC5zdWItbWVudSA+IGxpIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMS5jb2x1bW5zID4gLnN1Yi1tZW51ID4gbGk6bnRoLWNoaWxkKDJuKSBhIHtcbiAgICBwYWRkaW5nOiAwLjY1NjI1cmVtIDEuMzEyNXJlbSAwLjY1NjI1cmVtIDAuNjU2MjVyZW07XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiB1bC5zdWItbWVudSBsaS5kZXB0LTEuY29sdW1ucyA+IC5zdWItbWVudSA+IGxpIGEge1xuICAgIHBhZGRpbmc6IDAuNjU2MjVyZW0gMC42NTYyNXJlbSAwLjY1NjI1cmVtIDEuMzEyNXJlbTtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMS5yZXNvdXJjZXMgLmEtZGVwdC0xIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiAjMjIzZDYzO1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gdWwuc3ViLW1lbnUgbGkuZGVwdC0xLnJlc291cmNlcyA+IC5zdWItbWVudSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMS5yZXNvdXJjZXMgPiAuc3ViLW1lbnUuY29udGVudC1zdWItbWVudSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjMxMjVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMS5yZXNvdXJjZXMgPiAuc3ViLW1lbnUgPiBsaSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwLjM3NXJlbSAxLjI1cmVtIDAuMzc1cmVtIDIuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4xODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gdWwuc3ViLW1lbnUgbGkuZGVwdC0xLnJlc291cmNlcyA+IC5zdWItbWVudSA+IGxpID4gYTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwLjM1cmVtO1xuICAgIGhlaWdodDogMC41cmVtO1xuICAgIHRvcDogMC43NXJlbTtcbiAgICBsZWZ0OiAxLjM3NXJlbTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcmlnaHRfYXJyb3dfZ3JlZW4uc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMS5yZXNvdXJjZXMgPiAuc3ViLW1lbnUgPiBsaSA+IGEgc3Bhbi5kZXNjIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiB1bC5zdWItbWVudSBsaS5kZXB0LTEgPiAuc3ViLW1lbnUge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMSA+IC5zdWItbWVudSA+IGxpIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMSA+IC5zdWItbWVudSA+IGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yMTg3NXJlbTtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMSA+IC5zdWItbWVudSA+IGxpID4gYSB7XG4gICAgcGFkZGluZzogMC42NTYyNXJlbSAxLjMxMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41NjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICMzMzMzMzM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gdWwuc3ViLW1lbnUgbGkuZGVwdC0xID4gLnN1Yi1tZW51ID4gbGkgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjMjIzZDYzO1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gdWwuc3ViLW1lbnUgbGkuZGVwdC0xID4gLnN1Yi1tZW51ID4gbGkgPiBhOmZvY3VzIC5kZXNjIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMSA+IC5zdWItbWVudSA+IGxpID4gYSAuZGVzYyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM2Nzc4OTI7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxuICAubWVudS13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IHVsLnN1Yi1tZW51IGxpLmRlcHQtMSAuc2VlX2FsbF9saW5rIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDEuMTg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMzEyNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lbnUtd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiB1bC5zdWItbWVudSBsaS5kZXB0LTEgLnNlZV9hbGxfbGluazphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICB3aWR0aDogMy40Mzc1cmVtO1xuICAgIGhlaWdodDogMC4yNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxMnB4O1xuICAgIGxlZnQ6IDEuMzEyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjQkZCRkJGO1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gdWwuc3ViLW1lbnUgbGkuZGVwdC0xIC5zZWVfYWxsX2xpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMjIzZDYzO1xuICB9XG4gIC5tZW51LXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gdWwuc3ViLW1lbnUgbGkuZGVwdC0xIC5zZWVfYWxsX2xpbms6aG92ZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxuICAubWVudS13cmFwIC5jdGEtYnRucyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMS4zMTI1cmVtO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBsZWZ0OiAxLjMxMjVyZW07XG4gICAgcmlnaHQ6IDEuMzEyNXJlbTtcbiAgICBtYXgtd2lkdGg6IDIyLjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgLm1lbnUtd3JhcCAuY3RhLWJ0bnMgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuICAubWVudS13cmFwIC5jdGEtYnRucyB1bCBsaSB7XG4gICAgZmxleDogMSAxIDUwJTtcbiAgfVxuICAubWVudS13cmFwIC5jdGEtYnRucyB1bCBsaTpudGgtY2hpbGQoMikge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0NFRDZFMDtcbiAgfVxuICAubWVudS13cmFwIC5jdGEtYnRucyB1bCBsaTpudGgtY2hpbGQoMikgYSB7XG4gICAgY29sb3I6ICMzMzMzMzM7XG4gIH1cbiAgLm1lbnUtd3JhcCAuY3RhLWJ0bnMgdWwgbGkgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEuNjI1cmVtIDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzIyM2Q2MztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gIH1cbiAgLm1lbnUtd3JhcCAuY3RhLWJ0bnMgdWwgbGkgYTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogIzIyM2Q2MztcbiAgfVxuICAuc2l0ZS1oZWFkZXIge1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIzAwMCwgcmdiYSgwLCAwLCAwLCAwLjI1ODgyMzUyOTQpKTtcbiAgfVxufVxuLmhhbWJ1cmdlciB7XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDAuODc1cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNpdGlvbjogMC41cyBlYXNlLWluLW91dDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMS4xMjVyZW07XG4gIHJpZ2h0OiAwO1xufVxuLmhhbWJ1cmdlciBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAwLjA5Mzc1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMC4wOTM3NXJlbTtcbiAgb3BhY2l0eTogMTtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIHRyYW5zaXRpb246IDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuLmhhbWJ1cmdlciBzcGFuOm50aC1jaGlsZCgxKSB7XG4gIHRvcDogMDtcbn1cbi5oYW1idXJnZXIgc3BhbjpudGgtY2hpbGQoMikge1xuICB0b3A6IDAuNDA2MjVyZW07XG59XG4uaGFtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaXRlLWhlYWRlci5oZWFkZXItaGlkZSB7XG4gICAgdG9wOiAtYXV0bztcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcC5pcy1zdHVjaywgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcC5kZXNrdG9wX21lbnVfb3BlbiwgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcC5zZXBhcmF0ZV9oZWFkZXJfb25fd3JhcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCByZ2JhKDAsIDAsIDAsIDAuMTAxOTYwNzg0Myk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZGVkZWQ7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcC5pcy1zdHVjayAubWVnYS1tYWluLW1lbnUgLmEtZGVwdC0wLCAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLmRlc2t0b3BfbWVudV9vcGVuIC5tZWdhLW1haW4tbWVudSAuYS1kZXB0LTAsIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAuc2VwYXJhdGVfaGVhZGVyX29uX3dyYXAgLm1lZ2EtbWFpbi1tZW51IC5hLWRlcHQtMCB7XG4gICAgY29sb3I6ICMzMzMzMzMgIWltcG9ydGFudDtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLmlzLXN0dWNrIC5tZWdhLW1haW4tbWVudSAuYS1kZXB0LTA6YmVmb3JlLCAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLmRlc2t0b3BfbWVudV9vcGVuIC5tZWdhLW1haW4tbWVudSAuYS1kZXB0LTA6YmVmb3JlLCAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLnNlcGFyYXRlX2hlYWRlcl9vbl93cmFwIC5tZWdhLW1haW4tbWVudSAuYS1kZXB0LTA6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkY3NjRCICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcC5pcy1zdHVjayAubWVnYS1tYWluLW1lbnUgLmEtZGVwdC0wOmFmdGVyLCAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLmRlc2t0b3BfbWVudV9vcGVuIC5tZWdhLW1haW4tbWVudSAuYS1kZXB0LTA6YWZ0ZXIsIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAuc2VwYXJhdGVfaGVhZGVyX29uX3dyYXAgLm1lZ2EtbWFpbi1tZW51IC5hLWRlcHQtMDphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICMwMDAgIWltcG9ydGFudDtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLmlzLXN0dWNrIGEuY29udGFjdF9idG4sIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAuZGVza3RvcF9tZW51X29wZW4gYS5jb250YWN0X2J0biwgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcC5zZXBhcmF0ZV9oZWFkZXJfb25fd3JhcCBhLmNvbnRhY3RfYnRuIHtcbiAgICBjb2xvcjogIzIyM2Q2MyAhaW1wb3J0YW50O1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAuaXMtc3R1Y2sgYS5jb250YWN0X2J0bjpiZWZvcmUsIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAuZGVza3RvcF9tZW51X29wZW4gYS5jb250YWN0X2J0bjpiZWZvcmUsIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAuc2VwYXJhdGVfaGVhZGVyX29uX3dyYXAgYS5jb250YWN0X2J0bjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICMzMzMzMzMgIWltcG9ydGFudDtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLmRlc2t0b3BfbWVudV9vcGVuIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCB7XG4gICAgei1pbmRleDogLTU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAuZGVza3RvcF9tZW51X29wZW4gLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51ID4gbGkge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2Utb3V0O1xuICAgIG9wYWNpdHk6IDAuMztcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLmRlc2t0b3BfbWVudV9vcGVuIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAub3BlbiA+IC5zdWItbWVudS13cmFwIHtcbiAgICB6LWluZGV4OiAtMjtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwLmRlc2t0b3BfbWVudV9vcGVuIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAub3BlbiA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51ID4gbGkge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAudG9wLWJhciB7XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0ZGRkZGRiAwJSwgI0VDRjNGQiA0MyUsICNEQ0U4RjcgMTAwJSkgMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC50b3AtYmFyIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDYwcHgpO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDYwcHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICBnYXA6IDEuNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5MyUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDg3LjVyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5oZWFkZXItY29udGFpbmVyIC5sb2dvLWNvbnRhaW5lciB7XG4gICAgZmxleDogMCAwIDkuNzVyZW07XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAuaGVhZGVyLWNvbnRhaW5lciAubG9nby1jb250YWluZXIgLm1haW4tbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMi42ODc1cmVtO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLmhlYWRlci1jb250YWluZXIgLmxvZ28tY29udGFpbmVyIC5tYWluLWxvZ28gYSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLmhlYWRlci1jb250YWluZXIgLmxvZ28tY29udGFpbmVyIC5tYWluLWxvZ28gYSBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDIuNjg3NXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLmhlYWRlci1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIHtcbiAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICBoZWlnaHQ6IFwiYXV0b1wiO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAuaGVhZGVyLWNvbnRhaW5lciAubWVudS1jb250YWluZXIgLm1lbnUtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLmhlYWRlci1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5tZW51LXdyYXAgLm1lbnUtc2Nyb2xsLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAuaGVhZGVyLWNvbnRhaW5lciAubWVudS1jb250YWluZXIgLm1lbnUtd3JhcCAuY3RhLWJ0bnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAuaGVhZGVyLWNvbnRhaW5lciAubWVudS1jb250YWluZXIgLm1vYmlsZS1tZW51LWljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCBhLmEtZGVwdC0wIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwIDEuMjVyZW0gMCAxLjI1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2Utb3V0O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCBhLmEtZGVwdC0wOmhvdmVyOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wIGEuYS1kZXB0LTA6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMS4xMjVyZW07XG4gICAgbGVmdDogMTlweDtcbiAgICBoZWlnaHQ6IDAuMTg3NXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gcmlnaHQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2Utb3V0O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCBhLmEtZGVwdC0wOmJlZm9yZSB7XG4gICAgbGVmdDogMTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGEge1xuICAgIHBhZGRpbmc6IDAgMi4xMjVyZW0gMCAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSB7XG4gICAgcGFkZGluZzogMCAxLjg3NXJlbSAwIDAuNjI1cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0wLjA2MjVyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDEuMTI1cmVtO1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMC5vcGVuID4gYTphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAub3BlbiA+IGE6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAub3BlbiA+IC5zdWItbWVudS13cmFwIHtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCB7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBhdXRvO1xuICAgIHotaW5kZXg6IC0yO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAwIGNhbGMoKDEwMCUgLSAxMTcwcHgpIC8gMikgMXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZGVkO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEge1xuICAgIHBhZGRpbmctdG9wOiAxLjIxODc1cmVtO1xuICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xID4gYS5hLWRlcHQtMSB7XG4gICAgY29sb3I6ICM2Nzc4OTI7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAxLjMxMjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcGFkZGluZy10b3A6IDAuNjU2MjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNjg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjIxODc1cmVtO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEgPiBhLmEtZGVwdC0xOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDAuMTI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMS4zMTI1cmVtO1xuICAgIHJpZ2h0OiAxLjMxMjVyZW07XG4gICAgYm90dG9tOiAtMC4wMzEyNXJlbTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xLnJlc291cmNlcyA+IC5zdWItbWVudSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEucmVzb3VyY2VzID4gLnN1Yi1tZW51ID4gbGkgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMS40Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMTg3NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xLnJlc291cmNlcyA+IC5zdWItbWVudSA+IGxpID4gYTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwLjM1cmVtO1xuICAgIGhlaWdodDogMC41cmVtO1xuICAgIHRvcDogMC43NXJlbTtcbiAgICBsZWZ0OiAwLjU5Mzc1cmVtO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9yaWdodF9hcnJvd19ncmVlbi5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEucmVzb3VyY2VzID4gLnN1Yi1tZW51ID4gbGkgPiBhIHNwYW4uZGVzYyB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEgPiAuc3ViLW1lbnUgPiBsaSB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xID4gLnN1Yi1tZW51ID4gbGkubGFzdF9pdGVtX3NpemVfMiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xID4gLnN1Yi1tZW51ID4gbGkubGFzdF9pdGVtX3NpemVfMyB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xID4gLnN1Yi1tZW51ID4gbGkubGFzdF9pdGVtX3NpemVfNCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiAuc3ViLW1lbnUgLmRlcHQtMS5kZXNrdG9wX2NvbHVtbnNfMyA+IC5zdWItbWVudSA+IGxpIHtcbiAgICBmbGV4OiAwIDAgMzMlO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEuZGVza3RvcF9jb2x1bW5zXzMgPiAuc3ViLW1lbnUgPiBsaS5sYXN0X2l0ZW1fc2l6ZV8yIHtcbiAgICBmbGV4OiAwIDAgNjYlO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEuZGVza3RvcF9jb2x1bW5zXzMgPiAuc3ViLW1lbnUgPiBsaS5sYXN0X2l0ZW1fc2l6ZV8zIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xLmRlc2t0b3BfY29sdW1uc18yID4gLnN1Yi1tZW51ID4gbGkge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiAuc3ViLW1lbnUgLmRlcHQtMS5kZXNrdG9wX2NvbHVtbnNfMiA+IC5zdWItbWVudSA+IGxpLmxhc3RfaXRlbV9zaXplXzIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEuZGVza3RvcF9jb2x1bW5zXzEgPiAuc3ViLW1lbnUgPiBsaSB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiAuc3ViLW1lbnUgLmRlcHQtMSA+IC5zdWItbWVudSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBhZGRpbmctYm90dG9tOiAyLjQ2ODc1cmVtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiAuc3ViLW1lbnUgLmRlcHQtMSA+IC5zdWItbWVudS5jb250ZW50LXN1Yi1tZW51IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMzEyNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEgPiAuc3ViLW1lbnUuY29udGVudC1zdWItbWVudSBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEgPiAuc3ViLW1lbnUgPiBsaSA+IGEge1xuICAgIHBhZGRpbmc6IDAuNjU2MjVyZW0gMC42MjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41NjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICMzMzMzMzM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEgPiAuc3ViLW1lbnUgPiBsaSA+IGE6aG92ZXIsIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEgPiAuc3ViLW1lbnUgPiBsaSA+IGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiAuc3ViLW1lbnUgLmRlcHQtMSA+IC5zdWItbWVudSA+IGxpID4gYSAuZGVzYyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM2Nzc4OTI7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tdG9wOiAwLjM3NXJlbTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xIC5zZWVfYWxsX2xpbmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDAuNTYyNXJlbTtcbiAgICBsZWZ0OiAxLjMxMjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG4gIC5zaXRlLWhlYWRlciAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCA+IC5zdWItbWVudS13cmFwID4gLnN1Yi1tZW51IC5kZXB0LTEgLnNlZV9hbGxfbGluazphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICB3aWR0aDogMy40Mzc1cmVtO1xuICAgIGhlaWdodDogMC4yNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtNHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogI0NFRDZFMDtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDMxNWRlZyk7XG4gIH1cbiAgLnNpdGUtaGVhZGVyIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wID4gLnN1Yi1tZW51LXdyYXAgPiAuc3ViLW1lbnUgLmRlcHQtMSAuc2VlX2FsbF9saW5rOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzIyM2Q2MztcbiAgfVxuICAuc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCA+IC5zdWItbWVudSAuZGVwdC0xIC5zZWVfYWxsX2xpbms6aG92ZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi8qXG5ib2R5LmludmVyc2VfaGVhZGVyIC5zaXRlLWhlYWRlcntcblxuXG4gIC50b3AtYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMEU2MEMzIDAlLCAjMEQ0NzhEIDEwMCUpIDAlIDAlIG5vLXJlcGVhdCBwYWRkaW5nLWJveDtcbiAgICBzcGFuLCBwLCBhIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1hdC10b3Age1xuICAgIC5sb2dvLXdoaXRlIHtcbiAgICAgIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmxvZ28tYmx1ZSB7XG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5sb2dvLXdoaXRlIHtcbiAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubG9nby1ibHVlIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAuaGVhZGVyLXdyYXAgLm1lZ2EtbWFpbi1tZW51IGxpLmRlcHQtMCBhLmEtZGVwdC0wIHtcbiAgICAgIGNvbG9yOiAkZGFya2JsdWUtbmV3O1xuICAgICAgJjpiZWZvcmV7XG4gICAgICAgIGJhY2tncm91bmQ6ICRkYXJrYmx1ZS1uZXc7XG4gICAgICB9XG4gICAgICAmOmFmdGVye1xuICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgJGRhcmtibHVlLW5ldyAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgJjpob3ZlcntcbiAgICAgICAgLy9jb2xvcjogJG1lbnUtdGV4dC1jb2xvcjtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtdGV4dC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAkbWVudS10ZXh0LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyLXdyYXAgLmhlYWRlci1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5tZW51LXdyYXAgLmN0YS1idG5zIHVsIGxpIGEge1xuICAgICAgY29sb3I6ICRkYXJrYmx1ZS1uZXc7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgYmFja2dyb3VuZDogJGRhcmtibHVlLW5ldztcbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlci13cmFwIC5oZWFkZXItY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAubWVudS13cmFwIC5jdGEtYnRucyB1bCBsaSBhLmJvb2tfYnRue1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWVudS10ZXh0LWNvbG9yO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkbWVudS10ZXh0LWNvbG9yLDEwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhhbWJ1cmdlciB7XG4gICAgc3BhbntcbiAgICAgIGJhY2tncm91bmQ6ICMyMjNkNjM7XG4gICAgfVxuICB9XG59XG4qL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRlLW9uLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmhpZGUtb24tZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgQWNjZXNzaWJpbGl0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLyogTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuICovXG59XG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBub25lO1xuICBjb2xvcjogIzIxNzU5YjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTUuNzVweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbn1cblxuLyogRG8gbm90IHNob3cgdGhlIG91dGxpbmUgb24gdGhlIHNraXAgbGluayB0YXJnZXQuICovXG4jY29udGVudFt0YWJpbmRleD1cIi0xXCJdOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBNb2R1bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYWxpZ25sZWZ0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcbn1cblxuLmFsaWducmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDEuNWVtO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICB3aWR0aDogMTAwdnc7XG59XG5cbi5hbGlnbndpZGUge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICB3aWR0aDogMTAwdnc7XG4gIHBhZGRpbmctbGVmdDogMS44NzVlbTtcbiAgcGFkZGluZy1yaWdodDogMS44NzVlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAuYWxpZ253aWRlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NWVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NWVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5hbGlnbndpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDYwMHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoNTAlIC0gNjAwcHgpO1xuICAgIG1heC13aWR0aDogODcuNXJlbTtcbiAgICB3aWR0aDogODcuNXJlbTtcbiAgfVxufVxuXG4uY2xlYXI6YmVmb3JlLFxuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YmVmb3JlLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmJlZm9yZSxcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTWVkaWFcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wYWdlLWNvbnRlbnQgLndwLXNtaWxleSxcbi5lbnRyeS1jb250ZW50IC53cC1zbWlsZXksXG4uY29tbWVudC1jb250ZW50IC53cC1zbWlsZXkge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qIE1ha2Ugc3VyZSBlbWJlZHMgYW5kIGlmcmFtZXMgZml0IHRoZWlyIGNvbnRhaW5lcnMuICovXG5lbWJlZCxcbmlmcmFtZSxcbm9iamVjdCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuaW1nIHtcbiAgaGVpZ2h0OiBhdXRvOyAvKiBNYWtlIHN1cmUgaW1hZ2VzIGFyZSBzY2FsZWQgY29ycmVjdGx5LiAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIEFkaGVyZSB0byBjb250YWluZXIgd2lkdGguICovXG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgLyogRXh0cmEgd2lkZSBpbWFnZXMgd2l0aGluIGZpZ3VyZSB0YWdzIGRvbid0IG92ZXJmbG93IHRoZSBjb250ZW50IGFyZWEuICovXG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIENhcHRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ud3AtY2FwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4ud3AtY2FwdGlvbiBpbWdbY2xhc3MqPXdwLWltYWdlLV0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi53cC1jYXB0aW9uIC53cC1jYXB0aW9uLXRleHQge1xuICBtYXJnaW46IDAuODA3NWVtIDA7XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIEdhbGxlcmllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmdhbGxlcnkge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLmdhbGxlcnktaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aWR0aDogMTAwJTtcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtMiAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG4uZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMzMuMzMlO1xufVxuLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtNSAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAyMCU7XG59XG4uZ2FsbGVyeS1jb2x1bW5zLTYgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMTYuNjYlO1xufVxuLmdhbGxlcnktY29sdW1ucy03IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDE0LjI4JTtcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtOCAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAxMi41JTtcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtOSAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAxMS4xMSU7XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaG93LXhzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZS14cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufSIsImh0bWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBtaW4td2lkdGg6IDMwMHB4O1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtbW96LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuKiB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlcmlmO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXdlaWdodDogNDAwO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1sZWZ0OiBlbSgyMCk7XG4gIHBhZGRpbmctcmlnaHQ6IGVtKDIwKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICBtYXgtd2lkdGg6ICRzaXRlX3dpZHRoX3RhYmxldCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgIG1heC13aWR0aDogJHNpdGVfd2lkdGhfdGFibGV0bGFuZHNjYXBlICFpbXBvcnRhbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBicChsYXB0b3B4cykge1xuICAgIG1heC13aWR0aDogJHNpdGVfd2lkdGhfbGFwdG9weHMgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYWxpZ25mdWxsID4gLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIsIC5hbGlnbmZ1bGwgPiAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XG4gIEBleHRlbmQgLmNvbnRhaW5lcjtcbn1cblxuLndwLWJsb2NrLWthZGVuY2Utcm93bGF5b3V0LmFsaWduZnVsbCA+IC5rdC1yb3ctbGF5b3V0LWlubmVyID4gLmt0LXJvdy1jb2x1bW4td3JhcC5rYi10aGVtZS1jb250ZW50LXdpZHRoIHtcbiAgQGV4dGVuZCAuY29udGFpbmVyO1xufVxuXG4uYWxpZ25mdWxsID4gLmt0LXJvdy1jb2x1bW4td3JhcCwgLmFsaWduZnVsbCA+IC5rdC1yb3ctbGF5b3V0LWlubmVyID4gLmt0LXJvdy1jb2x1bW4td3JhcCB7XG4gIEBleHRlbmQgLmNvbnRhaW5lcjtcbn1cblxuLy9Gb3JjZSBHdXRlbmJlcmcgZGVmYXVsdCBjb2x1bW5zIHRvIG5vdCBnbyBmdWxsIHdpZHRoIGJldHdlZW4gNzY4IGFuZCA3ODFweC4gR3V0ZW5lYmVyZyBkZWZhdWx0IGZ1bGwgd2lkdGggc3RhcnRzIGZyb20gNzgxIGFuZCBkb3duLCB3aGlsZSBvdXIgdGhlbWUgaGFzIGEgdGFibGV0IGJyZWFrcG9pbnQgYXQgNzY4cHguIEkgYXNzdW1lIGd1dGVuYmVyZydzIGlkZWEgaXMgdG8gbm90IGhhdmUgY29sdW1ucyBvbiB0YWJsZXQsIHdlIHByZWZlciB0byBoYXZlIHRoZW0uXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYm9keSAud3AtYmxvY2stY29sdW1ucyB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA3ODFweCkge1xuICAud3AtYmxvY2stY29sdW1uczpub3QoLmlzLW5vdC1zdGFja2VkLW9uLW1vYmlsZSkgPiAud3AtYmxvY2stY29sdW1uIHtcbiAgICBmbGV4LWJhc2lzOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkgLndwLWJsb2NrLWNvbHVtbnM6bm90KC5pcy1ub3Qtc3RhY2tlZC1vbi1tb2JpbGUpID4gLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cbiAgYm9keSAud3AtYmxvY2stY29sdW1uczpub3QoLmlzLW5vdC1zdGFja2VkLW9uLW1vYmlsZSkgPiAud3AtYmxvY2stY29sdW1uW3N0eWxlKj1mbGV4LWJhc2lzXSB7XG4gICAgZmxleC1ncm93OiAwO1xuICB9XG59XG5cbi5hcmNoaXZlLWhlYWRlciB7XG4gIGltZyB7XG4gICAgbWF4LWhlaWdodDogMTAwdmg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn0iLCIvLyBBZGQgeW91ciBtYWluIGNvbG9yIHZhcmlhYmxlcyBoZXJlXG5cbiRncmV5LXRleHQ6ICM2NDY0NjQ7XG4kZGFyay1ncmV5OiAjMzMzMzMzO1xuJHdoaXRlOiAjZmZmO1xuXG4kc2QtcHJpbWFyeS1jb2xvcjogIzMzMzUzNztcbiRzZC1zZWNvbmRhcnktY29sb3I6ICNGMEY5RkY7XG5cblxuJHNkLW92ZXJsYXktY29sb3I6ICM3MzczNzM7XG4kc2QtZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgwLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDI4JSwgJHNkLW92ZXJsYXktY29sb3IgMTAwJSk7XG4kc2QtZ3JhZGllbnQtaG9tZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg2OCwgNjUsIDY1LCAwLjg1KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA1MCUpO1xuXG5cbi8vIFZhcmlhYmxlcyBmb3JtIFVuZGVyc2NvcmVzXG5cbi8vVGhlIG5leHQgZmV3IHNob3VsZCBiZSByZXZpc2VkIG9uIHByb2plY3Qgc3RhcnQ6XG4kY29sb3JfX3RleHQtbWFpbjogJHNkLXByaW1hcnktY29sb3I7IC8vIE1haW4gdGV4dCBjb2xvclxuJGNvbG9yX190ZXh0LXNlY29uZGFyeTogIzMzMzUzNzsgLy8gTWFpbiB0ZXh0IGNvbG9yXG5cbiRjb2xvcl9fbGluazogJHNkLXByaW1hcnktY29sb3I7IC8vIExpbmtzXG4kY29sb3JfX2xpbmstdmlzaXRlZDogJHNkLXByaW1hcnktY29sb3I7XG4kY29sb3JfX2xpbmstaG92ZXI6ICRzZC1wcmltYXJ5LWNvbG9yO1xuXG4kY29sb3JfX2JhY2tncm91bmQtYm9keTogJHdoaXRlO1xuXG5cbi8vQnV0dG9uc1xuJGNvbG9yX190ZXh0LWJ1dHRvbjogJHdoaXRlO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbjogIzMyMzczYztcblxuJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbi1ob3ZlcjogbGlnaHRlbigkY29sb3JfX2JhY2tncm91bmQtYnV0dG9uLCA0JSk7XG4kY29sb3JfX2JhY2tncm91bmQtYnV0dG9uLWZvY3VzOiBsaWdodGVuKCRjb2xvcl9fYmFja2dyb3VuZC1idXR0b24sIDglKTtcblxuLy9JbnB1dHNcbiRjb2xvcl9fYm9yZGVyLWlucHV0OiAjY2NjO1xuJGNvbG9yX19ib3JkZXItYWJicjogIzY2NjtcbiRjb2xvcl9fdGV4dC1zY3JlZW46ICMyMTc1OWI7XG4kY29sb3JfX3RleHQtaW5wdXQ6ICM2NjY7XG4kY29sb3JfX3RleHQtaW5wdXQtZm9jdXM6ICMxMTE7XG5cblxuLy9UaGVzZSBjYW4gYmUgcmV2aXNlZCBvbiB0aGUgbW92ZSB3aGlsZSBkZXZlbG9waW5nOlxuJGNvbG9yX19iYWNrZ3JvdW5kLXNjcmVlbjogI2YxZjFmMTtcbiRjb2xvcl9fYmFja2dyb3VuZC1ocjogI2NjYztcbiRjb2xvcl9fYmFja2dyb3VuZC1wcmU6ICNlZWU7XG4kY29sb3JfX2JhY2tncm91bmQtaW5zOiAjZmZmOWMwO1xuXG4vLyBCbG9nXG4kY29sb3JfX2JhY2tncm91bmQtZGFya2VyLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMThkZWcsICNCQ0Y0OTEgLTMxLjY0JSwgIzlERUFBOCAxLjk5JSwgIzZFRDU4NiAzMC41NSUsICMyQzRBODUgOTAuMiUpO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWJsb2ctaGVhZGVyLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMjM4LjMyZGVnLCAjQkNGNDkxIC0zMS42NCUsICM5REVBQTggMS45OSUsICM2RUQ1ODYgMzAuNTUlLCAjMkM0QTg1IDkwLjIlKTtcblxuJGNvbG9yX19iYWNrZ3JvdW5kLWF1dGhvcjogI0Y2RjlGRjtcblxuXG4iLCIvLyAgRm9udHMgYW5kIGljb25zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy9cbi8vXG4vLyBGb3IgR29vZ2xlIEZvbnRzIHVzZSAgaHR0cHM6Ly9nb29nbGUtd2ViZm9udHMtaGVscGVyLmhlcm9rdWFwcC5jb20vZm9udHNcbi8vIGFuZCBwdXQgdGhlIGRlZmluaXRpb25zIGluIHR5cG9ncmFwaHkvZm9udF9mYWNlc1xuLy9cbi8vXG5cbi8vIFVzZWQgbWFpbmx5IGZvciBHdXRlbmJlcmcgZm9udC1zaXplc1xuLy9EZXNrdG9wXG4kZm9udC1zaXplLXhzOiByZW0oMTIpO1xuJGZvbnQtc2l6ZS1zOiByZW0oMTQpO1xuJGZvbnQtc2l6ZS1kOiByZW0oMTYpO1xuJGZvbnQtc2l6ZS1tOiByZW0oMTgpO1xuJGZvbnQtc2l6ZS1sLXNtOiByZW0oMjQpO1xuJGZvbnQtc2l6ZS1sOiByZW0oMzApO1xuJGZvbnQtc2l6ZS14bDogcmVtKDM0KTtcbiRmb250LXNpemUteHhsOiByZW0oNDApO1xuJGZvbnQtc2l6ZS14eHhsOiByZW0oNTUpO1xuXG4vL01vYmlsZSBHdXRlbmJlcmcgZm9udC1zaXplc1xuJGZvbnQtc2l6ZS14cy1tb2JpbGU6IHJlbSgxMCk7XG4kZm9udC1zaXplLXMtbW9iaWxlOiByZW0oMTQpO1xuJGZvbnQtc2l6ZS1kLW1vYmlsZTogcmVtKDE2KTtcbiRmb250LXNpemUtbS1tb2JpbGU6IHJlbSgxNik7XG4kZm9udC1zaXplLWwtbW9iaWxlOiByZW0oMjIpO1xuJGZvbnQtc2l6ZS14bC1tb2JpbGU6IHJlbSgyOCk7XG4kZm9udC1zaXplLXh4bC1tb2JpbGU6IHJlbSgzMik7XG4kZm9udC1zaXplLXh4eGwtbW9iaWxlOiByZW0oMzYpO1xuXG4vL1RhYmxldCBHdXRlbmJlcmcgZm9udC1zaXplcyAgKE1heWJlIGxlYXZlIHNhbWUgYXMgbW9iaWxlIGZvciBzdGFydGVycylcbiRmb250LXNpemUteHMtdGFibGV0OiByZW0oMTApO1xuJGZvbnQtc2l6ZS1zLXRhYmxldDogcmVtKDE0KTtcbiRmb250LXNpemUtZC10YWJsZXQ6IHJlbSgxNik7XG4kZm9udC1zaXplLW0tdGFibGV0OiByZW0oMTYpO1xuJGZvbnQtc2l6ZS1sLXRhYmxldDogcmVtKDIyKTtcbiRmb250LXNpemUteGwtdGFibGV0OiByZW0oMjgpO1xuJGZvbnQtc2l6ZS14eGwtdGFibGV0OiByZW0oMzIpO1xuJGZvbnQtc2l6ZS14eHhsLXRhYmxldDogcmVtKDM2KTtcblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICdNb250c2VycmF0JywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktc2VyaWY6IEdlb3JnaWEsICdUaW1lcyBOZXcgUm9tYW4nLCBzZXJpZjtcblxuJGZvbnRfX21haW46ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuJGZvbnRfX2NvZGU6IEFyaWFsLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiRmb250X19wcmU6IFwiQ291cmllciAxMCBQaXRjaFwiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kZm9udF9fbGluZS1oZWlnaHQtYm9keTogMS4yO1xuJGZvbnRfX2xpbmUtaGVpZ2h0LXByZTogMS42O1xuXG4kZm9udF9mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuJGZvbnRfZmFtaWx5X21lbnU6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuJGZvbnRfZmFtaWx5X2hlYWRpbmdzOiAkZm9udC1mYW1pbHktc2VyaWY7XG5cbiRlYXNpbmc6IGVhc2Utb3V0O1xuXG5cblxuXG4iLCJcbi8vIERlZmF1bHQgLSAzMjEgLSA0MDBcblxuQG1peGluIGJwKCRwb2ludCkge1xuXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmV4eHN7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGlmICRwb2ludCA9PSBwaG9uZXhzZG93bntcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmV4bHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDAwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9pbnQgPT0gcGhvbmVsYW5kc2NhcGUge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NjhweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgJHBvaW50ID09IHBob25lbGFuZHNjYXBlT25seSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU2OHB4KSBhbmQgKG1heC13aWR0aDogNjcwcHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwb2ludCA9PSBwaG9uZWxhbmRzY2FwZXhsT25seSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldGRvd24ge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldGxhbmRzY2FwZWRvd257XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0bGFuZHNjYXBle1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHBvaW50ID09IGxhcHRvcHhzIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KXtcbiAgICAgIEBjb250ZW50OyBcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gbGFwdG9wIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KXtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICRwb2ludCA9PSBsYXB0b3B4bCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCl7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkcG9pbnQgPT0gZGVza3RvcHhzIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KXtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICRwb2ludCA9PSBkZXNrdG9wIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMHB4KXtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICRwb2ludCA9PSBkZXNrdG9weGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAyNTAwcHgpe1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbn0iLCIkZm9vdGVyLWJhY2tncm91bmQ6ICNlZWU7XG4kZm9vdGVyLXRleHQ6ICRjb2xvcl9fdGV4dC1zZWNvbmRhcnk7XG4kZm9vdGVyLXRpdGxlczogI0ZGNzY0QjtcblxuJGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuXG4uc2l0ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmZvb3Rlci1jdGEtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX3RleHQtc2Vjb25kYXJ5O1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSgyMCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiByZW0oMzIpIHJlbSgyMCk7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGdhcDogcmVtKDI0KTtcbiAgICAvL2JvdHRvbTogcmVtKC05MCk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDkzJTtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBtYXgtd2lkdGg6ICRzaXRlX3dpZHRoX3RhYmxldDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIC8vYm90dG9tOiByZW0oLTcwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9fdGV4dC1zZWNvbmRhcnk7XG4gICAgICBwYWRkaW5nOiByZW0oNjQpIHJlbSg0MCk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogOTMlO1xuICAgICAgZ2FwOiByZW0oMzIpO1xuXG4gICAgfVxuICAgIEBpbmNsdWRlIGJwKGxhcHRvcHhzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRzZWNvbmRhcnlfd2lkdGg7XG4gICAgfVxuXG4gICAgJi5zaW5nbGUge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgfVxuXG4gICAgICAubGVmdC1wYXJ0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiByZW0oMzIpO1xuICAgICAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgICAgICBnYXA6IHJlbSg2MCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndwY2Y3IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxlZnQtcGFydCB7XG4gICAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oNDgwKTtcbiAgICAgIH1cblxuXG4gICAgICAud2lkZ2V0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgICAgICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZWRvd24pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyNCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14eHhsO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlZG93bikge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXh4bDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJpZ2h0LXBhcnQge1xuXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicCh0YWJsZXRkb3duKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZWRvd24pIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbSgxMDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFib3V0LXVzIHtcbiAgICAuZm9vdGVyLWN0YS13cmFwcGVyIHtcbiAgICAgIC5sZWZ0LXBhcnQge1xuICAgICAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg0ODApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgICAgICAgIG1heC13aWR0aDogcmVtKDY4MCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9vdGVyLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmZmZmZmYwMCAyMiUsICRmb290ZXItYmFja2dyb3VuZCAyMiUpO1xuICAgIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2ZmZmZmZjAwIDMzJSwgJGZvb3Rlci1iYWNrZ3JvdW5kIDMzJSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2ZmZmZmZjAwIDM4JSwgJGZvb3Rlci1iYWNrZ3JvdW5kIDM4JSk7XG4gICAgfVxuXG4gICAgLm1pZF9mb290ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGZvb3Rlci1iYWNrZ3JvdW5kO1xuICAgICAgcGFkZGluZzogcmVtKDYwKSAwIHJlbSgyMCk7XG4gICAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZzogcmVtKDQwKSAwIHJlbSgyMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgICAgcGFkZGluZzogcmVtKDcwKSAwIHJlbSgyMCk7XG4gICAgICB9XG5cbiAgICAgIC5jb2x1bW5zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiByZW0oMjApO1xuICAgICAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuXG4gICAgICAgIH1cblxuICAgICAgICAuY29sdW1uIHtcbiAgICAgICAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSAyMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnNpdGUtYnJhbmRpbmcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMiwgaDMsIGg0LCBoNSB7XG4gICAgICAgICAgICBjb2xvcjogJGZvb3Rlci10aXRsZXM7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCwgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGZvb3Rlci10ZXh0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWQ7XG4gICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0oNSkgMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSg3KSAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC53cC1ibG9jay1ncm91cCB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oNykgMDtcbiAgICAgICAgICAgIGdhcDogcmVtKDgpO1xuXG4gICAgICAgICAgICAud3AtYmxvY2staW1hZ2Uge1xuICAgICAgICAgICAgICBmbGV4OiAwIDAgcmVtKDIwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAud2lkZ2V0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYm90dG9tX2Zvb3RlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX3RleHQtc2Vjb25kYXJ5O1xuXG4gICAgICAuc2l0ZS1pbmZvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBwLCBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgICBwYWRkaW5nOiByZW0oMTApO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aWRnZXQge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIHAsIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG59IiwiLy8gTWFpbiBDb250YWluZXIgU2l6ZXNcbiRzaXRlX3dpZHRoX2xhcHRvcHhzOiByZW0oMTQwMCk7XG4kc2l0ZV93aWR0aF90YWJsZXRsYW5kc2NhcGU6IDkzJTtcbiRzaXRlX3dpZHRoX3RhYmxldDogcmVtKDczMCk7XG5cbiRzaW5nbGVfcG9zdF9jb250ZW50X3dpZHRoX2Rlc2t0b3A6IHJlbSg3MjApO1xuXG4vL0hlYWRlciBzaXplc1xuJGhlYWRlcl9oZWlnaHRfbW9iaWxlOiByZW0oNzApO1xuJGhlYWRlcl9oZWlnaHRfZGVza3RvcDogXCJhdXRvXCI7XG5cbiRzZWNvbmRhcnlfd2lkdGggOiByZW0oMTE2MCk7IiwiLndpZGdldCB7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xuXG5cdC8qIE1ha2Ugc3VyZSBzZWxlY3QgZWxlbWVudHMgZml0IGluIHdpZGdldHMuICovXG5cdHNlbGVjdCB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG59XG4iLCIvLyBDbGFzc2VzXG4uc2luZ2xlLWNvbnRhaW5lci1pbm5lci13aWR0aCB7XG4gIC8vbWF4LXdpZHRoOiAkc2luZ2xlX3Bvc3RfY29udGVudF93aWR0aF9kZXNrdG9wO1xufVxuXG4uYmxvZy1yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8uc2luZ2xlLWJsb2d7XG4vLyAgcGFkZGluZy10b3A6IHJlbSgyNSk7XG4vLyAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKXtcbi8vICAgIHBhZGRpbmctdG9wOiByZW0oNzApO1xuLy8gIH1cbi8vfVxuXG4uYmxvZy1zaW5nbGUtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiByZW0oNDMwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgYmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWJsb2ctaGVhZGVyLWdyYWRpZW50O1xuXG4gIC5ic2gtbWV0YSB7XG4gICAgLmVudHJ5X21ldGEge1xuICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG5cbi5jYXRlZ29yeS1iYWRnZS12aWV3IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiByZW0oNikgcmVtKDEyKTtcbiAgYmFja2dyb3VuZDogIzJDNEE4NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogcmVtKDQpIDA7XG59XG5cbi5lbnRyeV9tZXRhIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLmVudHJ5X21ldGFfaW5mbyB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcblxuICAgIC5yZWFkX3RpbWUge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbiAgfVxufVxuXG4uYnNoLXNvY2lhbC1zaGFyZSB7XG4gIC5zb2NpYWxfc2hhcmUge1xuICAgIC5rdF9zaGFyZV9zaG9ydGNvZGUge1xuICAgICAgLmt0LXNvY2lhbHN0eWxlLXN0eWxlXzAzIGEge1xuICAgICAgICBib3JkZXI6IDAgbm9uZTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuYXJ0aWNsZSB7XG4gICYucG9zdCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuICB9XG59XG5cbi5zb2NpYWxfc2hhcmVfY29udGFpbmVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFQkVCRUI7XG4gIHBhZGRpbmc6IHJlbSgzMCkgMDtcbiAgbWFyZ2luOiByZW0oMzApIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogcmVtKDE2KTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC50aXRsZV93cmFwIHtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICB9XG4gIH1cblxuICAuc29jaWFsX3NoYXJlX3dyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiByZW0oMTYpO1xuXG4gICAgYSB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuXG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgICAgICBoZWlnaHQ6IHJlbSgyNik7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5mYWNlYm9va19zaGFyZSB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0oMjMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZW1haWxfc2hhcmUge1xuICAgICAgICBzdmcge1xuICAgICAgICAgIGhlaWdodDogcmVtKDI4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYXV0aG9yLWJveCB7XG4gIGJhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZC1hdXRob3I7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiByZW0oMTcpO1xuICBwYWRkaW5nOiByZW0oMjUpO1xuXG4gIC5hdXRob3ItYm94LWltYWdlIHtcbiAgICBmbGV4OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiByZW0oMTEwKTtcbiAgfVxuXG4gIC5hdXRob3ItYm94LWJpbyB7XG4gICAgZmxleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiByZW0oMTApO1xuXG4gICAgJiA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogcmVtKDEwKTtcblxuICAgICAgaDUge1xuICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGNvbG9yOiAjMEU2MEMzO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hdXRob3ItYm94LWRlc2NyaXB0aW9uIHtcbiAgICBmbGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHJlbSgxMCk7XG4gIH1cblxuICAuYXV0aG9yLXNlY3Rpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMUExRTIyNDA7XG4gIH1cbn1cblxuLmF1dGhvci1zb2NpYWxzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiByZW0oMTApO1xuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmF1dGhvci1ib3gtc2lkZWJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiByZW0oMTMpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHJlbSgxMCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuICBwYWRkaW5nLWJvdHRvbTogcmVtKDIwKTtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogY2FsYygoMTAwJSAtICN7JHNpbmdsZV9wb3N0X2NvbnRlbnRfd2lkdGhfZGVza3RvcH0gLSAje3JlbSggMiAqIDQwcHggKX0pIC8gMik7XG4gICAgcGFkZGluZy1yaWdodDogcmVtKDIwKTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICAucm91bmRlZF9pbWFnZSB7XG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG1heC13aWR0aDogcmVtKDYxKTtcbiAgICAgIG1heC1oZWlnaHQ6IHJlbSg2MSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG5cbiAgaDUge1xuICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgfVxuXG4gIC5wb3NpdGlvbiB7XG4gICAgY29sb3I6ICMwRTYwQzM7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuICB9XG5cbiAgLmJpbyB7XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICB9XG59XG5cbi5zdWJzY3JpYmVfYm94IHtcbiAgYmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWRhcmtlci1ncmFkaWVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgYm94LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogcmVtKDQpO1xuICBwYWRkaW5nOiByZW0oNDUpIHJlbSg4MCkgcmVtKDU1KSByZW0oODApO1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luOiByZW0oNjApIDA7XG5cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgfVxufVxuXG4uc3Vic2NyaWJlX2JveF9zaWRlYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtICN7JHNpbmdsZV9wb3N0X2NvbnRlbnRfd2lkdGhfZGVza3RvcH0gLSAje3JlbSggMiAqIDQwcHggKX0pIC8gMik7XG4gIH1cbn1cblxuLnNpbmdsZS1ibG9nLXJlbGF0ZWQtYXJ0aWNsZXMge1xuICBAaW5jbHVkZSBzcGxpZGUtc2xpZGVyLXdyYXBwZXI7XG5cbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC8vbWFyZ2luLWJvdHRvbTogcmVtKDQwKTtcbiAgICAvL2ZvbnQtc2l6ZTogcmVtKDI2KTtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIC8vbWFyZ2luLWJvdHRvbTogcmVtKDUwKTtcbiAgICAgIC8vZm9udC1zaXplOiByZW0oMzIpO1xuICAgIH1cbiAgfVxuXG4gIC5yZWxhdGVkLWFydGljbGVzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAucmVsYXRlZC1wb3N0cy13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiByZW0oNDApO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgICBnYXA6IHJlbSgzNSk7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIGdhcDogcmVtKDQ1KTtcbiAgICB9XG5cbiAgICAucmVsYXRlZC1hcnRpY2xlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSg0KTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAxMHB4IDE1cHggcmdiYSgxMTAsIDIxMywgMTM0LCAwLjEpKTtcblxuICAgICAgLmltYWdlLXBhcnQge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0oMTg1KTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgfVxuXG4gICAgICAuY29udGVudC1wYXJ0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC5wb3N0LXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCByZW0oOSkgMDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCByZW0oMTIpIDA7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmVudHJ5X21ldGEge1xuICAgICAgICAgIC5lbnRyeV9tZXRhX2luZm8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICAgICAgY29sb3I6ICMyRjNCM0I7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zcGxpZGVfX3RyYWNrIHtcbiAgICBAaW5jbHVkZSBzcGxpZGVfX3RyYWNrO1xuICB9XG59IiwiLy8gUmVtIG91dHB1dCB3aXRoIHB4IGZhbGxiYWNrXG5AbWl4aW4gZm9udC1zaXplKCRzaXplVmFsdWU6IDEpIHtcbiAgZm9udC1zaXplOiAoJHNpemVWYWx1ZSAqIDE4KSAqIDFweDtcbiAgZm9udC1zaXplOiAkc2l6ZVZhbHVlICogMXJlbTtcbn1cblxuLy8gQ2VudGVyIGJsb2NrXG5AbWl4aW4gY2VudGVyLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vIENsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4vLyBDbGVhciBhZnRlciAobm90IGFsbCBjbGVhcmZpeCBuZWVkIHRoaXMgYWxzbylcbkBtaXhpbiBjbGVhcmZpeC1hZnRlcigpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8vIENlbnRlciBibG9ja1xuQG1peGluIGNlbnRlci1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBDb2x1bW4gd2lkdGggd2l0aCBtYXJnaW5cbkBtaXhpbiBjb2x1bW4td2lkdGgoJG51bWJlckNvbHVtbnM6IDMpIHtcbiAgd2lkdGg6IG1hcC1nZXQoJGNvbHVtbnMsICRudW1iZXJDb2x1bW5zKSAtICggKCAkY29sdW1uc19fbWFyZ2luICogKCAkbnVtYmVyQ29sdW1ucyAtIDEgKSApIC8gJG51bWJlckNvbHVtbnMgKTtcbn1cblxuQG1peGluIGZyb3N0ZWQtZ2xhc3MoJGJsdXItcmFkaXVzOiA3NXB4LCAkYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpKSB7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigkYmx1ci1yYWRpdXMpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigkYmx1ci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogcmVtKDEwKTsgLy8gWW91IGNhbiBhbHNvIHBhcmFtZXRlcml6ZSB0aGlzIGlmIG5lZWRlZFxuICBwYWRkaW5nOiByZW0oMjApIHJlbSgyNCk7XG59XG5cbi8vIERlZmluZSB0aGUgbWl4aW4gZm9yIHZlcnRpY2FsIGdyYWRpZW50XG5AbWl4aW4gdmVydGljYWwtZ3JhZGllbnQtb3ZlcmxheSgkY29sb3IsICRzdGFydC1vcGFjaXR5LCAkbWlkLW9wYWNpdHksICRlbmQtb3BhY2l0eSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEVuc3VyZXMgdGhlIHBzZXVkby1lbGVtZW50IGNhbiBiZSBhYnNvbHV0ZWx5IHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8gaXRzIHBhcmVudFxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogJHNkLWdyYWRpZW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBFbnN1cmVzIHRoYXQgbW91c2UgZXZlbnRzIHBhc3MgdGhyb3VnaCB0aGUgb3ZlcmxheVxuICB9XG59XG5cbi8vIERlZmluZSB0aGUgbWl4aW4gZm9yIHZlcnRpY2FsIGdyYWRpZW50XG5AbWl4aW4gdmVydGljYWwtb3ZlcmxheS1ob21lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBFbnN1cmVzIHRoZSBwc2V1ZG8tZWxlbWVudCBjYW4gYmUgYWJzb2x1dGVseSBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIGl0cyBwYXJlbnRcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6ICRzZC1ncmFkaWVudC1ob21lO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBFbnN1cmVzIHRoYXQgbW91c2UgZXZlbnRzIHBhc3MgdGhyb3VnaCB0aGUgb3ZlcmxheVxuICB9XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1ncmFkaWVudC1vdmVybGF5LXYyLWhvdmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBFbnN1cmVzIHRoZSBwc2V1ZG8tZWxlbWVudCBjYW4gYmUgYWJzb2x1dGVseSBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIGl0cyBwYXJlbnRcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgIzMzMzUzNyA0LjclLCByZ2JhKDUxLCA1MywgNTUsIDApIDQ0LjYzJSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEVuc3VyZXMgdGhhdCBtb3VzZSBldmVudHMgcGFzcyB0aHJvdWdoIHRoZSBvdmVybGF5XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMTtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1ncmFkaWVudC1vdmVybGF5LXYzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBFbnN1cmVzIHRoZSBwc2V1ZG8tZWxlbWVudCBjYW4gYmUgYWJzb2x1dGVseSBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIGl0cyBwYXJlbnRcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwKSAzLjQlLCAjMDAwMDAwIDEzMS43OCUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBFbnN1cmVzIHRoYXQgbW91c2UgZXZlbnRzIHBhc3MgdGhyb3VnaCB0aGUgb3ZlcmxheVxuICB9XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1ncmFkaWVudC1vdmVybGF5LXY0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBFbnN1cmVzIHRoZSBwc2V1ZG8tZWxlbWVudCBjYW4gYmUgYWJzb2x1dGVseSBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIGl0cyBwYXJlbnRcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwKSAzLjQlLCAjMDAwMDAwIDEzNSUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBFbnN1cmVzIHRoYXQgbW91c2UgZXZlbnRzIHBhc3MgdGhyb3VnaCB0aGUgb3ZlcmxheVxuICB9XG59XG5cbkBtaXhpbiBtb2JpbGUtbWVudS1iZy1ncmFkaWVudCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjMDAwLCAjMDAwMDAwNDIpO1xufVxuXG4vLyBNaXhpbiBmb3IgZGFyayBidXR0b25zXG5AbWl4aW4gZGFyay1idXR0b24oJGJnLWNvbG9yOiAjMzMzLCAkdGV4dC1jb2xvcjogI2ZmZiwgJGhvdmVyLWJnLWNvbG9yOiBkYXJrZW4oJGJnLWNvbG9yLCAxMCUpKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXI6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXdyYXA6IG5vd3JhcDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJnLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLy8gTWl4aW4gZm9yIGJsb2NrIGluZGVudGF0aW9uIHdpdGggZGlyZWN0aW9uXG5AbWl4aW4gaW5kZW50LWJsb2NrKCRzaXplOiAyMHB4LCAkZGlyZWN0aW9uOiBsZWZ0KSB7XG4gIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzaXplO1xuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAkc2l6ZTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpemU7XG4gIH1cbiAgZWxzZSB7XG4gIH1cbn1cblxuLy8gRGVmaW5lIGEgbWl4aW4gdG8gYXBwbHkgdGhlIHN0eWxlcyBmb3IgZXZlcnkgbmV4dCBlbGVtZW50XG5AbWl4aW4gaW5jcmVhc2VUb3AoJGluY3JlbWVudCkge1xuICAmOm50aC1jaGlsZCgjeyRpbmNyZW1lbnQgKyAxfSkge1xuICAgIHRvcDogJGluY3JlbWVudCAqIDU0cHg7XG4gICAgei1pbmRleDogLSRpbmNyZW1lbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG59XG5cbkBtaXhpbiBjYXJkc1dyYXBwZXIge1xuICBwYWRkaW5nOiByZW0oNjApIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiByZW0oMjApO1xuICBtYXJnaW46IDAgYXV0bztcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgZ2FwOiByZW0oNDApO1xuICAgIHBhZGRpbmc6IHJlbSgxMjApIDA7XG4gIH1cbn1cblxuQG1peGluIGNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IHJlbSgxMCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTRweCAwcHggIzAwMDAwMDI2O1xuICBtYXgtaGVpZ2h0OiByZW0oNTIwKTtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWdyYWRpZW50LW92ZXJsYXktdjItaG92ZXI7XG4gIGFzcGVjdC1yYXRpbzogMzMvMjM7XG4gIEBpbmNsdWRlIGJwKHBob25lbGFuZHNjYXBlKSB7XG4gICAgYXNwZWN0LXJhdGlvOiAzNS8yMDtcbiAgfVxuICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICBhc3BlY3QtcmF0aW86IGluaXRpYWw7XG4gICAgbWluLWhlaWdodDogcmVtKDMwMCk7XG4gIH1cblxuXG4gICYuaGFsZiB7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgfVxuXG4gICYuYmlnIHtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2JSAtIDZweCk7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2JSAtIDEzcHgpO1xuICAgIH1cbiAgfVxuXG4gICYuZnVsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmLnNtYWxsIHtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDE0cHgpO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDI3cHgpO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAmOm5vdCgubm8taG92ZXIpIHtcbiAgICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBzY2FsZTogMS4yO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQtaG92ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gY2FyZENvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogcmVtKDIwKTtcbiAgbGVmdDogMDtcbiAgY29sb3I6IHdoaXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgei1pbmRleDogMjtcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgdG9wOiByZW0oNDUpO1xuICB9XG5cbiAgLmNhdGVnb3J5LXRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCByZW0oMjApO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWwtc207XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAobGFwdG9weHMpIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14bDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGNhcmRIb3ZlciB7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IHJlbSgyMCk7XG4gIGxlZnQ6IDA7XG4gIGNvbG9yOiByZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiAyO1xuXG4gIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgZ2FwOiByZW0oNCk7XG4gIH1cblxuICAvL0BpbmNsdWRlIGJwKGxhcHRvcHhzKSB7XG4gIC8vICBmb250LXNpemU6ICRmb250LXNpemUteGw7XG4gIC8vfVxuICBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1kO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZzogcmVtKDMpIHJlbSgyMCk7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtbTtcbiAgICAgIHBhZGRpbmc6IHJlbSg2KSByZW0oMjApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sLXNtO1xuICAgICAgcGFkZGluZzogcmVtKDYpIHJlbSg0MCk7XG4gICAgfVxuICB9XG5cbn1cblxuQG1peGluIHNwbGlkZS1zbGlkZXItd3JhcHBlciB7XG4gIHBhZGRpbmc6IHJlbSg2MCkgMDtcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgcGFkZGluZzogcmVtKDcwKSAwO1xuICB9XG59XG5cbkBtaXhpbiBzcGxpZGVfX3RyYWNrIHtcbiAgcGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoKDEwMCUgLSAkc2l0ZV93aWR0aF90YWJsZXQpIC8gMikgIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuNSUgIWltcG9ydGFudDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJwKGxhcHRvcHhzKSB7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKCgxMDAlIC0gJHNpdGVfd2lkdGhfbGFwdG9weHMpIC8gMikgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5zcGxpZGVfX3NsaWRlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTI4MHB4KSB7XG4gICAgICBtYXgtaGVpZ2h0OiByZW0oMzYwKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZhY2V0d3AtZmFjZXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHJlbSgxNik7XG5cbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgLW1zLXNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG5cbiAgLmZhY2V0d3AtcmFkaW8ge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiByZW0oOCkgcmVtKDE0KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkc2QtcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSg0MCk7XG4gICAgY29sb3I6ICRzZC1wcmltYXJ5LWNvbG9yO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1kO1xuICAgIH1cblxuICAgICYuY2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2QtcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgLmZhY2V0d3AtZGlzcGxheS12YWx1ZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5mYWNldHdwLWNvdW50ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn0iLCJib2R5LFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgY29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5O1xuICBmb250LXNpemU6ICRiYXNlX2ZvbnRfc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRmb250X19saW5lLWhlaWdodC1ib2R5O1xufVxuXG4vLyBNYWluIGxpbmsgc3R5bGluZ1xuYSB7XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG5cbiAgQGluY2x1ZGUgYnAodGFibGV0ZG93bikge1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIH1cblxufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14eHhsLW1vYmlsZTtcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXh4eGwtdGFibGV0O1xuICB9XG4gIEBpbmNsdWRlIGJwKGxhcHRvcHhzKSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXh4eGw7XG4gIH1cbn1cblxuaDIge1xuICBmb250LXNpemU6ICRmb250LXNpemUteHhsLW1vYmlsZTtcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXh4bC10YWJsZXQ7XG4gIH1cbiAgQGluY2x1ZGUgYnAobGFwdG9weHMpIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUteHhsO1xuICB9XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXhsLW1vYmlsZTtcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhsLXRhYmxldDtcbiAgfVxuICBAaW5jbHVkZSBicChsYXB0b3B4cykge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14bDtcbiAgfVxufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sLW1vYmlsZTtcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWwtdGFibGV0O1xuICB9XG4gIEBpbmNsdWRlIGJwKGxhcHRvcHhzKSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWw7XG4gIH1cbn1cblxuaDUsIGg2IHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWQtbW9iaWxlO1xuICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtZC10YWJsZXQ7XG4gIH1cbiAgQGluY2x1ZGUgYnAobGFwdG9weHMpIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtZDtcbiAgfVxufVxuXG5wIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWQtbW9iaWxlO1xuICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtZC10YWJsZXQ7XG4gIH1cbiAgQGluY2x1ZGUgYnAobGFwdG9weHMpIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtZDtcbiAgfVxuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5ociB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1ocjtcbiAgYm9yZGVyOiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbmRmbiwgY2l0ZSwgZW0sIGkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMS41ZW07XG59XG5cblxuYWRkcmVzcyB7XG4gIG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG5wcmUge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtcHJlO1xuICBmb250LWZhbWlseTogJGZvbnRfX3ByZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG4gIGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtcHJlO1xuICBtYXJnaW4tYm90dG9tOiAxLjZlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogMS42ZW07XG59XG5cbmNvZGUsIGtiZCwgdHQsIHZhciB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udF9fY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG59XG5cbmFiYnIsIGFjcm9ueW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRjb2xvcl9fYm9yZGVyLWFiYnI7XG4gIGN1cnNvcjogaGVscDtcbn1cblxubWFyaywgaW5zIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWlucztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5iaWcge1xuICBmb250LXNpemU6IDEyNSU7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiBlbSgxMCk7XG59XG5cblxuLy8gSGVscGVyIGZvbnQgY2xhc3Nlc1xuLmFjY2VudCB7XG4gIGZvbnQtc2l6ZTogZW0oMTYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiBlbSgxMik7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgfVxufVxuXG5cbiIsIi8vICBEZWZpbmUgaGVyZSBHb29sZSBvciBDdXN0b20gRm9udHMgYW5kIGljb25zIGZhY2VzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZvciBHb29nbGUgRm9udHMgdXNlICBodHRwczovL2dvb2dsZS13ZWJmb250cy1oZWxwZXIuaGVyb2t1YXBwLmNvbS9mb250c1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQXZlbmlyIE5leHQnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvQXZlbmlyTmV4dExUUHJvLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnLi4vZm9udHMvQXZlbmlyTmV4dExUUHJvLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQXZlbmlyIE5leHQnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvQXZlbmlyTmV4dExUUHJvLUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnLi4vZm9udHMvQXZlbmlyTmV4dExUUHJvLUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0F2ZW5pciBOZXh0JztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0F2ZW5pck5leHRMVFByby1JdC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCcuLi9mb250cy9BdmVuaXJOZXh0TFRQcm8tSXQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XG4gIHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtUmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1NZWRpdW0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LU1lZGl1bS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1TZW1pQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtU2VtaUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XG4gIHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG4iLCJodG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7IC8qIEluaGVyaXQgYm94LXNpemluZyB0byBtYWtlIGl0IGVhc2llciB0byBjaGFuZ2UgdGhlIHByb3BlcnR5IGZvciBjb21wb25lbnRzIHRoYXQgbGV2ZXJhZ2Ugb3RoZXIgYmVoYXZpb3I7IHNlZSBodHRwczovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS8gKi9cbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuQGltcG9ydCBcImxpc3RzXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG4iLCJ1bCwgb2wge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAgMCAwIDFyZW07XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxubGkgPiB1bCxcbmxpID4gb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMS41ZW07XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luOiAwIDEuNWVtIDEuNWVtO1xufVxuXG4ucGFnaW5hdGlvbl93cmFwe1xuXHRwYWRkaW5nLXRvcDogcmVtKDIwKTtcbiAgICB1bHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlIG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBsaXtcbiAgICAgICAgICAgICYuYWN0aXZle1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgcGFkZGluZzogN3B4IDlweCA1cHg7IFxuICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICBtYXJnaW46IDAgNHB4OztcbiAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsInRhYmxlIHtcbiAgbWFyZ2luOiAwIDAgMS41ZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBVc2UgZm9yIGFsbCB0YWJsZXNcbi50YWJsZS13cmFwcGVyIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWFyZ2luOiAwIDAgMjBweDtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4iLCIvLyBNYXBzLlxuLy8gVGhlIGNvbG9yIHZhcmlhYmxlcyBhcmUgZGVmaW5lZCBpbiB2YXJpYWJsZXMvX2NvbG9ycy5zY3NzLCBpbiBvcmRlciB0byBiZSBhdmFpbGFibGUgZXZlcnl3aGVyZVxuJGNvbG9yOiAoXG4gIHdoaXRlOiAjRkZGRkZGLFxuICBibGFjazogIzAwMDAwMCxcbiAgcHJpbWFyeS1jb2xvcjogICRzZC1wcmltYXJ5LWNvbG9yLFxuICBwcmltYXJ5LWNvbG9yLWxpZ2h0OiAgJHNkLW92ZXJsYXktY29sb3IsXG4gIHNlY29uZGFyeS1jb2xvcjogICRzZC1zZWNvbmRhcnktY29sb3Jcbik7XG5cbkBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGNvbG9yIHtcbiAgLmhhcy0je1wiXCIgKyAkbmFtZX0tY29sb3Ige1xuICAgIGNvbG9yOiAkdmFsdWU7XG4gIH1cblxuICAuaGFzLSN7XCJcIiArICRuYW1lfS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmFsdWU7XG4gIH1cbn1cblxuLyoqXG4gKiBGb250IHNpemVzLlxuICpcbiAqIFR3byBzZXRzLCBvbmNlIGZvciBtb2JpbGUgYW5kIG9uZSBmb3IgZGVza3RvcC4gRmVlbCBmcmVlIHRvIGFkZCBvciByZW1vdmUgaWYgbmVlZGVkXG4gKi9cbiRmb250LXNpemU6IChcbiAgeHM6ICRmb250LXNpemUteHMtbW9iaWxlLFxuICBzOiAkZm9udC1zaXplLXMtbW9iaWxlLFxuICBkOiAkZm9udC1zaXplLWQtbW9iaWxlLFxuICBtOiAkZm9udC1zaXplLW0tbW9iaWxlLFxuICBsOiAkZm9udC1zaXplLWwtbW9iaWxlLFxuICB4bDogJGZvbnQtc2l6ZS14bC1tb2JpbGUsXG4gIHh4bDogJGZvbnQtc2l6ZS14eGwtbW9iaWxlLFxuICB4eHhsOiAkZm9udC1zaXplLXh4eGwtbW9iaWxlXG4pO1xuQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkZm9udC1zaXplIHtcbiAgLmhhcy0je1wiXCIgKyAkbmFtZX0tZm9udC1zaXplIHtcbiAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgfVxufVxuXG5cbiRmb250LXNpemUtdGFibGV0OiAoXG4gIHhzOiAkZm9udC1zaXplLXhzLXRhYmxldCxcbiAgczogJGZvbnQtc2l6ZS1zLXRhYmxldCxcbiAgZDogJGZvbnQtc2l6ZS1kLXRhYmxldCxcbiAgbTogJGZvbnQtc2l6ZS1tLXRhYmxldCxcbiAgbDogJGZvbnQtc2l6ZS1sLXRhYmxldCxcbiAgeGw6ICRmb250LXNpemUteGwtdGFibGV0LFxuICB4eGw6ICRmb250LXNpemUteHhsLXRhYmxldCxcbiAgeHh4bDogJGZvbnQtc2l6ZS14eHhsLXRhYmxldCxcbik7XG5cbkBpbmNsdWRlIGJwKHRhYmxldCl7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGZvbnQtc2l6ZS10YWJsZXQge1xuICAgIC5oYXMtI3tcIlwiICsgJG5hbWV9LWZvbnQtc2l6ZSB7XG4gICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuXG4kZm9udC1zaXplLWRlc2t0b3A6IChcbiAgeHM6ICRmb250LXNpemUteHMsXG4gIHM6ICRmb250LXNpemUtcyxcbiAgZDogJGZvbnQtc2l6ZS1kLFxuICBtOiAkZm9udC1zaXplLW0sXG4gIGw6ICRmb250LXNpemUtbCxcbiAgeGw6ICRmb250LXNpemUteGwsXG4gIHh4bDogJGZvbnQtc2l6ZS14eGwsXG4gIHh4eGw6ICRmb250LXNpemUteHh4bCxcbik7XG5AaW5jbHVkZSBicChsYXB0b3B4cyl7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGZvbnQtc2l6ZS1kZXNrdG9wIHtcbiAgICAuaGFzLSN7XCJcIiArICRuYW1lfS1mb250LXNpemUge1xuICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgfVxuICB9XG59XG5cblxuXG5cbiIsIi53cC1ibG9jay1ncm91cC5pcy1zdHlsZS1zLXNlY3Rpb24tcGFkZGluZyB7XG4gIHBhZGRpbmc6IHJlbSgyMCkgMDtcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgcGFkZGluZzogcmVtKDQwKSAwO1xuICB9XG4gIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgIHBhZGRpbmc6IHJlbSg2MCkgMDtcbiAgfVxufVxuXG4ud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtbS1zZWN0aW9uLXBhZGRpbmcge1xuICBwYWRkaW5nOiByZW0oNDApIDA7XG4gIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgIHBhZGRpbmc6IHJlbSg2MCkgMDtcbiAgfVxuICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICBwYWRkaW5nOiByZW0oODApIDA7XG4gIH1cbn1cblxuLndwLWJsb2NrLWdyb3VwLmlzLXN0eWxlLWwtc2VjdGlvbi1wYWRkaW5nIHtcbiAgcGFkZGluZzogcmVtKDYwKSAwO1xuICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICBwYWRkaW5nOiByZW0oODApIDA7XG4gIH1cbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgcGFkZGluZzogcmVtKDEwMCkgMDtcbiAgfVxufVxuXG4ud3AtYmxvY2staW1hZ2UuaXMtc3R5bGUtbmV3cy1zaW5nbGUge1xuICBwYWRkaW5nOiByZW0oMzIpIDA7XG4gIGJvcmRlci1yYWRpdXM6IHJlbSgxMCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgIHBhZGRpbmc6IHJlbSg0OCkgMDtcbiAgfVxuICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICBwYWRkaW5nOiByZW0oNjQpIDA7XG4gIH1cblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59IiwiQGltcG9ydCBcImd1dGVuX2ZvbnRfY29sb3JfdmFyaWFibGVzXCI7XG4vLyBIZXJlIGlzIHRoZSBtYWluIEd1dGVuYmVyZyBGT250cyBhbmQgY29sb3JzIGNvbmZpZywgbXVzdCBtaW1pYyB0aGUgc2V0dGluZ3MgaW4gaW5jL2d1dGVuX2ZvbnRfY29sb3JfdmFyaWFibGVzXG5AaW1wb3J0IFwiYmxvY2tfc3R5bGVzXCI7XG5cbi52ZXJ0aWNhbC1vdmVybGF5IHtcbiAgQGluY2x1ZGUgdmVydGljYWwtZ3JhZGllbnQtb3ZlcmxheSgjMzMzNTM3LCAwLCAwLjMsIDEpO1xufVxuXG4udmVydGljYWwtb3ZlcmxheS1ob21lIHtcbiAgQGluY2x1ZGUgdmVydGljYWwtb3ZlcmxheS1ob21lO1xufVxuXG4udmVydGljYWwtb3ZlcmxheS12MiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRW5zdXJlcyB0aGUgcHNldWRvLWVsZW1lbnQgY2FuIGJlIGFic29sdXRlbHkgcG9zaXRpb25lZCByZWxhdGl2ZSB0byBpdHMgcGFyZW50XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICAvL2JhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoNTEsIDUzLCA1NSwgMC4zKSAzLjg0JSwgcmdiYSg1MSwgNTMsIDU1LCAwKSA2NC40JSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzMzMzUzNyA0LjclLCByZ2JhKDUxLCA1MywgNTUsIDApIDQ0LjYzJSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEVuc3VyZXMgdGhhdCBtb3VzZSBldmVudHMgcGFzcyB0aHJvdWdoIHRoZSBvdmVybGF5XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi52ZXJ0aWNhbC1vdmVybGF5LXYzIHtcbiAgQGluY2x1ZGUgdmVydGljYWwtZ3JhZGllbnQtb3ZlcmxheS12Mztcbn1cblxuLnZlcnRpY2FsLW92ZXJsYXktdjQge1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1ncmFkaWVudC1vdmVybGF5LXY0O1xufVxuXG4uZnJvc3RlZC1nbGFzcyB7XG4gIEBpbmNsdWRlIGZyb3N0ZWQtZ2xhc3MoNzVweCwgcmdiYSg1MSwgNTMsIDU1LCAwLjEpKTtcbn1cblxuLmZyb3N0ZWQtZ2xhc3Mtd2hpdGUge1xuICBAaW5jbHVkZSBmcm9zdGVkLWdsYXNzKDc1cHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSk7XG59XG5cbi5pbmRlbnQtYmxvY2stdG9wIHtcbiAgQGluY2x1ZGUgaW5kZW50LWJsb2NrKC00NXB4LCB0b3ApO1xuICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGVkb3duKSB7XG4gICAgQGluY2x1ZGUgaW5kZW50LWJsb2NrKC0xMjBweCwgdG9wKTtcbiAgfVxufVxuXG4uaW5kZW50LWJsb2NrLXRvcC14MiB7XG4gIEBpbmNsdWRlIGluZGVudC1ibG9jaygtMTYwcHgsIHRvcCk7XG5cbiAgQGluY2x1ZGUgYnAocGhvbmV4bCkge1xuICAgIEBpbmNsdWRlIGluZGVudC1ibG9jaygtMTQwcHgsIHRvcCk7XG4gIH1cbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgQGluY2x1ZGUgaW5kZW50LWJsb2NrKC0xMjBweCwgdG9wKTtcbiAgfVxuICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICBAaW5jbHVkZSBpbmRlbnQtYmxvY2soLTE4MHB4LCB0b3ApO1xuICB9XG59XG5cbi5pbmRlbnQtYmxvY2stYm90dG9tIHtcbiAgQGluY2x1ZGUgaW5kZW50LWJsb2NrKC02MHB4LCBib3R0b20pO1xufVxuXG4uc2Vjb25kYXJ5X3dpZHRoIHtcbiAgbWF4LXdpZHRoOiAkc2Vjb25kYXJ5X3dpZHRoICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xufVxuXG4uaGFsZi13aWR0aCB7XG4gIGdhcDogcmVtKDI0KTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgZ2FwOiByZW0oNDApO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICB6LWluZGV4OiAyO1xuXG4gICYgPiAqIHtcbiAgICBmbGV4OiAxO1xuICB9XG59XG5cbi5zdGljay1ib3R0b20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogcmVtKDMyKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICBtYXJnaW46IDAgYXV0bztcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgYm90dG9tOiByZW0oODApO1xuICB9XG59XG5cbi5vYmotZml0LWNvdmVyIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgaW1nIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG4ubWluLWhlaWdodC02MDAge1xuICBtaW4taGVpZ2h0OiByZW0oNTAwKTtcbiAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgbWluLWhlaWdodDogcmVtKDYwMCk7XG4gIH1cblxuICBpbWcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiByZW0oNTAwKTtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbSg2MDApO1xuICAgIH1cbiAgfVxufVxuXG4ubWF4LWhlaWdodC0xMDB2aCB7XG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xuXG4gIGltZyB7XG4gICAgbWF4LWhlaWdodDogMTAwdmg7XG4gIH1cbn1cblxuLndwLWJsb2NrLWNvdmVyLmFsaWduZnVsbCB7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cblxuLy9TaW1wbGUgRmxleCBDb2x1bW5zLiBDYW4gYmUgbWFudWFsbHkgYWRkZWQgdG8gR3JvdXAgYmxvY2tzIGFuZCBpdCdzIGlubmVyIGJsb2Nrcy5cbiRjb2x1bW5zLWdhcDogMC45Mzc1cmVtO1xuLmNvbHVtbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1sZWZ0OiAtJGNvbHVtbnMtZ2FwO1xuICBtYXJnaW4tcmlnaHQ6IC0kY29sdW1ucy1nYXA7XG5cbiAgLmNvbHVtbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29sdW1ucy1nYXA7XG4gICAgcGFkZGluZy1yaWdodDogJGNvbHVtbnMtZ2FwO1xuICAgIHBhZGRpbmctYm90dG9tOiAkY29sdW1ucy1nYXA7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGNvbHVtbnMtZ2FwO1xuICAgIH1cbiAgfVxuXG4gICYuZ3JpZF8yIHtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgIC5jb2x1bW4ge1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZ3JpZF8zIHtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICAgIC5jb2x1bW4ge1xuICAgICAgICB3aWR0aDogMzMuMzMzJTtcbiAgICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmdyaWRfNCB7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgICAuY29sdW1uIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICAuY29sdW1uIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmdyaWRfNSB7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0KSB7XG4gICAgICAuY29sdW1uIHtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICAuY29sdW1uIHtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNsZWFyLW1hcmdpbiB7XG4gIG1hcmdpbjogMDtcbn1cblxuLndwLWJsb2NrLXJhbmstbWF0aC10b2MtYmxvY2sge1xuICBiYWNrZ3JvdW5kOiAjRjZGOUZGO1xuICBwYWRkaW5nOiByZW0oMjUpIHJlbSgzNSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgcGFkZGluZzogcmVtKDQwKSByZW0oNTUpO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSA4NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44OTk2MTkyMjI2ODkwNzU2KSA5MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43OTU5Nzc3NjYxMDY0NDI2KSA5NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yMDIxNDAyMzEwOTI0MzY5NSkgMTAwJSk7XG4gICAgei1pbmRleDogMjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luOiAwIDAgcmVtKDMyKSAwO1xuICAgIGZvbnQtc2l6ZTogcmVtKDI2KTtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIG1hcmdpbjogMCAwIHJlbSg0NSkgMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgICB9XG4gIH1cblxuICB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogcmVtKDMwKTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHN0ZXAtY291bnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzFBMUUyMjtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBjb3VudGVyKHN0ZXAtY291bnRlcikgJy4nO1xuICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjMUExRTIyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSg1KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1vZi1jb250ZW50cy1zaWRlYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogY2FsYygoMTAwJSAtICN7JHNpbmdsZV9wb3N0X2NvbnRlbnRfd2lkdGhfZGVza3RvcH0gLSAje3JlbSggMiAqIDQwcHggKX0pIC8gMik7XG4gICAgb3BhY2l0eTogMDtcbiAgICBoMiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIH1cbiAgICAuY29udGVudC1lbGVtZW50LXJvdyB7XG4gICAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgLmNvbnRlbnQtaGVhZGluZyB7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb250ZW50LWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIGNvbG9yOiAjMUExRTIyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IHJlbSgyMCk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1heC13aWR0aDogcmVtKDIwKTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMjEpO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJlZDtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMjEpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjEpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjMUExRTIyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEhvbWVwYWdlXG4uaGlnaGxpZ2h0LWljb25zIHtcbiAgbWF4LXdpZHRoOiAkc2Vjb25kYXJ5LXdpZHRoICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDEwKTtcbiAgICBwYWRkaW5nOiAxcHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkxLjQ0ZGVnLCAjRkZGRkZGIC0yLjEzJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA5Ny4wMiUpO1xuICAgIC13ZWJraXQtbWFzazogbGluZWFyLWdyYWRpZW50KCNmZmYgMCAwKSBjb250ZW50LWJveCxcbiAgICBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApO1xuICAgIC13ZWJraXQtbWFzay1jb21wb3NpdGU6IHhvcjtcbiAgICBtYXNrLWNvbXBvc2l0ZTogZXhjbHVkZTtcblxuICB9XG5cbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlZG93bikge1xuICAgIHBhZGRpbmc6IHJlbSg0MCk7XG4gICAgZ2FwOiByZW0oMzIpO1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWwtc207XG4gICAgY29sb3I6ICRjb2xvcl9fdGV4dC1zZWNvbmRhcnk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGVkb3duKSB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtbTtcbiAgICB9XG4gIH1cblxuICAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiByZW0oMTQpO1xuICB9XG5cbiAgLndwLWJsb2NrLWdyb3VwIHtcbiAgICB0cmFuc2l0aW9uOiBzY2FsZSAwLjZzIGVhc2UtaW4tb3V0O1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBzY2FsZTogMS4xNTtcbiAgICB9XG4gIH1cbn1cblxuLmhhbGYtc2l6ZS1wYXJ0LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogcmVtKDQwKTtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5sZWZ0LXBhcnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHJlbSgzNik7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLXRhZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5RkJGO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDYwKTtcbiAgICAgIGNvbG9yOiAjOTk5RkJGO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHBhZGRpbmc6IHJlbSg2KSByZW0oMzIpO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXh4eGw7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZWRvd24pIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14eGwtbW9iaWxlO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yaWdodC1wYXJ0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBicCh0YWJsZXRsYW5kc2NhcGUpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICB9XG5cbn1cblxuLnNkLXByb2R1Y3QtY2F0YWxvZyB7XG4gIC8vcGFkZGluZzogcmVtKDQwKSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIGdhcDogcmVtKDQwKTtcbiAgbWluLWhlaWdodDogcmVtKDUyMCk7XG4gIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgIGdhcDogcmVtKDYwKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogJHNkLXByaW1hcnktY29sb3I7XG4gICAgd2lkdGg6IDIwMHZ3O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC01MCU7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSgyMCk7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxMDBweCk7XG4gICAgfVxuICB9XG5cbiAgLmxlZnQtcGFydCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogcmVtKDQwKTtcbiAgICBwYWRkaW5nOiByZW0oMzIpIDA7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlZG93bikge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICBnYXA6IHJlbSg4MCk7XG4gICAgICBwYWRkaW5nOiByZW0oNTApO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLmJyb2NodXJlcy1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBnYXA6IHJlbSgyMCk7XG5cbiAgICAgIGEge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSg4KTtcbiAgICAgICAgcGFkZGluZzogcmVtKDEwKTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiByZW0oMTIpO1xuXG4gICAgICAgIC5kb3dubG9hZC1pY29uIHtcbiAgICAgICAgICBwYWRkaW5nOiByZW0oNyk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBtaW4td2lkdGg6IHJlbSgzMik7XG4gICAgICAgICAgd2lkdGg6IHJlbSgzMik7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yaWdodC1wYXJ0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmZsaXBib29rIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgfVxufVxuXG4ubS10LTEwMCB7XG4gIG1hcmdpbi10b3A6IHJlbSgxMDApO1xufVxuXG4uY2FyZHMtd3JhcHBlciB7XG4gIC8vcGFkZGluZzogcmVtKDYwKSAwO1xuICAvL0BpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAvLyAgcGFkZGluZzogcmVtKDEyMCkgMCAwIDA7XG4gIC8vfVxuICBAaW5jbHVkZSBjYXJkc1dyYXBwZXI7XG5cblxufVxuXG4uY2FyZCB7XG4gIEBpbmNsdWRlIGNhcmQ7XG5cbiAgLmNhcmQtY29udGVudCB7XG4gICAgQGluY2x1ZGUgY2FyZENvbnRlbnQ7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB0cmFuc2l0aW9uOiBzY2FsZSAuNnMgZWFzZS1pbi1vdXQ7XG4gIH1cbn1cblxuLmNhcmQtaG92ZXIge1xuICBAaW5jbHVkZSBjYXJkSG92ZXI7XG59XG5cbi5kZi1iZyB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm5ld3MtaGVhZGVyIHtcbiAgcGFkZGluZzogcmVtKDI0KTtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgcGFkZGluZzogcmVtKDgwKSByZW0oMTAwKTtcbiAgfVxufVxuXG4ucGlsbCB7XG4gIHBhZGRpbmc6IHJlbSg2KSByZW0oMTApO1xuICBib3JkZXI6IDFweCBzb2xpZCAkc2QtcHJpbWFyeS1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogcmVtKDQwKTtcbiAgY29sb3I6ICRzZC1wcmltYXJ5LWNvbG9yO1xufVxuXG4ubmV3cy13cmFwcGVyIHtcbiAgcGFkZGluZzogcmVtKDQwKSAwIHJlbSgxMDApIDA7XG4gIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgIHBhZGRpbmc6IHJlbSg2NCkgMCByZW0oMTQwKSAwO1xuICB9XG5cbiAgLmZhY2V0d3AtZmFjZXQge1xuICAgIEBpbmNsdWRlIGZhY2V0d3AtZmFjZXQ7XG4gIH1cblxuICAucG9zdHMtaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgZ2FwOiByZW0oMjQpO1xuICAgIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgZ2FwOiByZW0oNDApO1xuICAgIH1cblxuICAgIC5wb3N0LWNhcmQge1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDEwKTtcbiAgICAgIGJveC1zaGFkb3c6IDBweCA0cHggMzBweCAwcHggIzAwMDAwMDI2O1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICBpbWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAwLjc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0oMTApO1xuICAgICAgfVxuXG4gICAgICAucG9zdC1pbmZvIHtcbiAgICAgICAgcGFkZGluZzogcmVtKDIwKTtcblxuICAgICAgICAubWV0YSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiByZW0oMTIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3N0LXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbSgyMik7XG4gICAgICAgICAgY29sb3I6ICRzZC1wcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgICAgLS1tYXgtbGluZXM6IDI7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiB2YXIoLS1tYXgtbGluZXMpO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaW5nbGUtYmxvZyB7XG5cbiAgJi5uZXdzIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oNTApO1xuICAgIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtKDYwKTtcbiAgICB9XG5cbiAgICAubWV0YSB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogcmVtKDE2KTtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBnYXA6IHJlbSgzMik7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogcmVtKDE2KTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1tO1xuICAgIH1cbiAgfVxuXG59XG5cbi5oaWdobGlnaHQtdGV4dCB7XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnNwbGlkZV9fYXJyb3dzIHtcbiAgLnNwbGlkZV9fYXJyb3cge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogcmVtKDQ4KSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiByZW0oNDgpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjMzMzNTM3O1xuXG4gICAgc3ZnIHtcbiAgICAgIHBhdGgge1xuICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3BsaWRlX19hcnJvdy0tcHJldiB7XG4gICAgICBsZWZ0OiByZW0oNDgpO1xuICAgIH1cblxuICAgICYuc3BsaWRlX19hcnJvdy0tbmV4dCB7XG4gICAgICByaWdodDogcmVtKDQ4KTtcbiAgICB9XG4gIH1cbn1cblxuLnB1bHNlIHtcbiAgb3BhY2l0eTogMDsgLyogSGlkZSB0aGUgZWxlbWVudCBidXQgcmVzZXJ2ZSBzcGFjZSAqL1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7IC8qIFNldCB0aGUgaW5pdGlhbCB0cmFuc2Zvcm0gdG8gbWF0Y2ggdGhlIGFuaW1hdGlvbiBzdGFydCAqL1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1vdXQ7IC8qIE9wdGlvbmFsOiBmYWRlIGluIGVmZmVjdCBvbiBpbml0aWFsIGxvYWQgKi9cbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybTsgLyogSW5mb3JtIHRoZSBicm93c2VyIGFib3V0IHVwY29taW5nIGNoYW5nZXMgKi9cbn1cblxuXG4uaGVhZGVyLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwcHgpOyAvKiBNYXRjaGVzIHRoZSBpbml0aWFsIHN0YXRlIGluIHRoZSBHU0FQIGFuaW1hdGlvbiAqL1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0OyAvKiBPcHRpb25hbDogc21vb3RoIGluaXRpYWwgbG9hZCAqL1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07IC8qIFByZXBhcmUgdGhlIGJyb3dzZXIgZm9yIHRoZSBhbmltYXRpb24gKi9cbiAgfVxuXG59XG5cblxuLnRleHQtY29udGVudCB7XG4gIG9wYWNpdHk6IDA7IC8qIFN0YXJ0IHdpdGggb3BhY2l0eSAwIGJ1dCByZXNlcnZlIHNwYWNlICovXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7IC8qIE1hdGNoIHRoZSBpbml0aWFsIHRyYW5zZm9ybSBpbiB0aGUgYW5pbWF0aW9uICovXG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm07IC8qIE9wdGltaXplIGZvciB0aGUgdXBjb21pbmcgY2hhbmdlcyAqL1xuXG59XG5cbi5zbGlkZS1mcm9tLWJvdHRvbSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgb3BhY2l0eTogMC40O1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgdHJhbnNmb3JtO1xufVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4uaGlkZGVuLWgxdGFnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OXB4O1xuICB0b3A6IC05OTk5cHg7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn0iLCJidXR0b246bm90KC5ibG9jay1lZGl0b3ItYnV0dG9uLWJsb2NrLWFwcGVuZGVyKTpub3QoLmNvbXBvbmVudHMtYnV0dG9uKTpub3QoLnNwbGlkZV9fcGFnaW5hdGlvbl9fcGFnZSksXG4uYnV0dG9uLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4ud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHJlbSgxMCk7XG4gIGNvbG9yOiAkc2QtcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiByZW0oMTMpIHJlbSgzNSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgJGVhc2luZztcbiAgbWluLXdpZHRoOiByZW0oMTQwKTtcblxuICAmOmhvdmVyIHtcbiAgICAvL2JhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZC1idXR0b24taG92ZXI7XG4gIH1cblxuXG4gICY6ZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICAuZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbn1cblxuLmRlZmF1bHQtYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IHJlbSgxMCk7XG4gIGJhY2tncm91bmQ6ICRjb2xvcl9fdGV4dC1zZWNvbmRhcnk7XG4gIHBhZGRpbmc6IHJlbSgxNCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjRUJGM0ZGO1xufVxuXG4uZGFyay1idXR0b24ge1xuICBAaW5jbHVkZSBkYXJrLWJ1dHRvbjtcbn1cblxuLndwY2Y3LXN1Ym1pdCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1tICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZC1vdmVybGF5LWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiByZW0oNCk7XG4gIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn0iLCJpbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0sXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGNvbG9yOiAkY29sb3JfX3RleHQtaW5wdXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9fYm9yZGVyLWlucHV0O1xuICBwYWRkaW5nOiByZW0oMTMpIHJlbSgxNik7XG4gIGJvcmRlci1yYWRpdXM6IHJlbSg0KTtcbiAgLy9taW4taGVpZ2h0OiByZW0oNDQpO1xuICB0cmFuc2l0aW9uOiAzMDBtcyBhbGw7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy9mb250LXNpemU6IHJlbSgxNik7XG4gIC8vbGluZS1oZWlnaHQ6IHJlbSgyMik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHdpZHRoOiAxMDAlO1xuICAvL21hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQtaW5wdXQtZm9jdXM7XG4gICAgdHJhbnNpdGlvbjogMzAwbXMgYWxsO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX19ib3JkZXItaW5wdXQ7XG4gIC8vaGVpZ2h0OiAyLjQzNzVyZW07XG4gIC8vbWFyZ2luOiAwIDAgMXJlbTtcbiAgLy8td2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC8vLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAvL2FwcGVhcmFuY2U6IG5vbmU7XG4gIC8vYm9yZGVyLXJhZGl1czogMDtcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAvL2ZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAvL2ZvbnQtc2l6ZTogMXJlbTtcbiAgLy9mb250LXdlaWdodDogNDAwO1xuICAvL2xpbmUtaGVpZ2h0OiAxLjU7XG4gIC8vY29sb3I6ICMwYTBhMGE7XG4gIC8vYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICAvL2JhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgLy9iYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIC8vYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgLy9iYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIC8vcGFkZGluZzogLjVyZW0gMS41cmVtIC41cmVtIC41cmVtO1xuICAvLy13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4yNXMgZWFzZS1pbi1vdXQsIC13ZWJraXQtYm94LXNoYWRvdyAuNXM7XG4gIC8vdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuNXMsIGJvcmRlci1jb2xvciAuMjVzIGVhc2UtaW4tb3V0LCAtd2Via2l0LWJveC1zaGFkb3cgLjVzO1xufVxuXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBDb250YWN0IGZvcm0gNyBzcGVjaWZpYyBzdHlsZXNcbi8vLndwY2Y3IHtcbi8vXHQud3BjZjctbGlzdC1pdGVtIHtcbi8vXHRcdGJhY2tncm91bmQ6ICRjYXRza2lsbF93aGl0ZTtcbi8vXHRcdGRpc3BsYXk6IHRhYmxlO1xuLy9cdFx0cGFkZGluZzogLjVyZW0gMXJlbTtcbi8vXHRcdG1hcmdpbi1ib3R0b206IHJlbSg0KTtcbi8vXHRcdG1hcmdpbi1sZWZ0OiAwO1xuLy9cdFx0Ym9yZGVyLXJhZGl1czogNHB4O1xuLy9cdH1cbi8vXHQud3BjZjctbGlzdC1pdGVtLWxhYmVsIHtcbi8vXHRcdHBhZGRpbmc6IC4zcmVtO1xuLy9cdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcbi8vXHR9XG4vL1x0bGFiZWwge1xuLy9cdFx0Zm9udC1zaXplOiByZW0oMTQpO1xuLy9cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcbi8vXHR9XG4vL1xuLy9cdC53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuLy9cdFx0cGFkZGluZzogMXJlbTtcbi8vXHRcdGJvcmRlci13aWR0aDogMXB4O1xuLy9cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcbi8vXHRcdCYud3BjZjctdmFsaWRhdGlvbi1lcnJvcnMge1xuLy9cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkcmljaF9nb2xkO1xuLy9cdFx0fVxuLy9cdH1cbi8vfSIsIkBpbXBvcnQgXCJidXR0b25zXCI7XG5cbkBpbXBvcnQgXCJmaWVsZHNcIjtcblxuZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogcmVtKDE2KTsgLyogQWRqdXN0IHRoZSBnYXAgYXMgbmVlZGVkICovXG4gIC5mb3JtLXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHJlbSgxNik7IC8qIEFkanVzdCB0aGUgZ2FwIGJldHdlZW4gdGhlIGZpZWxkcyBhcyBuZWVkZWQgKi9cbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIEBpbmNsdWRlIGJwKHRhYmxldCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gIH1cblxuICBsYWJlbCB7XG4gICAgZmxleDogMTtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHB4OyAvKiBBZGp1c3QgdGhlIGhlaWdodCBhcyBuZWVkZWQgKi9cbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuXG5cblxuXG5cblxuIiwiLy9NYWluIE1lbnUgdmFyaWFibGVzXG4kdG9wLWJhci1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkZGRkZGIDAlLCAjRUNGM0ZCIDQzJSwgI0RDRThGNyAxMDAlKSAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG5cbiRtZW51LXRleHQtY29sb3I6ICRkYXJrLWdyZXk7XG4kbWVudS10ZXh0LWNvbG9yLWFjY2VudDogIzIyM2Q2MztcbiRtZW51LXRleHQtY29sb3ItYWNjZW50LXNlY29uZDogIzY3Nzg5MjsgLy8gU3ViLW1lbnUgdGl0bGVzXG4kbWVudS10ZXh0LWNvbG9yLXNlY29uZGFyeTogJG1lbnUtdGV4dC1jb2xvci1hY2NlbnQtc2Vjb25kOyAvLyBJdGVtcyBkZXNjcmlwdGlvblxuXG4kbWVudS1hY3RpdmUtYWNjZW50OiAjRkY3NjRCO1xuXG4kbWVudS10ZXh0LXRpdGxlLWJvcmRlcjogI0JGQkZCRjsgLy9VbmRlciBzdWItbWVudSB0aXRsZXNcblxuJG1lbnUtYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiRtZW51LWJvdHRvbS1ib3JkZXI6ICNlZGVkZWQ7XG5cbiRoYW1idXJnZXItY29sb3I6ICMyMjNkNjM7XG5cbiRtb2JpbGUtbWVudS1zZXBhcmF0b3I6ICNDRUQ2RTA7XG4kbW9iaWxlLW1lbnUtc2VwYXJhdG9yLW9wZW5lZDogI0NFRDZFMDtcblxuJGNoZXZyb24tY29sb3I6ICMwMDA7XG5cbiRtb2JpbGUtbWVudS1vcGVuZWQtYmFja2dyb3VuZDogI0Y4RjhGODtcblxuJGxvZ28td2lkdGg6IHJlbSgxNTYpO1xuJGxvZ28taGVpZ2h0OiByZW0oNDMpO1xuXG5Aa2V5ZnJhbWVzIG1hcnF1ZWUge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xMDAlIC0gdmFyKC0tZ2FwKSkpO1xuICB9XG59XG5cbmJvZHkuYWRtaW4tYmFyIHtcbiAgLnNpdGUtaGVhZGVyIHtcbiAgICB0b3A6IDkwcHg7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc4NXB4KSB7XG4gICAgICB0b3A6IDc3cHg7XG4gICAgfVxuXG4gICAgJi5ub3Qtb24tdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3ODVweCkge1xuICAgICAgICB0b3A6IDMycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlZG93bikge1xuICAgIC5oZWFkZXItd3JhcC5tZW51X29wZW4ge1xuICAgICAgLm1lbnUtd3JhcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmJvZHkuc2VwYXJhdGVfaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6ICRoZWFkZXJfaGVpZ2h0X21vYmlsZTtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXJfaGVpZ2h0X2Rlc2t0b3A7XG4gIH1cbn1cblxuLnRvcC1iYXIge1xuICBoZWlnaHQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgYmFja2dyb3VuZDogJHRvcC1iYXItYmFja2dyb3VuZDtcblxuICBzcGFuLCBwLCBhIHtcbiAgICBjb2xvcjogJG1lbnUtdGV4dC1jb2xvcjtcbiAgfVxuXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IHJlbSg1MCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgMTBweDtcblxuICAmID4gYSB7XG4gICAgbGluZS1oZWlnaHQ6IHJlbSg1MCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbSg1MCk7XG4gICAgaGVpZ2h0OiByZW0oNTApO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLnN0MiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKHRhYmxldGRvd24pIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7XG4gICAgICAubWFycXVlZSB7XG4gICAgICAgIC0tZ2FwOiAycmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgZ2FwOiB2YXIoLS1nYXApO1xuXG4gICAgICAgIC5zdCB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0oNTApO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgYW5pbWF0aW9uOiBtYXJxdWVlIDE1cyBsaW5lYXIgaW5maW5pdGU7XG5cbiAgICAgICAgICAmLnN0MiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIC50Yi1idG4ge1xuICAgIC8vY29sb3I6ICRtZW51LXRleHQtY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICBsaW5lLWhlaWdodDogcmVtKDUwKTtcbiAgICBoZWlnaHQ6IHJlbSg1MCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5lbmFibGVkX3RvcF9iYXIge1xuICBwYWRkaW5nLXRvcDogcmVtKDUwKTsgLy8gVG9EbyBDYWxjdWxhdGVcbiAgJi5oaWRlbl9oZWFkZXJfYW5kX2Zvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAudG9wLWJhciB7XG4gICAgaGVpZ2h0OiByZW0oNTApICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogMTAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuc2l0ZS1oZWFkZXIge1xuICAgICYuaGVhZGVyLWhpZGUge1xuICAgICAgdG9wOiByZW0oLTE1Mik7IC8vIFRvRG8gQ2FsY3VsYXRlXG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnAodGFibGV0ZG93bikge1xuICAgIC5tZW51LXdyYXAgLm1lbnUtc2Nyb2xsLWNvbnRhaW5lciB7XG4gICAgICB0b3A6IHJlbSg1MCk7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdG9wOiByZW0oNDUpO1xuICB0cmFuc2l0aW9uOiBhbGwgLjFzIGVhc2Utb3V0O1xuXG4gICYubm90LW9uLXRvcCwgJi5tZW51X29wZW5fbWFzdGhlYWQsICYuZGVza3RvcF9tZW51X29wZW5fbWFzdGhlYWQsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cblxuICAmLmhlYWRlci1oaWRlIHtcbiAgICB0b3A6IHJlbSgtI3skaGVhZGVyX2hlaWdodF9kZXNrdG9wfSk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAmLmhlYWRlci1oaWRlIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cblxuICAuaXMtc3R1Y2ssIC5tZW51X29wZW4sIC5zZXBhcmF0ZV9oZWFkZXJfb25fd3JhcCB7XG4gICAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlZG93bikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA1cHggIzAwMDAwMDFhO1xuICAgICAgLmxvZ28td2hpdGUge1xuICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAubG9nby1ibHVlIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OztcbiAgICAgIH1cbiAgICAgIC5oYW1idXJnZXIgc3BhbiB7XG4gICAgICAgIC8vYmFja2dyb3VuZDogJGhhbWJ1cmdlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLXdyYXAge1xuICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2Utb3V0O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG59XG5cblxuLnNpdGUtaGVhZGVyOm5vdCgubm90LW9uLXRvcCkge1xuICAuaGVhZGVyLXdyYXAge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEzMG1zO1xuXG4gICAgLm1lbnUtd3JhcCB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXM7XG4gICAgfVxuXG4gICAgLmxvZ28td2hpdGUsIC5sb2dvLWJsdWUge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogODBtcztcbiAgICB9XG5cbiAgICAmLm1lbnVfb3BlbiwgJi5kZXNrdG9wX21lbnVfb3BlbiB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXM7XG5cbiAgICAgIC5tZW51LXdyYXAge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiA4MG1zO1xuICAgICAgfVxuXG4gICAgICAubG9nby13aGl0ZSwgLmxvZ28tYmx1ZSB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBtcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBNb2JpbGUgSGVhZGVyIGFuZCBNZW51XG5cbkBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZWRvd24pIHtcblxuICAuaGVhZGVyLXdyYXAubWVudV9vcGVuIHtcbiAgICAubWVudS13cmFwIHtcbiAgICAgIHRvcDogJGhlYWRlcl9oZWlnaHRfbW9iaWxlO1xuICAgICAgYmFja2dyb3VuZDogJG1lbnUtYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlciB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIHRvcDogcmVtKDYpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICByaWdodDogLTE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgdG9wOiByZW0oNik7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRvcC1iYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmhlYWRlci1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gcmVtKDE1KTtcbiAgICBoZWlnaHQ6ICRoZWFkZXJfaGVpZ2h0X21vYmlsZTtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUtbWVudS1iZy1ncmFkaWVudDtcblxuICAgIC5sb2dvLWNvbnRhaW5lciB7XG4gICAgICBmbGV4OiAwIDAgJGxvZ28td2lkdGg7XG5cbiAgICAgIC5tYWluLWxvZ28ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6ICRsb2dvLWhlaWdodDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogJGxvZ28taGVpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGJ1dHRvbi5tb2JpbGUtbWVudS1pY29uIHtcbiAgICAgIC8vbWFyZ2luOiAtMC43NXJlbSByZW0oLTIxKSAtMC43NXJlbSAwO1xuICAgICAgaGVpZ2h0OiByZW0oNTApO1xuICAgICAgd2lkdGg6IHJlbSg3MSk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmN0YSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAubWVudS13cmFwIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiBjYWxjKC0xMDAlICsgNTBweCk7XG4gICAgYmFja2dyb3VuZDogJG1lbnUtYmFja2dyb3VuZC1jb2xvcjtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLW91dDtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxNTBtcztcblxuICAgIC5tZW51LXNjcm9sbC1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiByZW0oNzUpO1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIH1cblxuICAgIC5tZWdhLW1haW4tbWVudSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgIGxpLmRlcHQtMCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICYgPiBhIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBwYWRkaW5nOiByZW0oMjEpO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgY29sb3I6ICRtZW51LXRleHQtY29sb3I7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogcmVtKDIxKTtcbiAgICAgICAgICAgIHJpZ2h0OiByZW0oMjEpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbW9iaWxlLW1lbnUtc2VwYXJhdG9yO1xuICAgICAgICAgICAgYm90dG9tOiByZW0oLTAuNSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi53aWRlX2JvcmRlciB7XG4gICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKC0yKTtcbiAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgIHJpZ2h0OiByZW0oMjEpO1xuICAgICAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRjaGV2cm9uLWNvbG9yO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogcmVtKC0xKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbW9iaWxlLW1lbnUtc2VwYXJhdG9yLW9wZW5lZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogJG1lbnUtdGV4dC1jb2xvci1hY2NlbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbW9iaWxlLW1lbnUtb3BlbmVkLWJhY2tncm91bmQ7XG4gICAgICAgICAgICAvL2JveC1zaGFkb3c6IDBweCAwcHggM3B4ICMwMDAwMDAyOTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYgPiAuc3ViLW1lbnUtd3JhcCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vYmlsZS1tZW51LXNlcGFyYXRvci1vcGVuZWQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgPiAuc3ViLW1lbnUtd3JhcCB7XG4gICAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLW91dDtcbiAgICAgICAgICB3aWxsLWNoYW5nZTogbWF4LWhlaWdodDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICYgPiB1bC5zdWItbWVudSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICAgICBsaS5kZXB0LTEge1xuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDE5LjUpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJiA+IGEuYS1kZXB0LTEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVudS10ZXh0LWNvbG9yLWFjY2VudC1zZWNvbmQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDIxKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDEwLjUpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTEpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxOS41KTtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMSk7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS10ZXh0LXRpdGxlLWJvcmRlcjtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBsZWZ0OiByZW0oMjEpO1xuICAgICAgICAgICAgICAgICAgcmlnaHQ6IHJlbSgyMSk7XG4gICAgICAgICAgICAgICAgICBib3R0b206IHJlbSgtMC41KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmNvbHVtbnMge1xuICAgICAgICAgICAgICAgICYgPiAuc3ViLW1lbnUge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0oMTAuNSkgcmVtKDIxKSByZW0oMTAuNSkgcmVtKDEwLjUpO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxMC41KSByZW0oMTAuNSkgcmVtKDEwLjUpIHJlbSgyMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLnJlc291cmNlcyB7XG4gICAgICAgICAgICAgICAgLmEtZGVwdC0xIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJG1lbnUtdGV4dC1jb2xvci1hY2NlbnQ7XG4gICAgICAgICAgICAgICAgICAvL21hcmdpbi1ib3R0b206IHJlbSgxNy41KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmID4gLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAgICYuY29udGVudC1zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS4zMTI1cmVtO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDUuNik7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSg4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogcmVtKDEyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHJlbSgyMik7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9yaWdodF9hcnJvd19ncmVlbi5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0oNikgcmVtKDIwKSByZW0oNikgcmVtKDM2KTtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMyk7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICBzcGFuLmRlc2Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNClcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmID4gLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxOS41KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxMC41KSByZW0oMjEpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oOSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVudS10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LXRleHQtY29sb3ItYWNjZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICAgLmRlc2Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmRlc2Mge1xuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVudS10ZXh0LWNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxMyk7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5zZWVfYWxsX2xpbmsge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDE5KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgyMSk7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG1lbnUtdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oNTUpO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oNCk7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBib3R0b206IDEycHg7XG4gICAgICAgICAgICAgICAgICBsZWZ0OiByZW0oMjEpO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtdGV4dC10aXRsZS1ib3JkZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVudS10ZXh0LWNvbG9yLWFjY2VudDtcblxuICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmN0YS1idG5zIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogcmVtKDIxKTtcbiAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgIGxlZnQ6IHJlbSgyMSk7XG4gICAgICByaWdodDogcmVtKDIxKTtcbiAgICAgIG1heC13aWR0aDogcmVtKDM2MCk7XG4gICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGZsZXg6IDEgMSA1MCU7XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRtb2JpbGUtbWVudS1zZXBhcmF0b3I7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJG1lbnUtdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDI2KSAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICAgICAgY29sb3I6ICRtZW51LXRleHQtY29sb3ItYWNjZW50O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LXRleHQtY29sb3ItYWNjZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zaXRlLWhlYWRlciB7XG4gICAgdG9wOiAwO1xuICAgIEBpbmNsdWRlIG1vYmlsZS1tZW51LWJnLWdyYWRpZW50O1xuICB9XG59XG5cbi5oYW1idXJnZXIge1xuICB3aWR0aDogcmVtKDIwKTtcbiAgaGVpZ2h0OiByZW0oMTQpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNpdGlvbjogLjVzIGVhc2UtaW4tb3V0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiByZW0oMTgpO1xuICByaWdodDogMDtcblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiByZW0oMS41KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSgxLjUpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiAuMjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHRvcDogcmVtKDYuNSk7XG4gICAgICAvL3dpZHRoOiByZW0oMTQpO1xuICAgICAgLy9sZWZ0OiA1MCU7XG4gICAgICAvL21hcmdpbi1sZWZ0OiByZW0oLTcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgfVxufVxuXG5cbi8vIERlc2t0b3AgSGVhZGVyIGFuZCBNZW51XG5cbkBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuXG5cbiAgLnNpdGUtaGVhZGVyIHtcbiAgICAmLmhlYWRlci1oaWRlIHtcbiAgICAgIHRvcDogcmVtKC0jeyRoZWFkZXJfaGVpZ2h0X2Rlc2t0b3B9KTtcbiAgICB9XG5cbiAgICAuaGVhZGVyLXdyYXAge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmLmlzLXN0dWNrLCAmLmRlc2t0b3BfbWVudV9vcGVuLCAmLnNlcGFyYXRlX2hlYWRlcl9vbl93cmFwIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgIzAwMDAwMDFhO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lbnUtYm90dG9tLWJvcmRlcjtcblxuICAgICAgICAubWVnYS1tYWluLW1lbnUgLmEtZGVwdC0wIHtcbiAgICAgICAgICBjb2xvcjogJG1lbnUtdGV4dC1jb2xvciAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtYWN0aXZlLWFjY2VudCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRjaGV2cm9uLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBhLmNvbnRhY3RfYnRuIHtcbiAgICAgICAgICBjb2xvcjogJG1lbnUtdGV4dC1jb2xvci1hY2NlbnQgIWltcG9ydGFudDtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LXRleHQtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5kZXNrdG9wX21lbnVfb3BlbiB7XG4gICAgICAgIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAgPiAuc3ViLW1lbnUtd3JhcCB7XG4gICAgICAgICAgei1pbmRleDogLTU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzO1xuXG4gICAgICAgICAgJiA+IC5zdWItbWVudSB7XG4gICAgICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgICAvL3RyYW5zaXRpb24tZGVsYXk6IDAuMTVzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tZWdhLW1haW4tbWVudSBsaS5kZXB0LTAub3BlbiA+IC5zdWItbWVudS13cmFwIHtcbiAgICAgICAgICB6LWluZGV4OiAtMjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcblxuICAgICAgICAgICYgPiAuc3ViLW1lbnUge1xuICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cblxuICAgICAgLnRvcC1iYXIge1xuICAgICAgICBoZWlnaHQ6IHJlbSg0MCk7XG4gICAgICAgIGJhY2tncm91bmQ6ICR0b3AtYmFyLWJhY2tncm91bmQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0oMTUpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIGZyb3N0ZWQtZ2xhc3MoNjBweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpKTtcbiAgICAgICAgZ2FwOiByZW0oMjQpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgICAgICAgIG1heC13aWR0aDogJHNpdGVfd2lkdGhfdGFibGV0bGFuZHNjYXBlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnAobGFwdG9weHMpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6ICRzaXRlX3dpZHRoX2xhcHRvcHhzICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLmxvZ28tY29udGFpbmVyIHtcbiAgICAgICAgICBmbGV4OiAwIDAgJGxvZ28td2lkdGg7XG5cbiAgICAgICAgICAubWFpbi1sb2dvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgaGVpZ2h0OiAkbG9nby1oZWlnaHQ7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogJGxvZ28taGVpZ2h0O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWVudS1jb250YWluZXIge1xuICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICAgIGhlaWdodDogJGhlYWRlcl9oZWlnaHRfZGVza3RvcDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgLm1lbnUtd3JhcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAubWVudS1zY3JvbGwtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgzMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jdGEtYnRucyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIC8vdWwge1xuICAgICAgICAgICAgICAvLyAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgLy8gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgIC8vICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIC8vICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIC8vICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAvL1xuICAgICAgICAgICAgICAvLyAgbGkge1xuICAgICAgICAgICAgICAvL1xuICAgICAgICAgICAgICAvLyAgICBhIHtcbiAgICAgICAgICAgICAgLy8gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgLy8gICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgICAgIC8vICAgICAgcGFkZGluZzogcmVtKDEwKSByZW0oMTIpO1xuICAgICAgICAgICAgICAvLyAgICAgIGNvbG9yOiAkbWVudS10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAvLyAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAvLyAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSgzKTtcbiAgICAgICAgICAgICAgLy8gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgIC8vICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAgIC8vICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIC8vICAgICAgICAvL2NvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAvLyAgICAgICAgLy9iYWNrZ3JvdW5kOiAkbWVudS10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAvLyAgICAgIH1cbiAgICAgICAgICAgICAgLy8gICAgfVxuICAgICAgICAgICAgICAvLyAgfVxuICAgICAgICAgICAgICAvL31cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubW9iaWxlLW1lbnUtaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG5cbiAgICAgIC8vTWVudSBTdHlsZXNcblxuXG4gICAgICAubWVnYS1tYWluLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgbGkuZGVwdC0wIHtcbiAgICAgICAgICBhLmEtZGVwdC0wIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAvL2hlaWdodDogJGhlYWRlcl9oZWlnaHRfZGVza3RvcDtcbiAgICAgICAgICAgIC8vbGluZS1oZWlnaHQ6ICRoZWFkZXJfaGVpZ2h0X2Rlc2t0b3A7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSgyMCkgMCByZW0oMjApO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgcmlnaHQ6IHJlbSgxOCk7XG4gICAgICAgICAgICAgIGxlZnQ6IDE5cHg7XG4gICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGhlaWdodDogcmVtKDMpO1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oMTUpO1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2Utb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDM0KSAwIHJlbSgyMCk7XG4gICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSgzMCkgMCByZW0oMTApO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oLTEpO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiByZW0oMTgpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gLnN1Yi1tZW51LXdyYXAge1xuICAgICAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQ0VENkUwO1xuICAgICAgICAgICAgICAvL29wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIC8vdHJhbnNpdGlvbi1kZWxheTogMC4xNXM7XG4gICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYgPiAuc3ViLW1lbnUtd3JhcCB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiByZW0oI3skaGVhZGVyX2hlaWdodF9kZXNrdG9wfSk7XG4gICAgICAgICAgICB6LWluZGV4OiAtMjtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAvL2JveC1zaGFkb3c6IDBweCAxcHggMTBweCAjMEU2MEMzMWM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcblxuICAgICAgICAgICAgJiA+IC5zdWItbWVudSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgY2FsYygoMTAwJSAtIDExNzBweCkgLyAyKSByZW0oMTYpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVudS1ib3R0b20tYm9yZGVyO1xuXG4gICAgICAgICAgICAgIC5kZXB0LTEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMTkuNSk7XG4gICAgICAgICAgICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgLy9mbGV4OiAwIDAgMzElO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAvL2JvcmRlci1sZWZ0OiAxcHggc29saWQgI2U5ZWRmMDtcbiAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgICAgICYgPiBhLmEtZGVwdC0xIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVudS10ZXh0LWNvbG9yLWFjY2VudC1zZWNvbmQ7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgICAgICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDIxKTtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMTAuNSk7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDExKTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxOS41KTtcbiAgICAgICAgICAgICAgICAgIC8vcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSgyKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtYm90dG9tLWJvcmRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHJlbSgyMSk7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiByZW0oMjEpO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IHJlbSgtMC41KTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnJlc291cmNlcyB7XG4gICAgICAgICAgICAgICAgICAuYS1kZXB0LTEge1xuICAgICAgICAgICAgICAgICAgICAvL2ZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIC8vY29sb3I6ICRkYXJrYmx1ZS1uZXc7XG4gICAgICAgICAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogcmVtKDE3LjUpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmID4gLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHJlbSg1LjYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSg4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiByZW0oMTIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiByZW0oOS41KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvcmlnaHRfYXJyb3dfZ3JlZW4uc3ZnJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogcmVtKDYpIHJlbSgyMyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3Bhbi5kZXNjIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgICAgICYgPiAuc3ViLW1lbnUge1xuICAgICAgICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgLy9tYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDI1JTtcblxuICAgICAgICAgICAgICAgICAgICAmLmxhc3RfaXRlbV9zaXplXzIge1xuICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmxhc3RfaXRlbV9zaXplXzMge1xuICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmxhc3RfaXRlbV9zaXplXzQge1xuICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5kZXNrdG9wX2NvbHVtbnNfMyB7XG4gICAgICAgICAgICAgICAgICAmID4gLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAvL21hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAzMyU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAmLmxhc3RfaXRlbV9zaXplXzIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDY2JTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAmLmxhc3RfaXRlbV9zaXplXzMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZGVza3RvcF9jb2x1bW5zXzIge1xuICAgICAgICAgICAgICAgICAgJiA+IC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy9tYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgNTAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgJi5sYXN0X2l0ZW1fc2l6ZV8yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZGVza3RvcF9jb2x1bW5zXzEge1xuICAgICAgICAgICAgICAgICAgJiA+IC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy9tYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgPiAuc3ViLW1lbnUge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxMik7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgzOS41KTtcbiAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICYuY29udGVudC1zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS4zMTI1cmVtO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgIC8vbWFyZ2luOiAwIGF1dG87XG5cblxuICAgICAgICAgICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogcmVtKDEwLjUpIHJlbSgxMCkgcmVtKDEwKSByZW0oMTApO1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg5KTtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRtZW51LXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvL2NvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmRlc2Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAvL2NvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIC5kZXNjIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRtZW51LXRleHQtY29sb3ItYWNjZW50LXNlY29uZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oNik7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlZV9hbGxfbGluayB7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBib3R0b206IHJlbSg5KTtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IHJlbSgyMSk7XG4gICAgICAgICAgICAgICAgICAvL2ZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRtZW51LXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IHJlbSgxOCk7XG4gICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHJlbSg1NSk7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDQpO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTRweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG1vYmlsZS1tZW51LXNlcGFyYXRvcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgzMTVkZWcpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVudS10ZXh0LWNvbG9yLWFjY2VudDtcblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ib3R0b20tYm9yZGVyO1xuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLypcbmJvZHkuaW52ZXJzZV9oZWFkZXIgLnNpdGUtaGVhZGVye1xuXG5cbiAgLnRvcC1iYXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMwRTYwQzMgMCUsICMwRDQ3OEQgMTAwJSkgMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICAgIHNwYW4sIHAsIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgLmlzLWF0LXRvcCB7XG4gICAgLmxvZ28td2hpdGUge1xuICAgICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubG9nby1ibHVlIHtcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLmxvZ28td2hpdGUge1xuICAgIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5sb2dvLWJsdWUge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJwKHRhYmxldGxhbmRzY2FwZSkge1xuICAgIC5oZWFkZXItd3JhcCAubWVnYS1tYWluLW1lbnUgbGkuZGVwdC0wIGEuYS1kZXB0LTAge1xuICAgICAgY29sb3I6ICRkYXJrYmx1ZS1uZXc7XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgYmFja2dyb3VuZDogJGRhcmtibHVlLW5ldztcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAkZGFya2JsdWUtbmV3ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAmOmhvdmVye1xuICAgICAgICAvL2NvbG9yOiAkbWVudS10ZXh0LWNvbG9yO1xuICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS10ZXh0LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRtZW51LXRleHQtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXItd3JhcCAuaGVhZGVyLWNvbnRhaW5lciAubWVudS1jb250YWluZXIgLm1lbnUtd3JhcCAuY3RhLWJ0bnMgdWwgbGkgYSB7XG4gICAgICBjb2xvcjogJGRhcmtibHVlLW5ldztcbiAgICAgICY6YmVmb3Jle1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFya2JsdWUtbmV3O1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLXdyYXAgLmhlYWRlci1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5tZW51LXdyYXAgLmN0YS1idG5zIHVsIGxpIGEuYm9va19idG57XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LXRleHQtY29sb3I7XG4gICAgICAmOmhvdmVye1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRtZW51LXRleHQtY29sb3IsMTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGFtYnVyZ2VyIHtcbiAgICBzcGFue1xuICAgICAgYmFja2dyb3VuZDogIzIyM2Q2MztcbiAgICB9XG4gIH1cbn1cbiovXG5cblxuLmhpZGUtb24tbW9iaWxlIHtcbiAgQGluY2x1ZGUgYnAodGFibGV0ZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1vbi1kZXNrdG9wIHtcbiAgQGluY2x1ZGUgYnAodGFibGV0bGFuZHNjYXBlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59IiwiLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuXHRib3JkZXI6IDA7XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcblx0Y2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0d2lkdGg6IDFweDtcblx0d29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLyogTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuICovXG5cblx0Jjpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLXNjcmVlbjtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuXHRcdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcblx0XHRjbGlwLXBhdGg6IG5vbmU7XG5cdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1zY3JlZW47XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDAuODc1KTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bGVmdDogNXB4O1xuXHRcdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdFx0cGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHRvcDogNXB4O1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cblx0fVxufVxuXG4vKiBEbyBub3Qgc2hvdyB0aGUgb3V0bGluZSBvbiB0aGUgc2tpcCBsaW5rIHRhcmdldC4gKi9cbiNjb250ZW50W3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuXHRvdXRsaW5lOiAwO1xufVxuIiwiLmFsaWdubGVmdCB7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbi1yaWdodDogMS41ZW07XG59XG5cbi5hbGlnbnJpZ2h0IHtcblx0ZGlzcGxheTogaW5saW5lO1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbi1sZWZ0OiAxLjVlbTtcbn1cblxuLmFsaWduY2VudGVyIHtcblx0Y2xlYXI6IGJvdGg7XG5cdEBpbmNsdWRlIGNlbnRlci1ibG9jaztcbn1cblxuXG4uYWxpZ25mdWxsIHtcblx0bWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG5cdG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcblx0bWF4LXdpZHRoOiAxMDB2dztcblx0d2lkdGg6IDEwMHZ3O1xufVxuXG4uYWxpZ253aWRlIHtcblx0bWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG5cdG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcblx0bWF4LXdpZHRoOiAxMDB2dztcblx0d2lkdGg6IDEwMHZ3O1xuXHRwYWRkaW5nLWxlZnQ6IGVtKDMwKTtcblx0cGFkZGluZy1yaWdodDogZW0oMzApO1xuXHRAaW5jbHVkZSBicChwaG9uZXhzZG93bil7XG5cdFx0cGFkZGluZy1sZWZ0OiBlbSgxNSk7XG5cdFx0cGFkZGluZy1yaWdodDogZW0oMTUpO1xuXHR9XG5cdEBpbmNsdWRlIGJwKGxhcHRvcHhzKXtcblx0XHRtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA2MDBweCk7XG5cdFx0bWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDYwMHB4KTtcblx0XHRtYXgtd2lkdGg6ICRzaXRlX3dpZHRoX2xhcHRvcHhzO1xuXHRcdHdpZHRoOiAkc2l0ZV93aWR0aF9sYXB0b3B4cztcblxuXHR9XG5cbn0iLCIuY2xlYXI6YmVmb3JlLFxuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YmVmb3JlLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmJlZm9yZSxcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXJ7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXJ7XG5cdEBpbmNsdWRlIGNsZWFyZml4LWFmdGVyO1xufVxuIiwiLnBhZ2UtY29udGVudCAud3Atc21pbGV5LFxuLmVudHJ5LWNvbnRlbnQgLndwLXNtaWxleSxcbi5jb21tZW50LWNvbnRlbnQgLndwLXNtaWxleSB7XG5cdGJvcmRlcjogbm9uZTtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0bWFyZ2luLXRvcDogMDtcblx0cGFkZGluZzogMDtcbn1cblxuLyogTWFrZSBzdXJlIGVtYmVkcyBhbmQgaWZyYW1lcyBmaXQgdGhlaXIgY29udGFpbmVycy4gKi9cbmVtYmVkLFxuaWZyYW1lLFxub2JqZWN0IHtcblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG5pbWcge1xuXHRoZWlnaHQ6IGF1dG87IC8qIE1ha2Ugc3VyZSBpbWFnZXMgYXJlIHNjYWxlZCBjb3JyZWN0bHkuICovXG5cdG1heC13aWR0aDogMTAwJTsgLyogQWRoZXJlIHRvIGNvbnRhaW5lciB3aWR0aC4gKi9cbn1cblxuZmlndXJlIHtcblx0bWFyZ2luOiAwOyAvKiBFeHRyYSB3aWRlIGltYWdlcyB3aXRoaW4gZmlndXJlIHRhZ3MgZG9uJ3Qgb3ZlcmZsb3cgdGhlIGNvbnRlbnQgYXJlYS4gKi9cbn1cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIENhcHRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiY2FwdGlvbnNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgR2FsbGVyaWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiZ2FsbGVyaWVzXCI7XG4iLCIud3AtY2FwdGlvbiB7XG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cblx0aW1nW2NsYXNzKj1cIndwLWltYWdlLVwiXSB7XG5cdFx0QGluY2x1ZGUgY2VudGVyLWJsb2NrO1xuXHR9XG5cblx0LndwLWNhcHRpb24tdGV4dCB7XG5cdFx0bWFyZ2luOiAwLjgwNzVlbSAwO1xuXHR9XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIuZ2FsbGVyeSB7XG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG4uZ2FsbGVyeS1pdGVtIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdC8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgZ2FsbGVyeSBjb2x1bW5zLlxuXHRAZm9yICRpIGZyb20gMiB0aHJvdWdoIDkge1xuXHRcdC5nYWxsZXJ5LWNvbHVtbnMtI3skaX0gJiB7XG5cdFx0XHRtYXgtd2lkdGg6IG1hcC1nZXQoICRjb2x1bW5zLCAkaSApO1xuXHRcdH1cblx0fVxufVxuXG4uZ2FsbGVyeS1jYXB0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG4iLCJcbi8vIFZpc2liaWxpdHkgY2xhc3Nlc1xuLnNob3cteHMge1xuICBAaW5jbHVkZSBicCh0YWJsZXQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRlLXhzIHtcbiAgQGluY2x1ZGUgYnAodGFibGV0ZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn0iXX0= */
