@charset "UTF-8";
@-webkit-keyframes reveal-dropdowns {
  0% {
    visibility: hidden;
    max-height: 0;
    opacity: 0;
  }
  1% {
    visibility: visible;
  }
  99% {
    max-height: 9999em;
  }
  100% {
    visibility: visible;
    opacity: 1;
  }
}
@keyframes reveal-dropdowns {
  0% {
    visibility: hidden;
    max-height: 0;
    opacity: 0;
  }
  1% {
    visibility: visible;
  }
  99% {
    max-height: 9999em;
  }
  100% {
    visibility: visible;
    opacity: 1;
  }
}
.book-nav__list[class] {
  display: flex;
  justify-content: space-between;
  margin: 5rem 0 0;
  padding: 0;
  list-style: none;
  line-height: 1.3333;
}
@media (min-width: 1200px) {
  .book-nav__list[class] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
  }
}

.book-nav__item a {
  position: relative;
  display: inline-block;
  padding-left: 1.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  text-transform: uppercase;
}
.book-nav__item a:before {
  content: "";
  position: absolute;
  top: 0.125rem;
  left: 0;
  display: block;
  width: 0.875rem;
  height: 0.875rem;
  background: url("../../jupiter/images/arrow-down-solid.svg") no-repeat;
  background-size: contain;
  transform: rotate(90deg);
}
@supports ((-webkit-mask: url("")) or (mask: url(""))) {
  .book-nav__item a:before {
    background: currentColor;
    -webkit-mask-image: url("../../jupiter/images/arrow-down-solid.svg");
            mask-image: url("../../jupiter/images/arrow-down-solid.svg");
    -webkit-mask-position: center center;
            mask-position: center center;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
  }
}

.book-nav__item--next {
  grid-column: 2;
  text-align: right;
}
.book-nav__item--next a {
  padding-right: 1.25rem;
  padding-left: 0;
  text-align: right;
}
.book-nav__item--next a:before {
  right: 0;
  left: auto;
  transform: rotate(-90deg);
}

.breadcrumbs[class] {
  box-shadow: 0.25rem 0 0.25rem 0 rgba(0, 0, 0, 0.25);
}

#breadcrumbs[class][class] {
  padding-right: 2rem;
  padding-left: 2rem;
}

.breadcrumbs[class],
#breadcrumbs[class] {
  width: auto;
}

body[debug]:after {
  content: "";
  position: fixed;
  top: 50%;
  left: 0;
  z-index: 99999;
  display: block;
  width: 100%;
  height: 0.0625rem;
  background: rgba(255, 0, 0, 0.2);
  pointer-events: none;
}

.j-doc-nav {
  position: relative;
  z-index: 5;
  display: flex;
  justify-content: space-between;
  height: 3.25rem;
}
@media (min-width: 1000px) {
  .j-doc-nav {
    height: auto;
  }
}

.j-has-opened-doc-menu--options--mobile .j-sidebar__menu-container {
  display: none;
}
@media (min-width: 1200px) {
  .j-has-opened-doc-menu--options--mobile .j-sidebar__menu-container {
    display: block;
  }
}
.j-sidebar__menu-container[open] {
  z-index: 10;
  width: 100%;
  background: #fff;
}
.j-sidebar__menu-container[open] .j-sidebar__menu-trigger__open-text {
  color: #757575;
}
.j-sidebar__menu-container[open] .j-sidebar__menu-trigger__close-text {
  display: flex;
}
.j-sidebar__menu-container .j-sidebar__menu-trigger__close-text {
  display: none;
}
.j-sidebar__menu-container ul,
.j-sidebar__menu-container li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.j-doc-nav__wrapper {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  overflow-x: hidden;
  overflow-y: auto;
  max-height: 100vh;
  margin-right: auto;
  margin-left: auto;
  padding-top: 1.25rem;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  background: #fff;
  transition: padding-left 0.5s ease, padding-right 0.5s ease;
  visibility: hidden;
  height: 0;
  -webkit-animation: reveal-dropdowns 0.1618s 4s 1 forwards;
          animation: reveal-dropdowns 0.1618s 4s 1 forwards;
}
@media (min-width: 1000px) {
  .j-doc-nav__wrapper {
    visibility: visible;
    height: auto;
    max-height: auto;
    -webkit-animation: none;
            animation: none;
    padding-top: 3.9375rem;
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
@media (min-width: 1200px) {
  .j-doc-nav__wrapper {
    bottom: 0;
  }
}
.j-sidebar__menu-container--processed .j-doc-nav__wrapper {
  visibility: visible;
  height: auto;
  max-height: auto;
  -webkit-animation: none;
          animation: none;
}
.j-sidebar__menu-container[open] .j-doc-nav__wrapper {
  box-shadow: 0 0.3125rem 1.0625rem 0 rgba(0, 0, 0, 0.15);
}
@media (min-width: 1000px) {
  .j-sidebar__menu-container[open] .j-doc-nav__wrapper {
    box-shadow: none;
  }
}
@media (min-width: 1000px) {
  .j-reading-mode--enabled .j-doc-nav__wrapper {
    padding-right: 0;
    padding-left: 0;
  }
}

.j-doc-nav {
  width: 100%;
  padding: 0;
  line-height: 1.3333;
  background: white;
  transition: width 0.5s ease;
}

.j-sidebar__menu-trigger {
  display: flex;
  justify-content: space-between;
  padding: 1rem;
  list-style: none;
  font-size: 0.875rem;
  color: #151515;
  font-weight: 600;
  text-transform: uppercase;
  cursor: pointer;
}
.j-sidebar__menu-trigger::-webkit-details-marker {
  display: none;
}
@media (min-width: 1000px) {
  .j-sidebar__menu-trigger {
    display: none;
  }
}

.j-sidebar__menu-trigger--options {
  color: #06c;
}
.j-sidebar__menu-trigger--options:hover, .j-sidebar__menu-trigger--options:focus {
  color: #004080;
}
@supports ((-webkit-mask-image: url("../images/language-format.svg")) or (mask-image: url("../images/language-format.svg"))) {
  .j-sidebar__menu-trigger--options {
    background: none;
  }
  .j-sidebar__menu-trigger--options:before {
    content: "";
    display: block;
    width: 2.625rem;
    height: 1.25rem;
    margin-right: 0.5em;
    background: currentcolor;
    -webkit-mask: url("../images/language-format.svg") no-repeat center center;
            mask: url("../images/language-format.svg") no-repeat center center;
    -webkit-mask-size: 100% auto;
            mask-size: 100% auto;
  }
}

.j-sidebar__menu-trigger--tablet {
  position: absolute;
  top: -2.8125rem;
  right: 0.625rem;
  display: none;
  width: auto;
  color: #06c;
}
.j-sidebar__menu-trigger--tablet:hover, .j-sidebar__menu-trigger--tablet:focus {
  color: #004080;
}
@media (min-width: 1000px) {
  .j-sidebar__menu-trigger--tablet {
    display: flex;
  }
}
@media (min-width: 1400px) {
  .j-sidebar__menu-trigger--tablet {
    display: none;
  }
}
@supports ((-webkit-mask-image: url("../images/language-format.svg")) or (mask-image: url("../images/language-format.svg"))) {
  .j-sidebar__menu-trigger--tablet {
    background: none;
  }
  .j-sidebar__menu-trigger--tablet:before {
    content: "";
    display: block;
    width: 2.625rem;
    height: 1.25rem;
    margin-right: 0.5em;
    background: currentcolor;
    -webkit-mask: url("../images/language-format.svg") no-repeat center center;
            mask: url("../images/language-format.svg") no-repeat center center;
    -webkit-mask-size: 100% auto;
            mask-size: 100% auto;
  }
}

.j-sidebar__menu-trigger svg {
  height: 1.875rem;
  fill: #06c;
}
.j-sidebar__menu-trigger svg:hover, .j-sidebar__menu-trigger svg:focus {
  fill: #004080;
}

.j-doc-nav__title {
  font-size: 1.125em;
  line-height: 1.3333;
  font-family: RedHatText, "Red Hat Text", "Helvetica Neue", Arial, sans-serif;
}

.j-doc-nav__title--desktop {
  display: none;
  margin-top: 0;
}
@media (min-width: 1200px) {
  .j-doc-nav__title--desktop {
    display: block;
  }
}

@media (min-width: 1200px) {
  .j-doc-nav__menu-title,
.j-doc-nav__title--mobile {
    display: none;
  }
}

.j-doc-nav__menu-title {
  margin: 0;
  padding: 0.875rem 0;
  font-size: 0.875rem;
  font-weight: 500;
  text-transform: uppercase;
}

.pvof-doc__toc {
  max-inline-size: 25rem;
  margin: 0 auto;
}
@media (min-width: 1850px) {
  .pvof-doc__toc {
    margin-right: 0;
  }
}
.pvof-doc__toc:last-child {
  margin-bottom: 3.75rem;
}

/**
 * Prevent UI jumping due to scrollbars
 *
 * Expanding ToC sections can add a scrollbar which would change
 * the width of the ToC, making the expand buttons move from
 * under the mouse. Setting a width prevents that
 */
@media (min-width: 1000px) {
  .j-doc-nav__list {
    width: calc(
        (100vw - 16.5rem - var(--scrollbarWidth, 40px) - 1.5rem) / 12
        * 4
        + 4.5rem
        - 4rem
        - 0.25rem
      );
  }
}
@media (min-width: 1400px) {
  .j-doc-nav__list {
    width: calc(
        (100vw - 16.5rem - var(--scrollbarWidth, 40px) - 1.5rem) / 12
        * 3
        + 3rem
        - 4rem
        - 0.25rem
      );
  }
}
@media (min-width: 1850px) {
  .j-doc-nav__list {
    width: 22.5rem;
  }
}

.j-doc-nav__list {
  margin: 0;
  padding: 0;
}

.j-doc-nav__list-item {
  position: relative;
}

.j-doc-nav__link,
.j-doc-nav__children-toggle {
  display: block;
  margin: 0.125rem 0;
  padding: 0.5625rem 0;
}
.j-doc-nav__link[class],
.j-doc-nav__children-toggle[class] {
  color: #151515;
}
.j-doc-nav__link.is-active,
.j-doc-nav__children-toggle.is-active {
  color: #06c;
  background: #e7f1fa;
}

.j-doc-nav__list-item > .j-doc-nav__link,
.j-doc-nav__list-item > details > .j-doc-nav__children-toggle {
  font-size: 1rem;
  color: #6a6e73;
  font-weight: bold;
}
.j-doc-nav__list-item > .j-doc-nav__link:hover, .j-doc-nav__list-item > .j-doc-nav__link:focus,
.j-doc-nav__list-item > details > .j-doc-nav__children-toggle:hover,
.j-doc-nav__list-item > details > .j-doc-nav__children-toggle:focus {
  color: #151515;
}

@media (min-width: 1000px) {
  .j-doc-nav__list-item > .j-doc-nav__link.is-active, .j-doc-nav__list-item > .j-doc-nav__link.is-active:hover, .j-doc-nav__list-item > .j-doc-nav__link.is-active:focus {
    color: #06c;
    background: #e7f1fa;
  }
}

.j-doc-nav__children-toggle {
  overflow: hidden;
}

.j-doc-nav__section[open] > .j-doc-nav__children-toggle > .j-doc-nav__children-toggle__expand-text {
  display: none;
}

.j-doc-nav__children-toggle__collapse-text {
  display: none;
}
.j-doc-nav__section[open] > .j-doc-nav__children-toggle > .j-doc-nav__children-toggle__collapse-text {
  display: block;
}

.j-doc-nav__link {
  margin-inline: -1em;
  padding-inline: 1em;
  border-radius: 0 0.625rem 0.625rem 0;
}
.j-doc-nav__link:hover, .j-doc-nav__link:focus {
  text-decoration: none;
  background: #dedede;
}

.j-doc-nav__link--has-children {
  min-height: 2.5rem;
  margin-right: 1.5625rem;
}

.j-doc-nav__children-toggle[class][class] {
  position: relative;
  display: block;
  list-style: none;
  list-style-type: none;
  transition: background 0.25s;
  cursor: pointer;
}
.j-doc-nav__children-toggle[class][class]::-webkit-details-marker {
  display: none;
}
.j-doc-nav__section--use-small-toggle > .j-doc-nav__children-toggle[class][class] {
  position: absolute;
  top: 0;
  left: calc(100% - 1.25rem);
  z-index: 1;
  display: block;
  width: 2.5rem;
  height: 2.5rem;
}
.j-doc-nav__children-toggle[class][class]:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 0.375rem;
  height: 0.375rem;
  border: 0.125rem solid #6a6e73;
  border-bottom: 0;
  border-left: 0;
  transform: translate(-0.1875rem) rotate(45deg);
  transform-origin: right top;
}
.j-doc-nav__section--use-small-toggle > .j-doc-nav__children-toggle[class][class]:before {
  right: auto;
  left: 50%;
}
.j-doc-nav__children-wrapper[open] > .j-doc-nav__children-toggle[class][class]:before, .j-doc-nav__section[open] > .j-doc-nav__children-toggle[class][class]:before {
  transform: translate(-0.375rem, -0.1875rem) rotate(-45deg);
  transform-origin: right top;
}
.j-doc-nav__section--use-small-toggle > .j-doc-nav__children-toggle[class][class]:hover, .j-doc-nav__section--use-small-toggle > .j-doc-nav__children-toggle[class][class]:focus {
  background: #eee;
}
.j-doc-nav__children-toggle[class][class]:hover:before, .j-doc-nav__children-toggle[class][class]:focus:before {
  border-color: #06c;
}

.j-doc-nav__children-wrapper[open],
.j-doc-nav__section[open] {
  margin-bottom: 1.5rem;
}

.j-doc-nav__subnav[class] {
  padding-left: 0.5rem;
}

.j-superdoc-subnav__item {
  position: relative;
}

.j-options-container--mobile {
  position: absolute;
  top: 3.25rem;
  z-index: 0;
  width: 100%;
  height: 0;
  background: #fff;
}
@media (min-width: 1000px) {
  .j-options-container--mobile {
    display: none;
  }
}
.j-options-container--mobile .j-sidebar__menu-trigger__close-text {
  display: none;
}
.j-has-opened-doc-menu--toc .j-options-container--mobile {
  display: none;
}
.j-options-container--mobile[open] {
  z-index: 10;
  width: 100%;
  height: auto;
  background: #fff;
}
.j-options-container--mobile[open]:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -2;
  width: 100%;
  height: 50%;
  box-shadow: 0 0.3125rem 1.0625rem 0 rgba(0, 0, 0, 0.15);
}
.j-options-container--mobile[open]:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: #fff;
}
.j-options-container--mobile[open] .j-sidebar__menu-trigger__close-text {
  display: flex;
  align-items: center;
}

.j-sidebar__menu-trigger--options {
  position: absolute;
  top: -3.25rem;
  right: 0;
  padding: 1rem;
}
.j-options-container--mobile[open] .j-sidebar__menu-trigger--options {
  width: 100%;
}
.j-options-container--mobile[open] .j-sidebar__menu-trigger--options:before {
  display: none;
}

.j-sidebar__menu-trigger__open-headline {
  display: none;
}
.j-options-container--mobile[open] .j-sidebar__menu-trigger__open-headline {
  display: flex;
  color: #757575;
}

.j-doc__doc-options {
  position: relative;
  width: 100%;
  font-size: 0.875rem;
}
@media (min-width: 1400px) {
  .j-doc__doc-options {
    width: auto;
  }
}
.j-doc__doc-options details {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 0 1.5625rem;
  background-color: #fff;
  box-shadow: 0 0.625rem 0.625rem 0 rgba(0, 0, 0, 0.25);
}
@media (min-width: 1400px) {
  .j-doc__doc-options details {
    box-shadow: none;
  }
}
@media (min-width: 1400px) {
  .j-doc__doc-options {
    margin-left: 3.75rem;
    border-top: 0.0625rem solid #efefef;
  }
  .j-doc__doc-options details {
    position: relative;
    padding: 0;
  }
}

.j-doc__tertiary-sidebar__inner .j-doc__doc-options {
  display: none;
}
@media (min-width: 1000px) {
  .j-doc__tertiary-sidebar__inner .j-doc__doc-options {
    display: block;
  }
}

.j-doc-options__item {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: 0.875rem;
}
.j-doc-options__item:first-of-type {
  padding-top: 0.875rem;
}
@media (min-width: 1000px) {
  .j-doc-options__item {
    flex-direction: column;
  }
}
.j-doc-options__item select {
  flex: 0 1 auto;
  width: 80%;
  padding: 0.375rem 0.5rem;
  box-shadow: inset 0 -0.0625rem 0 #8a8d90, inset 0.0625rem 0 0 #f0f0f0, inset 0 0.0625rem 0 #f0f0f0, inset -0.0625rem 0 0 #f0f0f0;
}
@media (min-width: 1000px) {
  .j-doc-options__item select {
    width: 100%;
  }
}

.j-doc-option__label--only-one-language {
  margin-bottom: 0.75rem;
}

.j-languages__current-langauge {
  display: flex;
  flex: 0 1 auto;
  align-items: center;
  width: 80%;
  padding: 0.375rem 0.5rem;
  font-size: 1rem;
  background-color: #f0f0f0;
  box-shadow: inset 0 -0.0625rem 0 #8a8d90, inset 0.0625rem 0 0 #e0e0e0, inset 0 0.0625rem 0 #e0e0e0, inset -0.0625rem 0 0 #e0e0e0;
}
@media (min-width: 1000px) {
  .j-languages__current-langauge {
    width: 100%;
  }
}

.j-doc-options__list {
  margin: 0 0 1.5rem;
  padding: 0;
}
.j-options-container--mobile .j-doc-options__list {
  padding: 0 1.5625rem;
}
.j-options-container--desktop .j-doc-options__list {
  visibility: hidden;
  height: 0;
  -webkit-animation: reveal-dropdowns 0.1618s 4s 1 forwards;
          animation: reveal-dropdowns 0.1618s 4s 1 forwards;
}
@media (min-width: 1400px) {
  .j-options-container--desktop .j-doc-options__list {
    visibility: visible;
    height: auto;
    max-height: auto;
    -webkit-animation: none;
            animation: none;
  }
}
.j-options-container--desktop--processed .j-doc-options__list {
  visibility: visible;
  height: auto;
  max-height: auto;
  -webkit-animation: none;
          animation: none;
}

.j-doc-option__label {
  display: flex;
  align-items: center;
  margin-bottom: 0.75rem;
  padding-top: 0.5rem;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 400;
}
@supports ((-webkit-mask-image: url("#")) or (mask-image: url("#"))) {
  .j-doc-option__label:before {
    content: "";
    display: block;
    width: 1.875rem;
    height: 1.875rem;
    margin-right: 0.5em;
    background: currentcolor;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center;
    -webkit-mask-size: auto 100%;
            mask-size: auto 100%;
  }
}

@supports ((-webkit-mask-image: url("#")) or (mask-image: url("#"))) {
  .j-doc-option__label--language:before {
    -webkit-mask-image: url("../images/language.svg");
            mask-image: url("../images/language.svg");
  }
}

@supports ((-webkit-mask-image: url("#")) or (mask-image: url("#"))) {
  .j-doc-option__label--format:before {
    -webkit-mask-image: url("../images/document.svg");
            mask-image: url("../images/document.svg");
  }
}

.j-sidebar__menu-details-container {
  display: flex;
  max-inline-size: 18.75rem;
  margin: 0 auto 1.5rem;
}

.j-sidebar__menu-details-button {
  flex: 1 1 auto;
  width: 45%;
  padding: 0 0.5rem;
  border: 0.0625rem solid #d2d2d2;
  background-color: #fff;
}
.j-sidebar__menu-details-button:hover, .j-sidebar__menu-details-button:focus {
  border-color: #06c;
  background-color: #e7f1fa;
}

.j-sidebar__menu-details-button--expand {
  border-radius: 0.1875rem 0 0 0.1875rem;
}

.j-sidebar__menu-details-button--collapse {
  border-radius: 0 0.1875rem 0.1875rem 0;
}

/* stylelint-disable selector-id-pattern, scss/dollar-variable-pattern, font-family-no-missing-generic-family-keyword */
/**
 * Hold over styles for PvOne only elements
 */
html,
body {
  height: auto;
  min-height: 100%;
}

/**
 * Reverse engineer a fluid width layout
 * This is a no JS fallback to make sure wrapping container doesn't mess us up
 */
.container .pvof-doc__content-wrapper__outer--css-not-removed {
  /* Make the layout as wide as the window, minus some room for scrollbars */
  width: calc(100vw - 3.125rem);
  /**
   * Then we have to pull it left to center it:
   * viewportWidth containerMaxWidth to get the available white space
   * Then divided by two and made negative to pull the page left
   * Media queries and rem value come from bootstrap
   */
}
@media (min-width: 48rem) {
  .container .pvof-doc__content-wrapper__outer--css-not-removed {
    margin-left: calc((100vw - 46.875rem) / -2);
  }
}
@media (min-width: 62rem) {
  .container .pvof-doc__content-wrapper__outer--css-not-removed {
    margin-left: calc((100vw - 60.625rem) / -2);
  }
}
@media (min-width: 75rem) {
  .container .pvof-doc__content-wrapper__outer--css-not-removed {
    margin-left: calc((100vw - 73.125rem) / -2);
  }
}

pfe-page-status {
  z-index: 100;
}

.pvof-doc__content-wrapper__outer--css-not-removed .doc-wrapper {
  float: none;
  width: auto;
  padding: 0;
}

.pvof-doc__tertiary-sidebar__inner {
  display: flex;
  flex-direction: column;
}

.pvof-doc__wrapper .book > .titlepage,
.pvof-doc__wrapper .chapter,
.pvof-doc__wrapper section[id] {
  padding-bottom: 3.75rem;
}
.pvof-doc__wrapper .book > .titlepage .chapter:last-child,
.pvof-doc__wrapper .book > .titlepage section[id]:last-child,
.pvof-doc__wrapper .chapter .chapter:last-child,
.pvof-doc__wrapper .chapter section[id]:last-child,
.pvof-doc__wrapper section[id] .chapter:last-child,
.pvof-doc__wrapper section[id] section[id]:last-child {
  margin-bottom: -3.75rem;
}
.pvof-doc__wrapper .cta-link {
  font-size: inherit;
}
.pvof-doc__wrapper a {
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.pvof-doc__wrapper .warning .admonition {
  margin: 0;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
}
.pvof-doc__wrapper .warning .admonition:before {
  content: none;
}

/**
 * Address terrible survey CSS bugs
 */
.rh-table--is-full-screen .QSISlider, .j-has-opened-doc-menu .QSISlider,
.rh-table--is-full-screen .QSIPopOver,
.j-has-opened-doc-menu .QSIPopOver {
  z-index: 0 !important;
}

.QSIPopOver {
  top: auto !important;
  bottom: 18.75rem !important;
}

.alert {
  position: relative;
}

button.dismiss-button {
  position: absolute;
  top: 50%;
  right: 0.3125rem;
  z-index: 50;
  width: 2.5rem;
  height: 2.5rem;
  margin-top: -1.25rem;
  padding: 0;
  border: 0;
  text-align: center;
  background: none;
  cursor: pointer;
}
button.dismiss-button:after {
  content: "\f109";
  display: inline-block;
  opacity: 0.3;
  filter: alpha(opacity=30);
  font-size: 1.3125rem;
  line-height: 1;
  line-height: 2.5rem;
  font-family: rh-web-iconfont;
  font-weight: 400;
  font-style: normal;
  font-variant: normal;
  text-decoration: inherit;
  text-transform: none !important;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

#to-top a {
  position: fixed;
  right: 0;
  bottom: 0.9375rem;
  z-index: 99999;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0.625rem;
  opacity: 0;
  font-size: 1.5rem;
  line-height: 1.5rem;
  color: #fff;
  vertical-align: middle;
  text-decoration: none;
  background-color: #333;
  background-color: rgba(0, 0, 0, 0.8);
  transition: opacity 0.218s;
  cursor: pointer;
}

#to-top a.affix {
  opacity: 0.8;
}

#to-top a.affix:focus,
#to-top a.affix:hover {
  opacity: 1;
}

/**
 * Preview styles
 */
.alert {
  border: 0;
  border-radius: 0;
}

.alert > h2:first-child,
.alert > h3:first-child,
.alert > h4:first-child,
.alert > h5:first-child,
.alert > h6:first-child,
.alert > p:first-child {
  margin-top: 0 !important;
}

.alert > p:last-child {
  margin-bottom: 0 !important;
}

.alert-w-icon[class] {
  padding-left: 2.8125rem;
}

.alert-w-icon .alert-icon {
  float: left;
  margin-right: 0.625rem;
  margin-left: -1.875rem;
  font-size: 1.125rem;
}

.alert-w-icon .alert-icon[class*=" rh-icon-"],
.alert-w-icon .alert-icon[class^=rh-icon-] {
  margin-top: -0.375rem;
  margin-left: -2.5rem;
  font-size: 2.25rem;
  line-height: 1em;
}

.alert-w-icon .alert-icon[class*=" icon-innov-prev"],
.alert-w-icon .alert-icon[class^=icon-innov-prev] {
  margin-top: 0.25rem;
  font-size: 1.3125rem;
}

.alert-w-icon.alert-plain {
  padding-left: 5rem;
  color: #252525;
  background: none;
}

.alert-w-icon.alert-plain .alert-icon {
  margin-right: 0;
  margin-left: -4.375rem;
  font-size: 3rem;
}

.alert-w-icon.alert-plain.alert-success .alert-icon {
  color: #3f9c35;
}

.alert-w-icon.alert-plain.alert-info .alert-icon {
  color: #0088ce;
}

.alert-w-icon.alert-plain.alert-warning .alert-icon {
  color: #f0ab00;
}

.alert-w-icon.alert-plain.alert-danger .alert-icon {
  color: #e00;
}

#target_banner .copy-url {
  float: right;
  margin-top: 0;
}

#target_banner .dropdown-menu {
  font-size: inherit;
}

.titlepage .svg-img[data*="title_logo.svg"] {
  width: 15rem;
  margin: 1.5rem 0;
}

.guibutton {
  padding: 0.1875rem;
  font-size: 90%;
  font-weight: bold;
}
.guibutton:before {
  content: "[";
}
.guibutton:after {
  content: "]";
}

.para {
  margin: 1.49963rem 0;
}

.para[class] {
  margin-bottom: 1.49963rem;
}

.pvof-doc__wrapper dd {
  margin-bottom: 2.5rem;
}

/**
 * For training banner
 * e.g. /documentation/en-us/red_hat_enterprise_linux/8/html/configuring_and_managing_virtualization/index
 */
.card-light,
.card-light-gray,
.card-light-grey {
  border: 0.0625rem solid #f0f0f0;
  color: #252525;
  background: #f0f0f0;
}
.pvof-doc__wrapper .card-light.push-bottom:first-child,
.pvof-doc__wrapper .card-light-gray.push-bottom:first-child,
.pvof-doc__wrapper .card-light-grey.push-bottom:first-child {
  margin-bottom: 3.125rem !important;
}

.card-light-gray a.card-link,
.card-light-gray h1,
.card-light-gray h2,
.card-light-gray h3,
.card-light-gray h4,
.card-light-gray h5,
.card-light-gray h6,
.card-light-grey a.card-link,
.card-light-grey h1,
.card-light-grey h2,
.card-light-grey h3,
.card-light-grey h4,
.card-light-grey h5,
.card-light-grey h6,
.card-light a.card-link,
.card-light h1,
.card-light h2,
.card-light h3,
.card-light h4,
.card-light h5,
.card-light h6 {
  color: #252525;
}

.card-light-gray.card-active:after,
.card-light-grey.card-active:after,
.card-light.card-active:after {
  border-top-color: #f0f0f0;
}

.card-md,
.card-narrow {
  display: block;
  padding: 1.1875rem;
  white-space: normal;
  word-wrap: break-word;
}

.card-sm .card .card-heading,
.card .card-heading.card-heading-sm {
  font-size: 1.0625em;
  line-height: 1.5;
  font-weight: 500;
}

.card .card-heading.card-heading-flush {
  margin-bottom: 0.25rem;
}

.card .card-heading.card-heading-red {
  color: #e00;
}

.card > p {
  margin-top: 0;
}
.card > p:last-child {
  margin-bottom: 0;
}

.new-experience {
  position: relative;
  z-index: 1;
  margin: 1.5rem;
  padding: 1.5rem;
  border: 0.0625rem solid #bee1f4;
  font-size: 1rem;
  background-color: #e7f1fa;
}

@media (min-width: 48rem) {
  .new-experience {
    display: flex;
  }
}
@media (min-width: 48rem) {
  .new-experience--contained {
    position: relative;
    left: 50%;
    width: calc(100vw - 2.5rem);
    transform: translateX(-50%);
  }
}
.new-experience__primary-content {
  flex-grow: 1;
}

@media (min-width: 48rem) {
  .new-experience__primary-content {
    margin-right: 1.25rem;
  }
}
.new-experience__title {
  margin: 0;
  padding: 0;
  font-size: inherit;
  line-height: 1.6;
  font-weight: inherit;
}

.new-experience__title + a,
.new-experience__title + pfe-cta {
  display: inline-block;
  margin-top: 1.5em;
}

.new-experience__secondary-content {
  min-width: 12.5rem;
}

@media (min-width: 48rem) {
  .new-experience__secondary-content {
    text-align: right;
  }
}
.pvof-doc__wrapper .example {
  margin-bottom: 2rem;
  padding: 1rem 0 1rem 1rem;
  border-left: 0.3125rem solid #ccc;
}

dl.calloutlist[class] {
  display: grid;
  grid-template-columns: -webkit-min-content 1fr;
  grid-template-columns: min-content 1fr;
  gap: 1.25em 0.75em;
}
dl.calloutlist[class] dt {
  float: none;
  margin: 0;
  padding: 0;
}
dl.calloutlist[class] dd {
  margin: 0;
  padding: 0;
}
dl.calloutlist[class] dd .para:last-child {
  margin: 0;
}

.toast {
  position: fixed;
  right: 0.9375rem;
  bottom: 0.9375rem;
  left: 0.9375rem;
  z-index: 999;
  min-width: 6.25rem;
  max-width: 32.8125rem;
  padding: 0.9375rem;
  color: white;
  background-color: black;
  background-color: rgba(0, 0, 0, 0.9);
  box-shadow: 0 0.125rem 0.3125rem 0 rgba(0, 0, 0, 0.26);
  transition: transform 200ms cubic-bezier(0.465, 0.183, 0.153, 0.946);
  transform: translate3d(0, 150%, 0);
  will-change: transform;
}
.toast.show {
  transform: translate3d(0, 0, 0);
}
.toast a {
  color: #fff;
  text-decoration: underline;
}
.toast a:hover, .toast a:focus {
  color: #2b9af3;
}
.toast a.btn {
  text-decoration: none;
}
.toast .btn.btn-link {
  color: #fff;
}
.toast .close {
  opacity: 0.3;
  color: #fff;
  text-decoration: none;
}
.toast .close:hover, .toast .close:focus {
  opacity: 0.5;
  color: #fff;
}

.no-csstransforms3d.csstransitions .toast {
  transition: all 200ms cubic-bezier(0.465, 0.183, 0.153, 0.946);
}
.no-csstransforms3d .toast {
  visibility: hidden;
  opacity: 0;
}
.no-csstransforms3d .toast.show {
  visibility: visible;
  opacity: 1;
}

.annotator-outer[class][class] {
  position: static;
  display: none;
  flex-direction: column;
  flex-grow: 1;
  width: auto;
  height: auto;
  margin: 0;
}
@media (min-width: 1400px) {
  .annotator-outer[class][class] {
    display: flex;
  }
}

/* Is same element as annotator-frame */
.annotator-frame[class] * {
  height: auto;
}

.annotator-frame .h-sidebar-iframe {
  position: absolute;
  top: 3.4375rem;
  right: 1.875rem;
  width: 12.5rem;
}
@media (min-width: 1400px) {
  .annotator-frame .h-sidebar-iframe {
    position: static;
    width: auto;
  }
}

.annotator-toolbar[class][class] {
  position: static;
  width: auto;
}

.annotator-toolbar > ul,
.annotator-toolbar > ul > li {
  display: block;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  list-style: none;
}

.annotator-toolbar > ul > li {
  display: flex;
  justify-content: flex-end;
}

.annotator-outer .annotator-frame-button[class][class],
.annotator-frame[class] .annotator-frame-button--sidebar_toggle,
.app-content-wrapper * {
  font-family: RedHatText, "Red Hat Text", "Helvetica Neue", Arial, sans-serif !important;
}

.annotator-outer .annotator-frame-button[class][class] {
  position: static;
  height: auto;
  margin-right: 1.875rem;
  padding: 0.75em 1em;
  font-size: 0.9375rem;
  line-height: 1.333;
  font-weight: 500;
}
@media (min-width: 1400px) {
  .annotator-outer .annotator-frame-button[class][class] {
    margin-right: 0;
  }
}

.annotator-outer iframe {
  flex-grow: 1;
  margin-bottom: 1.25rem;
}
@media (min-width: 1400px) {
  .annotator-outer iframe {
    min-height: 37.5rem;
  }
}

.producttitle {
  font-size: 1.25rem;
  color: #000;
  text-transform: uppercase;
}
.producttitle .productnumber {
  color: #e00;
}

.cp-modal-open,
.zoom-open {
  overflow: hidden;
}

.cp-modal,
.cp-video-modal,
.zoom-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  z-index: 1050;
  display: none;
  overflow: hidden;
  opacity: 0;
  filter: alpha(opacity=0);
  outline: 0;
  transition: all 0.2s cubic-bezier(0.465, 0.183, 0.153, 0.946);
  -webkit-overflow-scrolling: touch;
}

.in.cp-modal,
.in.cp-video-modal,
.in.zoom-modal {
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
  opacity: 1;
  filter: alpha(opacity=100);
}

.cp-modal .close,
.cp-video-modal .close,
.zoom-modal .close {
  position: absolute;
  top: 0;
  right: -0.5rem;
  width: 28px;
  width: 1.75rem;
  height: 28px;
  height: 1.75rem;
  margin-top: 0;
  margin-bottom: 0.375rem;
  opacity: 0.9;
  border-radius: 50%;
  font-size: 1.75rem;
  line-height: 1.75rem;
  color: #1a1a1a;
  text-shadow: none;
  background-color: #fff;
}

.cp-modal .close:after,
.cp-video-modal .close:after,
.zoom-modal .close:after {
  line-height: 1.75rem;
}

.cp-modal-wrap,
.zoom-wrap {
  position: relative;
  margin: 0.625rem;
  padding-top: 0.5rem;
}

@media (min-width: 48rem) {
  .cp-modal-wrap,
.zoom-wrap {
    width: 38.4375rem;
    margin: 2.8125rem auto;
  }
}
@media (min-width: 62rem) {
  .cp-modal-wrap,
.zoom-wrap {
    width: 49.8958rem;
  }
}
@media (min-width: 75rem) {
  .cp-modal-wrap,
.zoom-wrap {
    width: 60.3125rem;
  }
}
.cp-modal-body :last-child {
  margin-bottom: 0;
}

.cp-modal-backdrop,
.zoom-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  display: none;
  opacity: 0;
  filter: alpha(opacity=0);
  background-color: #000;
  transition: opacity 0.2s cubic-bezier(0.465, 0.183, 0.153, 0.946);
}

.in.cp-modal-backdrop,
.in.zoom-backdrop {
  display: block;
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.cp-modal-body {
  padding: 1.875rem;
  background: #fff;
}

.cp-modal[data-cp-modal-video=true] .cp-modal-body,
.cp-video-modal .cp-modal-body {
  padding: 0;
}

[data-action=zoom] {
  position: relative;
}

[data-action=zoom]:after {
  position: absolute;
  right: 0;
  bottom: 0;
  display: inline-block;
  padding: 0.375rem;
  line-height: 1;
  font-family: rh-web-iconfont;
  color: #fff;
  font-weight: 400;
  font-style: normal;
  font-variant: normal;
  text-decoration: inherit;
  text-decoration: none !important;
  text-transform: none !important;
  background: rgba(0, 0, 0, 0.4);
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

[data-action=zoom]:focus:after,
[data-action=zoom]:hover:after {
  background: rgba(0, 0, 0, 0.9);
}

.zoom-wrap .zoom-larger {
  text-align: center;
}

.zoom-wrap .zoom-larger a {
  color: #fff;
}

.zoom-wrap .zoom-larger a:focus,
.zoom-wrap .zoom-larger a:hover {
  color: #fff;
  text-decoration: underline;
}

.zoom-wrap .zoom-larger a:after {
  content: "⿻";
  display: inline-block;
  margin-left: 0.25rem;
}

.zoom-body {
  margin: 0 0 1rem;
  padding: 1rem;
  border-radius: 0.5rem;
  text-align: center;
  background: #fff;
}

.zoom-body .video-wrapper {
  position: relative;
  overflow: hidden;
  height: 0;
  padding-bottom: 56.25%;
}

.zoom-body .video-wrapper[data-aspect-ratio="4:3"] {
  padding-bottom: 75%;
}

.zoom-body iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.para > .title[class],
p.title[class] {
  margin: 1.25rem 0 0;
  font-size: 1rem;
  line-height: 1.6667;
  font-weight: 700;
  font-style: normal;
  text-transform: none;
}
.para > .title[class] + p,
.para > .title[class] + .content > *:first-child,
p.title[class] + p,
p.title[class] + .content > *:first-child {
  margin-top: 0;
}

.pvof-doc__wrapper[class] pre:after {
  content: none;
}
.pvof-doc__wrapper[class] pre .warning,
.pvof-doc__wrapper[class] pre .tip,
.pvof-doc__wrapper[class] pre .important,
.pvof-doc__wrapper[class] pre .caution,
.pvof-doc__wrapper[class] pre .note {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  color: inherit;
  background: transparent;
}
.pvof-doc__wrapper[class] pre .warning:after,
.pvof-doc__wrapper[class] pre .tip:after,
.pvof-doc__wrapper[class] pre .important:after,
.pvof-doc__wrapper[class] pre .caution:after,
.pvof-doc__wrapper[class] pre .note:after {
  content: none;
}
.pvof-doc__wrapper[class] code.email {
  padding: 0;
  font: inherit;
  background-color: transparent;
}
.pvof-doc__wrapper[class] .author {
  margin-bottom: 1.5rem;
}
.pvof-doc__wrapper[class] .author .author {
  margin-bottom: 0;
}

/**
 * Table styling
 */
table {
  margin: 2rem 0;
}
.pvof-doc__wrapper table {
  width: auto;
}
table .table-contents table {
  overflow: auto;
  max-width: 100%;
}
rh-table table {
  overflow: visible;
  max-width: 9999em;
  margin: 0;
}

/* Default table cell styles to rh-table styles */
.pvof-doc__wrapper td,
.pvof-doc__wrapper th {
  padding: 0.5em 1rem;
  border-left: 0;
  transition: background 0.25s ease-out;
}

/* Default table cell styles to rh-table styles */
.pvof-doc__wrapper thead th {
  padding-top: 1.5em;
}

/* Default table caption styles to rh-table styles */
.pvof-doc__wrapper caption {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  color: currentColor;
  color: var(--pfe-table__caption--Color, currentColor);
  font-weight: 700;
  text-align: center;
}

.pvof-doc__wrapper .revhistory table th,
.pvof-doc__wrapper .revhistory table td {
  border-color: transparent;
}

.pvof-doc__wrapper .revhistory table td {
  padding: 0.625rem 0.875rem;
}

.pvof-doc__wrapper .revhistory table.simplelist {
  margin: 0;
}

@media print {
  #masthead {
    display: none !important;
  }
}

.main-content[class] {
  padding-top: 0;
  padding-bottom: 0;
}

@media (min-width: 1000px) {
  .j-superdoc {
    display: grid;
    grid-template-rows: -webkit-min-content 1fr;
    grid-template-rows: min-content 1fr;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    padding: 0 1.5rem;
    gap: 0 1.5rem;
  }
}

.j-superdoc__nav {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  box-shadow: 0 0.3125rem 1.0625rem 0 rgba(0, 0, 0, 0.15);
}
@media (min-width: 1000px) {
  .j-superdoc__nav {
    position: static;
    grid-row: 1/span 2;
    grid-column: 1/span 4;
    border: 0;
    box-shadow: 0.1875rem 0 0.1875rem 0 rgba(0, 0, 0, 0.08);
  }
}
@media (min-width: 1400px) {
  .j-superdoc__nav {
    grid-column: 1/span 3;
  }
}
@media (min-width: 1000px) {
  .j-reading-mode--enabled .j-superdoc__nav {
    overflow: hidden;
    width: 0;
  }
}
@media (min-width: 1000px) {
  .j-reading-mode--animation-complete .j-superdoc__nav {
    visibility: hidden;
  }
}
@media print {
  .j-superdoc__nav {
    display: none !important;
  }
}

/**
 * Superdoc Header
 */
.j-superdoc__product-title {
  display: flex;
}

.j-superdoc__product-title__name {
  display: inline-block;
  margin-right: 1rem;
}

.j-superdoc__product-title__version {
  display: inline-block;
  color: #d0021b;
}

.rhdocs__header .rhdocs-content-type,
.rhdocs__header .rhdocs__header__secondary-wrapper {
  display: none;
}

/**
 * Superdoc Content
 */
.j-superdoc__content-wrapper {
  left: 0;
  max-width: 45.8125rem;
  margin-top: 3.9375rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5rem;
  padding-bottom: 2.5rem;
  padding-left: 1.5rem;
  transition: left 0.25s ease;
}
@media (min-width: 1000px) {
  .j-superdoc__content-wrapper {
    justify-self: center;
    grid-row: 2;
    grid-column: 5/-1;
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1400px) {
  .j-superdoc__content-wrapper {
    grid-row: 1;
    grid-column: 4/11;
    max-width: 42.8125rem;
  }
}
@media print {
  .j-superdoc__content-wrapper {
    grid-column: 1/-1 !important;
    width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
@media (min-width: 1000px) {
  .j-reading-mode--enabled .j-superdoc__content-wrapper {
    position: relative;
    left: calc((
            (100vw - 16.5rem - var(--scrollbarWidth, 40px) - 1.5rem) / 12
            * 4
            + 4.5rem
          ) / -2);
  }
}
@media (min-width: 1400px) {
  .j-reading-mode--enabled .j-superdoc__content-wrapper {
    left: calc((
            (100vw - 16.5rem - var(--scrollbarWidth, 40px) - 1.5rem) / 12
            * 3
            + 3rem
          ) / -2);
  }
}

/**
 * Tertiary Sidebar
 */
.j-doc__tertiary-sidebar {
  padding: 0.5em 0;
  background: white;
  transition: box-shadow 0.25s ease;
}
@media (min-width: 1000px) {
  .j-doc__tertiary-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: -0.0625rem;
    z-index: 1;
    grid-row: 1;
    grid-column: 5/-1;
    margin: 0 -1.5rem 0;
  }
}
@media (min-width: 1200px) {
  .j-doc__tertiary-sidebar {
    grid-column: 5/-1;
  }
}
@media (min-width: 1400px) {
  .j-doc__tertiary-sidebar {
    position: static;
    display: block;
    grid-column: -3/-1;
    width: auto;
    height: auto;
    margin: 3.9375rem 0 0;
    padding: 0;
    transition: none;
  }
}
@media print {
  .j-doc__tertiary-sidebar {
    display: none !important;
  }
}

@media (min-width: 1000px) {
  .j-doc__tertiary-sidebar--sticky {
    z-index: 5;
    background: white;
    box-shadow: 0.1875rem 0 0.1875rem 0 rgba(0, 0, 0, 0.25);
  }
}
@media (min-width: 1000px) and (min-width: 1400px) {
  .j-doc__tertiary-sidebar--sticky {
    position: static;
    box-shadow: none;
  }
}
@media (min-width: 1000px) {
  .j-reading-mode--enabled .j-doc__tertiary-sidebar--sticky {
    grid-column: 1/-1;
  }
}
@media (min-width: 1400px) {
  .j-reading-mode--enabled .j-doc__tertiary-sidebar--sticky {
    grid-column: -3/-1;
  }
}

@media (min-width: 1200px) {
  .j-doc__tertiary-sidebar__inner {
    position: -webkit-sticky;
    position: sticky;
    top: 2.5rem;
  }
}
@media (min-width: 1400px) {
  .j-doc__tertiary-sidebar__inner {
    max-width: 9999em;
    margin: 0;
  }
}

.rh-table--is-full-screen #to-top {
  display: none;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN1cGVyZG9jLmNzcyIsIjIwX2Jhc2UvX2FuaW1hdGlvbnMuc2NzcyIsIjMwX2NvbXBvbmVudHMvX2Jvb2stbmF2LnNjc3MiLCJfY29yZS9fdmFyaWFibGVzLnNjc3MiLCIzMF9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiMzBfY29tcG9uZW50cy9fc3VwZXJkb2MtbmF2LnNjc3MiLCJfY29yZS9fbWl4aW5zLnNjc3MiLCIzMF9jb21wb25lbnRzL19kb2Mtb3B0aW9ucy5zY3NzIiwiMzBfY29tcG9uZW50cy9fcHZvbmUtZmFjZWxpZnQuc2NzcyIsInN1cGVyZG9jLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDQWhCO0VBQ0U7SUFDRSxrQkFBQTtJQUNBLGFBQUE7SUFDQSxVQUFBO0VERUY7RUNBQTtJQUNFLG1CQUFBO0VERUY7RUNBQTtJQUNFLGtCQUFBO0VERUY7RUNBQTtJQUNFLG1CQUFBO0lBQ0EsVUFBQTtFREVGO0FBQ0Y7QUNqQkE7RUFDRTtJQUNFLGtCQUFBO0lBQ0EsYUFBQTtJQUNBLFVBQUE7RURFRjtFQ0FBO0lBQ0UsbUJBQUE7RURFRjtFQ0FBO0lBQ0Usa0JBQUE7RURFRjtFQ0FBO0lBQ0UsbUJBQUE7SUFDQSxVQUFBO0VERUY7QUFDRjtBRWZBO0VBQ0UsYUFBQTtFQUNBLDhCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkNFZ0I7QUhlbEI7QUVmRTtFQVJGO0lBU0ksYUFBQTtJQUNBLGdEQUFBO0lBQ0EsU0FBQTtFRmtCRjtBQUNGOztBRWRFO0VBQ0Usa0JBQUE7RUFDQSxxQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0FGaUJKO0FFZkk7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0EsT0FBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzRUFBQTtFQUNBLHdCQUFBO0VBQ0Esd0JBQUE7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QUE7RVR5bERKO0FBQ0Y7O0FTcGxERTtFQURGO0lBRUksd0JBQUE7SUFBQSxnQkFBQTtJQUNBLFdBQUE7RVR3bERGO0FBQ0Y7QVN2bERFO0VBTEY7SUFNSSxpQkFBQTtJQUNBLFNBQUE7RVQwbERGO0FBQ0Y7O0FTdmxEQTtFQUNFLGFBQUE7QVQwbERGIiwiZmlsZSI6InN1cGVyZG9jLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbkBrZXlmcmFtZXMgcmV2ZWFsLWRyb3Bkb3ducyB7XG4gIDAlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDElIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDk5JSB7XG4gICAgbWF4LWhlaWdodDogOTk5OWVtO1xuICB9XG4gIDEwMCUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLmJvb2stbmF2X19saXN0W2NsYXNzXSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luOiA4MHB4IDAgMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmJvb2stbmF2X19saXN0W2NsYXNzXSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgZ2FwOiAzMnB4O1xuICB9XG59XG5cbi5ib29rLW5hdl9faXRlbSBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLmJvb2stbmF2X19pdGVtIGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2p1cGl0ZXIvaW1hZ2VzL2Fycm93LWRvd24tc29saWQuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5Ac3VwcG9ydHMgKC13ZWJraXQtbWFzazogdXJsKFwiXCIpKSBvciAobWFzazogdXJsKFwiXCIpKSB7XG4gIC5ib29rLW5hdl9faXRlbSBhOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIG1hc2staW1hZ2U6IHVybChcIi4uLy4uL2p1cGl0ZXIvaW1hZ2VzL2Fycm93LWRvd24tc29saWQuc3ZnXCIpO1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxufVxuXG4uYm9vay1uYXZfX2l0ZW0tLW5leHQge1xuICBncmlkLWNvbHVtbjogMjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uYm9vay1uYXZfX2l0ZW0tLW5leHQgYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uYm9vay1uYXZfX2l0ZW0tLW5leHQgYTpiZWZvcmUge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLmJyZWFkY3J1bWJzW2NsYXNzXSB7XG4gIGJveC1zaGFkb3c6IDRweCAwIDRweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbiNicmVhZGNydW1ic1tjbGFzc11bY2xhc3NdIHtcbiAgcGFkZGluZy1yaWdodDogMzJweDtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xufVxuXG4uYnJlYWRjcnVtYnNbY2xhc3NdLFxuI2JyZWFkY3J1bWJzW2NsYXNzXSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5ib2R5W2RlYnVnXTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5OTk5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMCwgMCwgMC4yKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5qLWRvYy1uYXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiA1MnB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuai1kb2MtbmF2IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmotaGFzLW9wZW5lZC1kb2MtbWVudS0tb3B0aW9ucy0tbW9iaWxlIC5qLXNpZGViYXJfX21lbnUtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmotaGFzLW9wZW5lZC1kb2MtbWVudS0tb3B0aW9ucy0tbW9iaWxlIC5qLXNpZGViYXJfX21lbnUtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmotc2lkZWJhcl9fbWVudS1jb250YWluZXJbb3Blbl0ge1xuICB6LWluZGV4OiAxMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uai1zaWRlYmFyX19tZW51LWNvbnRhaW5lcltvcGVuXSAuai1zaWRlYmFyX19tZW51LXRyaWdnZXJfX29wZW4tdGV4dCB7XG4gIGNvbG9yOiAjNzU3NTc1O1xufVxuLmotc2lkZWJhcl9fbWVudS1jb250YWluZXJbb3Blbl0gLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyX19jbG9zZS10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5qLXNpZGViYXJfX21lbnUtY29udGFpbmVyIC5qLXNpZGViYXJfX21lbnUtdHJpZ2dlcl9fY2xvc2UtdGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uai1zaWRlYmFyX19tZW51LWNvbnRhaW5lciB1bCxcbi5qLXNpZGViYXJfX21lbnUtY29udGFpbmVyIGxpIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uai1kb2MtbmF2X193cmFwcGVyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nLWxlZnQgMC41cyBlYXNlLCBwYWRkaW5nLXJpZ2h0IDAuNXMgZWFzZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBoZWlnaHQ6IDA7XG4gIGFuaW1hdGlvbjogcmV2ZWFsLWRyb3Bkb3ducyAwLjE2MThzIDRzIDEgZm9yd2FyZHM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5qLWRvYy1uYXZfX3dyYXBwZXIge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IGF1dG87XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIHBhZGRpbmctdG9wOiA2M3B4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5qLWRvYy1uYXZfX3dyYXBwZXIge1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuLmotc2lkZWJhcl9fbWVudS1jb250YWluZXItLXByb2Nlc3NlZCAuai1kb2MtbmF2X193cmFwcGVyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiBhdXRvO1xuICBhbmltYXRpb246IG5vbmU7XG59XG4uai1zaWRlYmFyX19tZW51LWNvbnRhaW5lcltvcGVuXSAuai1kb2MtbmF2X193cmFwcGVyIHtcbiAgYm94LXNoYWRvdzogMCA1cHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5qLXNpZGViYXJfX21lbnUtY29udGFpbmVyW29wZW5dIC5qLWRvYy1uYXZfX3dyYXBwZXIge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotcmVhZGluZy1tb2RlLS1lbmFibGVkIC5qLWRvYy1uYXZfX3dyYXBwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5qLWRvYy1uYXYge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMztcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNXMgZWFzZTtcbn1cblxuLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxNnB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uai1zaWRlYmFyX19tZW51LXRyaWdnZXI6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuai1zaWRlYmFyX19tZW51LXRyaWdnZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS1vcHRpb25zIHtcbiAgY29sb3I6ICMwNmM7XG59XG4uai1zaWRlYmFyX19tZW51LXRyaWdnZXItLW9wdGlvbnM6aG92ZXIsIC5qLXNpZGViYXJfX21lbnUtdHJpZ2dlci0tb3B0aW9uczpmb2N1cyB7XG4gIGNvbG9yOiAjMDA0MDgwO1xufVxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvbGFuZ3VhZ2UtZm9ybWF0LnN2Z1wiKSkge1xuICAuai1zaWRlYmFyX19tZW51LXRyaWdnZXItLW9wdGlvbnMge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbiAgLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS1vcHRpb25zOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNDJweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Y29sb3I7XG4gICAgbWFzazogdXJsKFwiLi4vaW1hZ2VzL2xhbmd1YWdlLWZvcm1hdC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgbWFzay1zaXplOiAxMDAlIGF1dG87XG4gIH1cbn1cblxuLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS10YWJsZXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTQ1cHg7XG4gIHJpZ2h0OiAxMHB4O1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgY29sb3I6ICMwNmM7XG59XG4uai1zaWRlYmFyX19tZW51LXRyaWdnZXItLXRhYmxldDpob3ZlciwgLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS10YWJsZXQ6Zm9jdXMge1xuICBjb2xvcjogIzAwNDA4MDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS10YWJsZXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS10YWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2xhbmd1YWdlLWZvcm1hdC5zdmdcIikpIHtcbiAgLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS10YWJsZXQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbiAgLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS10YWJsZXQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA0MnB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRjb2xvcjtcbiAgICBtYXNrOiB1cmwoXCIuLi9pbWFnZXMvbGFuZ3VhZ2UtZm9ybWF0LnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBtYXNrLXNpemU6IDEwMCUgYXV0bztcbiAgfVxufVxuXG4uai1zaWRlYmFyX19tZW51LXRyaWdnZXIgc3ZnIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBmaWxsOiAjMDZjO1xufVxuLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyIHN2Zzpob3ZlciwgLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyIHN2Zzpmb2N1cyB7XG4gIGZpbGw6ICMwMDQwODA7XG59XG5cbi5qLWRvYy1uYXZfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzO1xuICBmb250LWZhbWlseTogUmVkSGF0VGV4dCwgXCJSZWQgSGF0IFRleHRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cblxuLmotZG9jLW5hdl9fdGl0bGUtLWRlc2t0b3Age1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuai1kb2MtbmF2X190aXRsZS0tZGVza3RvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuai1kb2MtbmF2X19tZW51LXRpdGxlLFxuLmotZG9jLW5hdl9fdGl0bGUtLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uai1kb2MtbmF2X19tZW51LXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxNHB4IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnB2b2YtZG9jX190b2Mge1xuICBtYXgtaW5saW5lLXNpemU6IDQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxODUwcHgpIHtcbiAgLnB2b2YtZG9jX190b2Mge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuLnB2b2YtZG9jX190b2M6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG5cbi8qKlxuICogUHJldmVudCBVSSBqdW1waW5nIGR1ZSB0byBzY3JvbGxiYXJzXG4gKlxuICogRXhwYW5kaW5nIFRvQyBzZWN0aW9ucyBjYW4gYWRkIGEgc2Nyb2xsYmFyIHdoaWNoIHdvdWxkIGNoYW5nZVxuICogdGhlIHdpZHRoIG9mIHRoZSBUb0MsIG1ha2luZyB0aGUgZXhwYW5kIGJ1dHRvbnMgbW92ZSBmcm9tXG4gKiB1bmRlciB0aGUgbW91c2UuIFNldHRpbmcgYSB3aWR0aCBwcmV2ZW50cyB0aGF0XG4gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotZG9jLW5hdl9fbGlzdCB7XG4gICAgd2lkdGg6IGNhbGMoXG4gICAgICAgICgxMDB2dyAtIDI2NHB4IC0gdmFyKC0tc2Nyb2xsYmFyV2lkdGgsIDQwcHgpIC0gMjRweCkgLyAxMlxuICAgICAgICAqIDRcbiAgICAgICAgKyA3MnB4XG4gICAgICAgIC0gNjRweFxuICAgICAgICAtIDRweFxuICAgICAgKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuai1kb2MtbmF2X19saXN0IHtcbiAgICB3aWR0aDogY2FsYyhcbiAgICAgICAgKDEwMHZ3IC0gMjY0cHggLSB2YXIoLS1zY3JvbGxiYXJXaWR0aCwgNDBweCkgLSAyNHB4KSAvIDEyXG4gICAgICAgICogM1xuICAgICAgICArIDQ4cHhcbiAgICAgICAgLSA2NHB4XG4gICAgICAgIC0gNHB4XG4gICAgICApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTg1MHB4KSB7XG4gIC5qLWRvYy1uYXZfX2xpc3Qge1xuICAgIHdpZHRoOiAzNjBweDtcbiAgfVxufVxuXG4uai1kb2MtbmF2X19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uai1kb2MtbmF2X19saXN0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5qLWRvYy1uYXZfX2xpbmssXG4uai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAycHggMDtcbiAgcGFkZGluZzogOXB4IDA7XG59XG4uai1kb2MtbmF2X19saW5rW2NsYXNzXSxcbi5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZVtjbGFzc10ge1xuICBjb2xvcjogIzE1MTUxNTtcbn1cbi5qLWRvYy1uYXZfX2xpbmsuaXMtYWN0aXZlLFxuLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlLmlzLWFjdGl2ZSB7XG4gIGNvbG9yOiAjMDZjO1xuICBiYWNrZ3JvdW5kOiAjZTdmMWZhO1xufVxuXG4uai1kb2MtbmF2X19saXN0LWl0ZW0gPiAuai1kb2MtbmF2X19saW5rLFxuLmotZG9jLW5hdl9fbGlzdC1pdGVtID4gZGV0YWlscyA+IC5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICM2YTZlNzM7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmotZG9jLW5hdl9fbGlzdC1pdGVtID4gLmotZG9jLW5hdl9fbGluazpob3ZlciwgLmotZG9jLW5hdl9fbGlzdC1pdGVtID4gLmotZG9jLW5hdl9fbGluazpmb2N1cyxcbi5qLWRvYy1uYXZfX2xpc3QtaXRlbSA+IGRldGFpbHMgPiAuai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGU6aG92ZXIsXG4uai1kb2MtbmF2X19saXN0LWl0ZW0gPiBkZXRhaWxzID4gLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlOmZvY3VzIHtcbiAgY29sb3I6ICMxNTE1MTU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotZG9jLW5hdl9fbGlzdC1pdGVtID4gLmotZG9jLW5hdl9fbGluay5pcy1hY3RpdmUsIC5qLWRvYy1uYXZfX2xpc3QtaXRlbSA+IC5qLWRvYy1uYXZfX2xpbmsuaXMtYWN0aXZlOmhvdmVyLCAuai1kb2MtbmF2X19saXN0LWl0ZW0gPiAuai1kb2MtbmF2X19saW5rLmlzLWFjdGl2ZTpmb2N1cyB7XG4gICAgY29sb3I6ICMwNmM7XG4gICAgYmFja2dyb3VuZDogI2U3ZjFmYTtcbiAgfVxufVxuXG4uai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uai1kb2MtbmF2X19zZWN0aW9uW29wZW5dID4gLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlID4gLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlX19leHBhbmQtdGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZV9fY29sbGFwc2UtdGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uai1kb2MtbmF2X19zZWN0aW9uW29wZW5dID4gLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlID4gLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlX19jb2xsYXBzZS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5qLWRvYy1uYXZfX2xpbmsge1xuICBtYXJnaW4taW5saW5lOiAtMWVtO1xuICBwYWRkaW5nLWlubGluZTogMWVtO1xuICBib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwO1xufVxuLmotZG9jLW5hdl9fbGluazpob3ZlciwgLmotZG9jLW5hdl9fbGluazpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogI2RlZGVkZTtcbn1cblxuLmotZG9jLW5hdl9fbGluay0taGFzLWNoaWxkcmVuIHtcbiAgbWluLWhlaWdodDogNDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xufVxuXG4uai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGVbY2xhc3NdW2NsYXNzXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjI1cztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlW2NsYXNzXVtjbGFzc106Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmotZG9jLW5hdl9fc2VjdGlvbi0tdXNlLXNtYWxsLXRvZ2dsZSA+IC5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZVtjbGFzc11bY2xhc3NdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbn1cbi5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZVtjbGFzc11bY2xhc3NdOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDZweDtcbiAgaGVpZ2h0OiA2cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM2YTZlNzM7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtM3B4KSByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG59XG4uai1kb2MtbmF2X19zZWN0aW9uLS11c2Utc21hbGwtdG9nZ2xlID4gLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlW2NsYXNzXVtjbGFzc106YmVmb3JlIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDUwJTtcbn1cbi5qLWRvYy1uYXZfX2NoaWxkcmVuLXdyYXBwZXJbb3Blbl0gPiAuai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGVbY2xhc3NdW2NsYXNzXTpiZWZvcmUsIC5qLWRvYy1uYXZfX3NlY3Rpb25bb3Blbl0gPiAuai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGVbY2xhc3NdW2NsYXNzXTpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCAtM3B4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xufVxuLmotZG9jLW5hdl9fc2VjdGlvbi0tdXNlLXNtYWxsLXRvZ2dsZSA+IC5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZVtjbGFzc11bY2xhc3NdOmhvdmVyLCAuai1kb2MtbmF2X19zZWN0aW9uLS11c2Utc21hbGwtdG9nZ2xlID4gLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlW2NsYXNzXVtjbGFzc106Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xufVxuLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlW2NsYXNzXVtjbGFzc106aG92ZXI6YmVmb3JlLCAuai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGVbY2xhc3NdW2NsYXNzXTpmb2N1czpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMwNmM7XG59XG5cbi5qLWRvYy1uYXZfX2NoaWxkcmVuLXdyYXBwZXJbb3Blbl0sXG4uai1kb2MtbmF2X19zZWN0aW9uW29wZW5dIHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxuLmotZG9jLW5hdl9fc3VibmF2W2NsYXNzXSB7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xufVxuXG4uai1zdXBlcmRvYy1zdWJuYXZfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5qLW9wdGlvbnMtY29udGFpbmVyLS1tb2JpbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTJweDtcbiAgei1pbmRleDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZSAuai1zaWRlYmFyX19tZW51LXRyaWdnZXJfX2Nsb3NlLXRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmotaGFzLW9wZW5lZC1kb2MtbWVudS0tdG9jIC5qLW9wdGlvbnMtY29udGFpbmVyLS1tb2JpbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZVtvcGVuXSB7XG4gIHotaW5kZXg6IDEwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZVtvcGVuXTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUwJTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG4uai1vcHRpb25zLWNvbnRhaW5lci0tbW9iaWxlW29wZW5dOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZVtvcGVuXSAuai1zaWRlYmFyX19tZW51LXRyaWdnZXJfX2Nsb3NlLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uai1zaWRlYmFyX19tZW51LXRyaWdnZXItLW9wdGlvbnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTUycHg7XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nOiAxNnB4O1xufVxuLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZVtvcGVuXSAuai1zaWRlYmFyX19tZW51LXRyaWdnZXItLW9wdGlvbnMge1xuICB3aWR0aDogMTAwJTtcbn1cbi5qLW9wdGlvbnMtY29udGFpbmVyLS1tb2JpbGVbb3Blbl0gLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS1vcHRpb25zOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5qLXNpZGViYXJfX21lbnUtdHJpZ2dlcl9fb3Blbi1oZWFkbGluZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uai1vcHRpb25zLWNvbnRhaW5lci0tbW9iaWxlW29wZW5dIC5qLXNpZGViYXJfX21lbnUtdHJpZ2dlcl9fb3Blbi1oZWFkbGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAjNzU3NTc1O1xufVxuXG4uai1kb2NfX2RvYy1vcHRpb25zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuai1kb2NfX2RvYy1vcHRpb25zIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmotZG9jX19kb2Mtb3B0aW9ucyBkZXRhaWxzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAyNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDEwcHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5qLWRvY19fZG9jLW9wdGlvbnMgZGV0YWlscyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuai1kb2NfX2RvYy1vcHRpb25zIHtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VmZWZlZjtcbiAgfVxuICAuai1kb2NfX2RvYy1vcHRpb25zIGRldGFpbHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5qLWRvY19fdGVydGlhcnktc2lkZWJhcl9faW5uZXIgLmotZG9jX19kb2Mtb3B0aW9ucyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5qLWRvY19fdGVydGlhcnktc2lkZWJhcl9faW5uZXIgLmotZG9jX19kb2Mtb3B0aW9ucyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmotZG9jLW9wdGlvbnNfX2l0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy1ib3R0b206IDE0cHg7XG59XG4uai1kb2Mtb3B0aW9uc19faXRlbTpmaXJzdC1vZi10eXBlIHtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5qLWRvYy1vcHRpb25zX19pdGVtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG4uai1kb2Mtb3B0aW9uc19faXRlbSBzZWxlY3Qge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDgwJTtcbiAgcGFkZGluZzogNnB4IDhweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgIzhhOGQ5MCwgaW5zZXQgMXB4IDAgMCAjZjBmMGYwLCBpbnNldCAwIDFweCAwICNmMGYwZjAsIGluc2V0IC0xcHggMCAwICNmMGYwZjA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5qLWRvYy1vcHRpb25zX19pdGVtIHNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmotZG9jLW9wdGlvbl9fbGFiZWwtLW9ubHktb25lLWxhbmd1YWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbn1cblxuLmotbGFuZ3VhZ2VzX19jdXJyZW50LWxhbmdhdWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAxIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiA4MCU7XG4gIHBhZGRpbmc6IDZweCA4cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgIzhhOGQ5MCwgaW5zZXQgMXB4IDAgMCAjZTBlMGUwLCBpbnNldCAwIDFweCAwICNlMGUwZTAsIGluc2V0IC0xcHggMCAwICNlMGUwZTA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5qLWxhbmd1YWdlc19fY3VycmVudC1sYW5nYXVnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmotZG9jLW9wdGlvbnNfX2xpc3Qge1xuICBtYXJnaW46IDAgMCAyNHB4O1xuICBwYWRkaW5nOiAwO1xufVxuLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZSAuai1kb2Mtb3B0aW9uc19fbGlzdCB7XG4gIHBhZGRpbmc6IDAgMjVweDtcbn1cbi5qLW9wdGlvbnMtY29udGFpbmVyLS1kZXNrdG9wIC5qLWRvYy1vcHRpb25zX19saXN0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBoZWlnaHQ6IDA7XG4gIGFuaW1hdGlvbjogcmV2ZWFsLWRyb3Bkb3ducyAwLjE2MThzIDRzIDEgZm9yd2FyZHM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5qLW9wdGlvbnMtY29udGFpbmVyLS1kZXNrdG9wIC5qLWRvYy1vcHRpb25zX19saXN0IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBhdXRvO1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgfVxufVxuLmotb3B0aW9ucy1jb250YWluZXItLWRlc2t0b3AtLXByb2Nlc3NlZCAuai1kb2Mtb3B0aW9uc19fbGlzdCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogYXV0bztcbiAgYW5pbWF0aW9uOiBub25lO1xufVxuXG4uai1kb2Mtb3B0aW9uX19sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiI1wiKSkge1xuICAuai1kb2Mtb3B0aW9uX19sYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgYmFja2dyb3VuZDogY3VycmVudGNvbG9yO1xuICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBtYXNrLXNpemU6IGF1dG8gMTAwJTtcbiAgfVxufVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIiNcIikpIHtcbiAgLmotZG9jLW9wdGlvbl9fbGFiZWwtLWxhbmd1YWdlOmJlZm9yZSB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2xhbmd1YWdlLnN2Z1wiKTtcbiAgfVxufVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIiNcIikpIHtcbiAgLmotZG9jLW9wdGlvbl9fbGFiZWwtLWZvcm1hdDpiZWZvcmUge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kb2N1bWVudC5zdmdcIik7XG4gIH1cbn1cblxuLmotc2lkZWJhcl9fbWVudS1kZXRhaWxzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC1pbmxpbmUtc2l6ZTogMzAwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDI0cHg7XG59XG5cbi5qLXNpZGViYXJfX21lbnUtZGV0YWlscy1idXR0b24ge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgd2lkdGg6IDQ1JTtcbiAgcGFkZGluZzogMCA4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkMmQyZDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4uai1zaWRlYmFyX19tZW51LWRldGFpbHMtYnV0dG9uOmhvdmVyLCAuai1zaWRlYmFyX19tZW51LWRldGFpbHMtYnV0dG9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDZjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdmMWZhO1xufVxuXG4uai1zaWRlYmFyX19tZW51LWRldGFpbHMtYnV0dG9uLS1leHBhbmQge1xuICBib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcbn1cblxuLmotc2lkZWJhcl9fbWVudS1kZXRhaWxzLWJ1dHRvbi0tY29sbGFwc2Uge1xuICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItaWQtcGF0dGVybiwgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVybiwgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkICovXG4vKipcbiAqIEhvbGQgb3ZlciBzdHlsZXMgZm9yIFB2T25lIG9ubHkgZWxlbWVudHNcbiAqL1xuaHRtbCxcbmJvZHkge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbi8qKlxuICogUmV2ZXJzZSBlbmdpbmVlciBhIGZsdWlkIHdpZHRoIGxheW91dFxuICogVGhpcyBpcyBhIG5vIEpTIGZhbGxiYWNrIHRvIG1ha2Ugc3VyZSB3cmFwcGluZyBjb250YWluZXIgZG9lc24ndCBtZXNzIHVzIHVwXG4gKi9cbi5jb250YWluZXIgLnB2b2YtZG9jX19jb250ZW50LXdyYXBwZXJfX291dGVyLS1jc3Mtbm90LXJlbW92ZWQge1xuICAvKiBNYWtlIHRoZSBsYXlvdXQgYXMgd2lkZSBhcyB0aGUgd2luZG93LCBtaW51cyBzb21lIHJvb20gZm9yIHNjcm9sbGJhcnMgKi9cbiAgd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcbiAgLyoqXG4gICAqIFRoZW4gd2UgaGF2ZSB0byBwdWxsIGl0IGxlZnQgdG8gY2VudGVyIGl0OlxuICAgKiB2aWV3cG9ydFdpZHRoIGNvbnRhaW5lck1heFdpZHRoIHRvIGdldCB0aGUgYXZhaWxhYmxlIHdoaXRlIHNwYWNlXG4gICAqIFRoZW4gZGl2aWRlZCBieSB0d28gYW5kIG1hZGUgbmVnYXRpdmUgdG8gcHVsbCB0aGUgcGFnZSBsZWZ0XG4gICAqIE1lZGlhIHF1ZXJpZXMgYW5kIHJlbSB2YWx1ZSBjb21lIGZyb20gYm9vdHN0cmFwXG4gICAqL1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5jb250YWluZXIgLnB2b2YtZG9jX19jb250ZW50LXdyYXBwZXJfX291dGVyLS1jc3Mtbm90LXJlbW92ZWQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCgxMDB2dyAtIDQ2Ljg3NXJlbSkgLyAtMik7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2MnJlbSkge1xuICAuY29udGFpbmVyIC5wdm9mLWRvY19fY29udGVudC13cmFwcGVyX19vdXRlci0tY3NzLW5vdC1yZW1vdmVkIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygoMTAwdncgLSA2MC42MjVyZW0pIC8gLTIpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzVyZW0pIHtcbiAgLmNvbnRhaW5lciAucHZvZi1kb2NfX2NvbnRlbnQtd3JhcHBlcl9fb3V0ZXItLWNzcy1ub3QtcmVtb3ZlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDEwMHZ3IC0gNzMuMTI1cmVtKSAvIC0yKTtcbiAgfVxufVxuXG5wZmUtcGFnZS1zdGF0dXMge1xuICB6LWluZGV4OiAxMDA7XG59XG5cbi5wdm9mLWRvY19fY29udGVudC13cmFwcGVyX19vdXRlci0tY3NzLW5vdC1yZW1vdmVkIC5kb2Mtd3JhcHBlciB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogMDtcbn1cblxuLnB2b2YtZG9jX190ZXJ0aWFyeS1zaWRlYmFyX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5wdm9mLWRvY19fd3JhcHBlciAuYm9vayA+IC50aXRsZXBhZ2UsXG4ucHZvZi1kb2NfX3dyYXBwZXIgLmNoYXB0ZXIsXG4ucHZvZi1kb2NfX3dyYXBwZXIgc2VjdGlvbltpZF0ge1xuICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbn1cbi5wdm9mLWRvY19fd3JhcHBlciAuYm9vayA+IC50aXRsZXBhZ2UgLmNoYXB0ZXI6bGFzdC1jaGlsZCxcbi5wdm9mLWRvY19fd3JhcHBlciAuYm9vayA+IC50aXRsZXBhZ2Ugc2VjdGlvbltpZF06bGFzdC1jaGlsZCxcbi5wdm9mLWRvY19fd3JhcHBlciAuY2hhcHRlciAuY2hhcHRlcjpsYXN0LWNoaWxkLFxuLnB2b2YtZG9jX193cmFwcGVyIC5jaGFwdGVyIHNlY3Rpb25baWRdOmxhc3QtY2hpbGQsXG4ucHZvZi1kb2NfX3dyYXBwZXIgc2VjdGlvbltpZF0gLmNoYXB0ZXI6bGFzdC1jaGlsZCxcbi5wdm9mLWRvY19fd3JhcHBlciBzZWN0aW9uW2lkXSBzZWN0aW9uW2lkXTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogLTYwcHg7XG59XG4ucHZvZi1kb2NfX3dyYXBwZXIgLmN0YS1saW5rIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xufVxuLnB2b2YtZG9jX193cmFwcGVyIGEge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4ucHZvZi1kb2NfX3dyYXBwZXIgLndhcm5pbmcgLmFkbW9uaXRpb24ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLnB2b2YtZG9jX193cmFwcGVyIC53YXJuaW5nIC5hZG1vbml0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkcmVzcyB0ZXJyaWJsZSBzdXJ2ZXkgQ1NTIGJ1Z3NcbiAqL1xuLnJoLXRhYmxlLS1pcy1mdWxsLXNjcmVlbiAuUVNJU2xpZGVyLCAuai1oYXMtb3BlbmVkLWRvYy1tZW51IC5RU0lTbGlkZXIsXG4ucmgtdGFibGUtLWlzLWZ1bGwtc2NyZWVuIC5RU0lQb3BPdmVyLFxuLmotaGFzLW9wZW5lZC1kb2MtbWVudSAuUVNJUG9wT3ZlciB7XG4gIHotaW5kZXg6IDAgIWltcG9ydGFudDtcbn1cblxuLlFTSVBvcE92ZXIge1xuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmJ1dHRvbi5kaXNtaXNzLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwLjMxMjVyZW07XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgbWFyZ2luLXRvcDogLTEuMjVyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5idXR0b24uZGlzbWlzcy1idXR0b246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjEwOVwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9wYWNpdHk6IDAuMztcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTMwKTtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsaW5lLWhlaWdodDogMi41cmVtO1xuICBmb250LWZhbWlseTogcmgtd2ViLWljb25mb250O1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbiN0by10b3AgYSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMC45Mzc1cmVtO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgd2lkdGg6IDIuNzVyZW07XG4gIGhlaWdodDogMi43NXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIG9wYWNpdHk6IDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yMThzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiN0by10b3AgYS5hZmZpeCB7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuI3RvLXRvcCBhLmFmZml4OmZvY3VzLFxuI3RvLXRvcCBhLmFmZml4OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyoqXG4gKiBQcmV2aWV3IHN0eWxlc1xuICovXG4uYWxlcnQge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5hbGVydCA+IGgyOmZpcnN0LWNoaWxkLFxuLmFsZXJ0ID4gaDM6Zmlyc3QtY2hpbGQsXG4uYWxlcnQgPiBoNDpmaXJzdC1jaGlsZCxcbi5hbGVydCA+IGg1OmZpcnN0LWNoaWxkLFxuLmFsZXJ0ID4gaDY6Zmlyc3QtY2hpbGQsXG4uYWxlcnQgPiBwOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uYWxlcnQgPiBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5hbGVydC13LWljb25bY2xhc3NdIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjgxMjVyZW07XG59XG5cbi5hbGVydC13LWljb24gLmFsZXJ0LWljb24ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xLjg3NXJlbTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cblxuLmFsZXJ0LXctaWNvbiAuYWxlcnQtaWNvbltjbGFzcyo9XCIgcmgtaWNvbi1cIl0sXG4uYWxlcnQtdy1pY29uIC5hbGVydC1pY29uW2NsYXNzXj1yaC1pY29uLV0ge1xuICBtYXJnaW4tdG9wOiAtMC4zNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMi41cmVtO1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cbi5hbGVydC13LWljb24gLmFsZXJ0LWljb25bY2xhc3MqPVwiIGljb24taW5ub3YtcHJldlwiXSxcbi5hbGVydC13LWljb24gLmFsZXJ0LWljb25bY2xhc3NePWljb24taW5ub3YtcHJldl0ge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbn1cblxuLmFsZXJ0LXctaWNvbi5hbGVydC1wbGFpbiB7XG4gIHBhZGRpbmctbGVmdDogNXJlbTtcbiAgY29sb3I6ICMyNTI1MjU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5hbGVydC13LWljb24uYWxlcnQtcGxhaW4gLmFsZXJ0LWljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAtNC4zNzVyZW07XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cblxuLmFsZXJ0LXctaWNvbi5hbGVydC1wbGFpbi5hbGVydC1zdWNjZXNzIC5hbGVydC1pY29uIHtcbiAgY29sb3I6ICMzZjljMzU7XG59XG5cbi5hbGVydC13LWljb24uYWxlcnQtcGxhaW4uYWxlcnQtaW5mbyAuYWxlcnQtaWNvbiB7XG4gIGNvbG9yOiAjMDA4OGNlO1xufVxuXG4uYWxlcnQtdy1pY29uLmFsZXJ0LXBsYWluLmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWljb24ge1xuICBjb2xvcjogI2YwYWIwMDtcbn1cblxuLmFsZXJ0LXctaWNvbi5hbGVydC1wbGFpbi5hbGVydC1kYW5nZXIgLmFsZXJ0LWljb24ge1xuICBjb2xvcjogI2UwMDtcbn1cblxuI3RhcmdldF9iYW5uZXIgLmNvcHktdXJsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4jdGFyZ2V0X2Jhbm5lciAuZHJvcGRvd24tbWVudSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuLnRpdGxlcGFnZSAuc3ZnLWltZ1tkYXRhKj1cInRpdGxlX2xvZ28uc3ZnXCJdIHtcbiAgd2lkdGg6IDE1cmVtO1xuICBtYXJnaW46IDEuNXJlbSAwO1xufVxuXG4uZ3VpYnV0dG9uIHtcbiAgcGFkZGluZzogM3B4O1xuICBmb250LXNpemU6IDkwJTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uZ3VpYnV0dG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiW1wiO1xufVxuLmd1aWJ1dHRvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXVwiO1xufVxuXG4ucGFyYSB7XG4gIG1hcmdpbjogMjMuOTk0cHggMDtcbn1cblxuLnBhcmFbY2xhc3NdIHtcbiAgbWFyZ2luLWJvdHRvbTogMjMuOTk0cHg7XG59XG5cbi5wdm9mLWRvY19fd3JhcHBlciBkZCB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbn1cblxuLyoqXG4gKiBGb3IgdHJhaW5pbmcgYmFubmVyXG4gKiBlLmcuIC9kb2N1bWVudGF0aW9uL2VuLXVzL3JlZF9oYXRfZW50ZXJwcmlzZV9saW51eC84L2h0bWwvY29uZmlndXJpbmdfYW5kX21hbmFnaW5nX3ZpcnR1YWxpemF0aW9uL2luZGV4XG4gKi9cbi5jYXJkLWxpZ2h0LFxuLmNhcmQtbGlnaHQtZ3JheSxcbi5jYXJkLWxpZ2h0LWdyZXkge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjZjBmMGYwO1xuICBjb2xvcjogIzI1MjUyNTtcbiAgYmFja2dyb3VuZDogI2YwZjBmMDtcbn1cbi5wdm9mLWRvY19fd3JhcHBlciAuY2FyZC1saWdodC5wdXNoLWJvdHRvbTpmaXJzdC1jaGlsZCxcbi5wdm9mLWRvY19fd3JhcHBlciAuY2FyZC1saWdodC1ncmF5LnB1c2gtYm90dG9tOmZpcnN0LWNoaWxkLFxuLnB2b2YtZG9jX193cmFwcGVyIC5jYXJkLWxpZ2h0LWdyZXkucHVzaC1ib3R0b206Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJkLWxpZ2h0LWdyYXkgYS5jYXJkLWxpbmssXG4uY2FyZC1saWdodC1ncmF5IGgxLFxuLmNhcmQtbGlnaHQtZ3JheSBoMixcbi5jYXJkLWxpZ2h0LWdyYXkgaDMsXG4uY2FyZC1saWdodC1ncmF5IGg0LFxuLmNhcmQtbGlnaHQtZ3JheSBoNSxcbi5jYXJkLWxpZ2h0LWdyYXkgaDYsXG4uY2FyZC1saWdodC1ncmV5IGEuY2FyZC1saW5rLFxuLmNhcmQtbGlnaHQtZ3JleSBoMSxcbi5jYXJkLWxpZ2h0LWdyZXkgaDIsXG4uY2FyZC1saWdodC1ncmV5IGgzLFxuLmNhcmQtbGlnaHQtZ3JleSBoNCxcbi5jYXJkLWxpZ2h0LWdyZXkgaDUsXG4uY2FyZC1saWdodC1ncmV5IGg2LFxuLmNhcmQtbGlnaHQgYS5jYXJkLWxpbmssXG4uY2FyZC1saWdodCBoMSxcbi5jYXJkLWxpZ2h0IGgyLFxuLmNhcmQtbGlnaHQgaDMsXG4uY2FyZC1saWdodCBoNCxcbi5jYXJkLWxpZ2h0IGg1LFxuLmNhcmQtbGlnaHQgaDYge1xuICBjb2xvcjogIzI1MjUyNTtcbn1cblxuLmNhcmQtbGlnaHQtZ3JheS5jYXJkLWFjdGl2ZTphZnRlcixcbi5jYXJkLWxpZ2h0LWdyZXkuY2FyZC1hY3RpdmU6YWZ0ZXIsXG4uY2FyZC1saWdodC5jYXJkLWFjdGl2ZTphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmMGYwZjA7XG59XG5cbi5jYXJkLW1kLFxuLmNhcmQtbmFycm93IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMTg3NXJlbTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4uY2FyZC1zbSAuY2FyZCAuY2FyZC1oZWFkaW5nLFxuLmNhcmQgLmNhcmQtaGVhZGluZy5jYXJkLWhlYWRpbmctc20ge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uY2FyZCAuY2FyZC1oZWFkaW5nLmNhcmQtaGVhZGluZy1mbHVzaCB7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLmNhcmQgLmNhcmQtaGVhZGluZy5jYXJkLWhlYWRpbmctcmVkIHtcbiAgY29sb3I6ICNlMDA7XG59XG5cbi5jYXJkID4gcCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY2FyZCA+IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5uZXctZXhwZXJpZW5jZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luOiAyNHB4O1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICNiZWUxZjQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZjFmYTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5uZXctZXhwZXJpZW5jZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5uZXctZXhwZXJpZW5jZS0tY29udGFpbmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gMi41cmVtKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cbi5uZXctZXhwZXJpZW5jZV9fcHJpbWFyeS1jb250ZW50IHtcbiAgZmxleC1ncm93OiAxO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm5ldy1leHBlcmllbmNlX19wcmltYXJ5LWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgfVxufVxuLm5ldy1leHBlcmllbmNlX190aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLm5ldy1leHBlcmllbmNlX190aXRsZSArIGEsXG4ubmV3LWV4cGVyaWVuY2VfX3RpdGxlICsgcGZlLWN0YSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMS41ZW07XG59XG5cbi5uZXctZXhwZXJpZW5jZV9fc2Vjb25kYXJ5LWNvbnRlbnQge1xuICBtaW4td2lkdGg6IDEyLjVyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubmV3LWV4cGVyaWVuY2VfX3NlY29uZGFyeS1jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuLnB2b2YtZG9jX193cmFwcGVyIC5leGFtcGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMXJlbSAwIDFyZW0gMXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDAuMzEyNXJlbSBzb2xpZCAjY2NjO1xufVxuXG5kbC5jYWxsb3V0bGlzdFtjbGFzc10ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbi1jb250ZW50IDFmcjtcbiAgZ2FwOiAxLjI1ZW0gMC43NWVtO1xufVxuZGwuY2FsbG91dGxpc3RbY2xhc3NdIGR0IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbmRsLmNhbGxvdXRsaXN0W2NsYXNzXSBkZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbmRsLmNhbGxvdXRsaXN0W2NsYXNzXSBkZCAucGFyYTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4udG9hc3Qge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAxNXB4O1xuICBib3R0b206IDE1cHg7XG4gIGxlZnQ6IDE1cHg7XG4gIHotaW5kZXg6IDk5OTtcbiAgbWluLXdpZHRoOiAxMDBweDtcbiAgbWF4LXdpZHRoOiA1MjVweDtcbiAgcGFkZGluZzogMTVweDtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMjYpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuNDY1LCAwLjE4MywgMC4xNTMsIDAuOTQ2KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxNTAlLCAwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbi50b2FzdC5zaG93IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cbi50b2FzdCBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLnRvYXN0IGE6aG92ZXIsIC50b2FzdCBhOmZvY3VzIHtcbiAgY29sb3I6ICMyYjlhZjM7XG59XG4udG9hc3QgYS5idG4ge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udG9hc3QgLmJ0bi5idG4tbGluayB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnRvYXN0IC5jbG9zZSB7XG4gIG9wYWNpdHk6IDAuMztcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi50b2FzdCAuY2xvc2U6aG92ZXIsIC50b2FzdCAuY2xvc2U6Zm9jdXMge1xuICBvcGFjaXR5OiAwLjU7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubm8tY3NzdHJhbnNmb3JtczNkLmNzc3RyYW5zaXRpb25zIC50b2FzdCB7XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtcyBjdWJpYy1iZXppZXIoMC40NjUsIDAuMTgzLCAwLjE1MywgMC45NDYpO1xufVxuLm5vLWNzc3RyYW5zZm9ybXMzZCAudG9hc3Qge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG59XG4ubm8tY3NzdHJhbnNmb3JtczNkIC50b2FzdC5zaG93IHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmFubm90YXRvci1vdXRlcltjbGFzc11bY2xhc3NdIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1ncm93OiAxO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5hbm5vdGF0b3Itb3V0ZXJbY2xhc3NdW2NsYXNzXSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4vKiBJcyBzYW1lIGVsZW1lbnQgYXMgYW5ub3RhdG9yLWZyYW1lICovXG4uYW5ub3RhdG9yLWZyYW1lW2NsYXNzXSAqIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uYW5ub3RhdG9yLWZyYW1lIC5oLXNpZGViYXItaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDU1cHg7XG4gIHJpZ2h0OiAzMHB4O1xuICB3aWR0aDogMjAwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5hbm5vdGF0b3ItZnJhbWUgLmgtc2lkZWJhci1pZnJhbWUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmFubm90YXRvci10b29sYmFyW2NsYXNzXVtjbGFzc10ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cblxuLmFubm90YXRvci10b29sYmFyID4gdWwsXG4uYW5ub3RhdG9yLXRvb2xiYXIgPiB1bCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmFubm90YXRvci10b29sYmFyID4gdWwgPiBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbm5vdGF0b3Itb3V0ZXIgLmFubm90YXRvci1mcmFtZS1idXR0b25bY2xhc3NdW2NsYXNzXSxcbi5hbm5vdGF0b3ItZnJhbWVbY2xhc3NdIC5hbm5vdGF0b3ItZnJhbWUtYnV0dG9uLS1zaWRlYmFyX3RvZ2dsZSxcbi5hcHAtY29udGVudC13cmFwcGVyICoge1xuICBmb250LWZhbWlseTogUmVkSGF0VGV4dCwgXCJSZWQgSGF0IFRleHRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xufVxuXG4uYW5ub3RhdG9yLW91dGVyIC5hbm5vdGF0b3ItZnJhbWUtYnV0dG9uW2NsYXNzXVtjbGFzc10ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMzBweDtcbiAgcGFkZGluZzogMC43NWVtIDFlbTtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMS4zMzM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5hbm5vdGF0b3Itb3V0ZXIgLmFubm90YXRvci1mcmFtZS1idXR0b25bY2xhc3NdW2NsYXNzXSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5hbm5vdGF0b3Itb3V0ZXIgaWZyYW1lIHtcbiAgZmxleC1ncm93OiAxO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuYW5ub3RhdG9yLW91dGVyIGlmcmFtZSB7XG4gICAgbWluLWhlaWdodDogNjAwcHg7XG4gIH1cbn1cblxuLnByb2R1Y3R0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ucHJvZHVjdHRpdGxlIC5wcm9kdWN0bnVtYmVyIHtcbiAgY29sb3I6ICNlMDA7XG59XG5cbi5jcC1tb2RhbC1vcGVuLFxuLnpvb20tb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jcC1tb2RhbCxcbi5jcC12aWRlby1tb2RhbCxcbi56b29tLW1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNDY1LCAwLjE4MywgMC4xNTMsIDAuOTQ2KTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4uaW4uY3AtbW9kYWwsXG4uaW4uY3AtdmlkZW8tbW9kYWwsXG4uaW4uem9vbS1tb2RhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xufVxuXG4uY3AtbW9kYWwgLmNsb3NlLFxuLmNwLXZpZGVvLW1vZGFsIC5jbG9zZSxcbi56b29tLW1vZGFsIC5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTAuNXJlbTtcbiAgd2lkdGg6IDI4cHg7XG4gIHdpZHRoOiAxLjc1cmVtO1xuICBoZWlnaHQ6IDI4cHg7XG4gIGhlaWdodDogMS43NXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG4gIG9wYWNpdHk6IDAuOTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICBjb2xvcjogIzFhMWExYTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5jcC1tb2RhbCAuY2xvc2U6YWZ0ZXIsXG4uY3AtdmlkZW8tbW9kYWwgLmNsb3NlOmFmdGVyLFxuLnpvb20tbW9kYWwgLmNsb3NlOmFmdGVyIHtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG59XG5cbi5jcC1tb2RhbC13cmFwLFxuLnpvb20td3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwLjYyNXJlbTtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5jcC1tb2RhbC13cmFwLFxuLnpvb20td3JhcCB7XG4gICAgd2lkdGg6IDM4LjQzNzVyZW07XG4gICAgbWFyZ2luOiAyLjgxMjVyZW0gYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDYycmVtKSB7XG4gIC5jcC1tb2RhbC13cmFwLFxuLnpvb20td3JhcCB7XG4gICAgd2lkdGg6IDQ5Ljg5NThyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NXJlbSkge1xuICAuY3AtbW9kYWwtd3JhcCxcbi56b29tLXdyYXAge1xuICAgIHdpZHRoOiA2MC4zMTI1cmVtO1xuICB9XG59XG4uY3AtbW9kYWwtYm9keSA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jcC1tb2RhbC1iYWNrZHJvcCxcbi56b29tLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGN1YmljLWJlemllcigwLjQ2NSwgMC4xODMsIDAuMTUzLCAwLjk0Nik7XG59XG5cbi5pbi5jcC1tb2RhbC1iYWNrZHJvcCxcbi5pbi56b29tLWJhY2tkcm9wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDAuODtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTgwKTtcbn1cblxuLmNwLW1vZGFsLWJvZHkge1xuICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmNwLW1vZGFsW2RhdGEtY3AtbW9kYWwtdmlkZW89dHJ1ZV0gLmNwLW1vZGFsLWJvZHksXG4uY3AtdmlkZW8tbW9kYWwgLmNwLW1vZGFsLWJvZHkge1xuICBwYWRkaW5nOiAwO1xufVxuXG5bZGF0YS1hY3Rpb249em9vbV0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbltkYXRhLWFjdGlvbj16b29tXTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtZmFtaWx5OiByaC13ZWItaWNvbmZvbnQ7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbltkYXRhLWFjdGlvbj16b29tXTpmb2N1czphZnRlcixcbltkYXRhLWFjdGlvbj16b29tXTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cblxuLnpvb20td3JhcCAuem9vbS1sYXJnZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi56b29tLXdyYXAgLnpvb20tbGFyZ2VyIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnpvb20td3JhcCAuem9vbS1sYXJnZXIgYTpmb2N1cyxcbi56b29tLXdyYXAgLnpvb20tbGFyZ2VyIGE6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi56b29tLXdyYXAgLnpvb20tbGFyZ2VyIGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIuK/u1wiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuXG4uem9vbS1ib2R5IHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi56b29tLWJvZHkgLnZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLnpvb20tYm9keSAudmlkZW8td3JhcHBlcltkYXRhLWFzcGVjdC1yYXRpbz1cIjQ6M1wiXSB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG5cbi56b29tLWJvZHkgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wYXJhID4gLnRpdGxlW2NsYXNzXSxcbnAudGl0bGVbY2xhc3NdIHtcbiAgbWFyZ2luOiAxLjI1cmVtIDAgMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS42NjY3O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLnBhcmEgPiAudGl0bGVbY2xhc3NdICsgcCxcbi5wYXJhID4gLnRpdGxlW2NsYXNzXSArIC5jb250ZW50ID4gKjpmaXJzdC1jaGlsZCxcbnAudGl0bGVbY2xhc3NdICsgcCxcbnAudGl0bGVbY2xhc3NdICsgLmNvbnRlbnQgPiAqOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSBwcmU6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSBwcmUgLndhcm5pbmcsXG4ucHZvZi1kb2NfX3dyYXBwZXJbY2xhc3NdIHByZSAudGlwLFxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSBwcmUgLmltcG9ydGFudCxcbi5wdm9mLWRvY19fd3JhcHBlcltjbGFzc10gcHJlIC5jYXV0aW9uLFxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSBwcmUgLm5vdGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSBwcmUgLndhcm5pbmc6YWZ0ZXIsXG4ucHZvZi1kb2NfX3dyYXBwZXJbY2xhc3NdIHByZSAudGlwOmFmdGVyLFxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSBwcmUgLmltcG9ydGFudDphZnRlcixcbi5wdm9mLWRvY19fd3JhcHBlcltjbGFzc10gcHJlIC5jYXV0aW9uOmFmdGVyLFxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSBwcmUgLm5vdGU6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSBjb2RlLmVtYWlsIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udDogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ucHZvZi1kb2NfX3dyYXBwZXJbY2xhc3NdIC5hdXRob3Ige1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4ucHZvZi1kb2NfX3dyYXBwZXJbY2xhc3NdIC5hdXRob3IgLmF1dGhvciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qKlxuICogVGFibGUgc3R5bGluZ1xuICovXG50YWJsZSB7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuLnB2b2YtZG9jX193cmFwcGVyIHRhYmxlIHtcbiAgd2lkdGg6IGF1dG87XG59XG50YWJsZSAudGFibGUtY29udGVudHMgdGFibGUge1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxucmgtdGFibGUgdGFibGUge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgbWF4LXdpZHRoOiA5OTk5ZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLyogRGVmYXVsdCB0YWJsZSBjZWxsIHN0eWxlcyB0byByaC10YWJsZSBzdHlsZXMgKi9cbi5wdm9mLWRvY19fd3JhcHBlciB0ZCxcbi5wdm9mLWRvY19fd3JhcHBlciB0aCB7XG4gIHBhZGRpbmc6IDAuNWVtIDFyZW07XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMjVzIGVhc2Utb3V0O1xufVxuXG4vKiBEZWZhdWx0IHRhYmxlIGNlbGwgc3R5bGVzIHRvIHJoLXRhYmxlIHN0eWxlcyAqL1xuLnB2b2YtZG9jX193cmFwcGVyIHRoZWFkIHRoIHtcbiAgcGFkZGluZy10b3A6IDEuNWVtO1xufVxuXG4vKiBEZWZhdWx0IHRhYmxlIGNhcHRpb24gc3R5bGVzIHRvIHJoLXRhYmxlIHN0eWxlcyAqL1xuLnB2b2YtZG9jX193cmFwcGVyIGNhcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6IHZhcigtLXBmZS10YWJsZV9fY2FwdGlvbi0tQ29sb3IsIGN1cnJlbnRDb2xvcik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnB2b2YtZG9jX193cmFwcGVyIC5yZXZoaXN0b3J5IHRhYmxlIHRoLFxuLnB2b2YtZG9jX193cmFwcGVyIC5yZXZoaXN0b3J5IHRhYmxlIHRkIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnB2b2YtZG9jX193cmFwcGVyIC5yZXZoaXN0b3J5IHRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC42MjVyZW0gMC44NzVyZW07XG59XG5cbi5wdm9mLWRvY19fd3JhcHBlciAucmV2aGlzdG9yeSB0YWJsZS5zaW1wbGVsaXN0IHtcbiAgbWFyZ2luOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAjbWFzdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ubWFpbi1jb250ZW50W2NsYXNzXSB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuai1zdXBlcmRvYyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IG1pbi1jb250ZW50IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICBnYXA6IDAgMjRweDtcbiAgfVxufVxuXG4uai1zdXBlcmRvY19fbmF2IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICBib3gtc2hhZG93OiAwIDVweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotc3VwZXJkb2NfX25hdiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBncmlkLXJvdzogMS9zcGFuIDI7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiA0O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiAzcHggMCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5qLXN1cGVyZG9jX19uYXYge1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuai1yZWFkaW5nLW1vZGUtLWVuYWJsZWQgLmotc3VwZXJkb2NfX25hdiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuai1yZWFkaW5nLW1vZGUtLWFuaW1hdGlvbi1jb21wbGV0ZSAuai1zdXBlcmRvY19fbmF2IHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5qLXN1cGVyZG9jX19uYXYge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKipcbiAqIFN1cGVyZG9jIEhlYWRlclxuICovXG4uai1zdXBlcmRvY19fcHJvZHVjdC10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5qLXN1cGVyZG9jX19wcm9kdWN0LXRpdGxlX19uYW1lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG59XG5cbi5qLXN1cGVyZG9jX19wcm9kdWN0LXRpdGxlX192ZXJzaW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogI2QwMDIxYjtcbn1cblxuLnJoZG9jc19faGVhZGVyIC5yaGRvY3MtY29udGVudC10eXBlLFxuLnJoZG9jc19faGVhZGVyIC5yaGRvY3NfX2hlYWRlcl9fc2Vjb25kYXJ5LXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIFN1cGVyZG9jIENvbnRlbnRcbiAqL1xuLmotc3VwZXJkb2NfX2NvbnRlbnQtd3JhcHBlciB7XG4gIGxlZnQ6IDA7XG4gIG1heC13aWR0aDogNzMzcHg7XG4gIG1hcmdpbi10b3A6IDYzcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gIHRyYW5zaXRpb246IGxlZnQgMC4yNXMgZWFzZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotc3VwZXJkb2NfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgZ3JpZC1yb3c6IDI7XG4gICAgZ3JpZC1jb2x1bW46IDUvLTE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5qLXN1cGVyZG9jX19jb250ZW50LXdyYXBwZXIge1xuICAgIGdyaWQtcm93OiAxO1xuICAgIGdyaWQtY29sdW1uOiA0LzExO1xuICAgIG1heC13aWR0aDogNjg1cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5qLXN1cGVyZG9jX19jb250ZW50LXdyYXBwZXIge1xuICAgIGdyaWQtY29sdW1uOiAxLy0xICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5qLXJlYWRpbmctbW9kZS0tZW5hYmxlZCAuai1zdXBlcmRvY19fY29udGVudC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogY2FsYygoXG4gICAgICAgICAgICAoMTAwdncgLSAyNjRweCAtIHZhcigtLXNjcm9sbGJhcldpZHRoLCA0MHB4KSAtIDI0cHgpIC8gMTJcbiAgICAgICAgICAgICogNFxuICAgICAgICAgICAgKyA3MnB4XG4gICAgICAgICAgKSAvIC0yKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuai1yZWFkaW5nLW1vZGUtLWVuYWJsZWQgLmotc3VwZXJkb2NfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAgbGVmdDogY2FsYygoXG4gICAgICAgICAgICAoMTAwdncgLSAyNjRweCAtIHZhcigtLXNjcm9sbGJhcldpZHRoLCA0MHB4KSAtIDI0cHgpIC8gMTJcbiAgICAgICAgICAgICogM1xuICAgICAgICAgICAgKyA0OHB4XG4gICAgICAgICAgKSAvIC0yKTtcbiAgfVxufVxuXG4vKipcbiAqIFRlcnRpYXJ5IFNpZGViYXJcbiAqL1xuLmotZG9jX190ZXJ0aWFyeS1zaWRlYmFyIHtcbiAgcGFkZGluZzogMC41ZW0gMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4yNXMgZWFzZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotZG9jX190ZXJ0aWFyeS1zaWRlYmFyIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogLTFweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICAgIGdyaWQtY29sdW1uOiA1Ly0xO1xuICAgIG1hcmdpbjogMCAtMjRweCAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5qLWRvY19fdGVydGlhcnktc2lkZWJhciB7XG4gICAgZ3JpZC1jb2x1bW46IDUvLTE7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmotZG9jX190ZXJ0aWFyeS1zaWRlYmFyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGdyaWQtY29sdW1uOiAtMy8tMTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiA2M3B4IDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5qLWRvY19fdGVydGlhcnktc2lkZWJhciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLmotZG9jX190ZXJ0aWFyeS1zaWRlYmFyLS1zdGlja3kge1xuICAgIHotaW5kZXg6IDU7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogM3B4IDAgM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMDBweCkgYW5kIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuai1kb2NfX3RlcnRpYXJ5LXNpZGViYXItLXN0aWNreSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5qLXJlYWRpbmctbW9kZS0tZW5hYmxlZCAuai1kb2NfX3RlcnRpYXJ5LXNpZGViYXItLXN0aWNreSB7XG4gICAgZ3JpZC1jb2x1bW46IDEvLTE7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmotcmVhZGluZy1tb2RlLS1lbmFibGVkIC5qLWRvY19fdGVydGlhcnktc2lkZWJhci0tc3RpY2t5IHtcbiAgICBncmlkLWNvbHVtbjogLTMvLTE7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuai1kb2NfX3RlcnRpYXJ5LXNpZGViYXJfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuai1kb2NfX3RlcnRpYXJ5LXNpZGViYXJfX2lubmVyIHtcbiAgICBtYXgtd2lkdGg6IDk5OTllbTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLnJoLXRhYmxlLS1pcy1mdWxsLXNjcmVlbiAjdG8tdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcbn0iLCJAa2V5ZnJhbWVzIHJldmVhbC1kcm9wZG93bnMge1xuICAwJSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxJSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA5OSUge1xuICAgIG1heC1oZWlnaHQ6IDk5OTllbTtcbiAgfVxuICAxMDAlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uL2NvcmUnO1xuXG4uYm9vay1uYXZfX2xpc3RbY2xhc3NdIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW46IDgwcHggMCAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LS1zbTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3AtLXNtYWxsKSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgZ2FwOiAzMnB4O1xuICB9XG59XG5cbi5ib29rLW5hdl9faXRlbSB7XG4gIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMnB4OyAvLyBNZWFzdXJlZCBpbiBicm93c2VyIHRvIGJlIGNlbnRlcmVkIHdpdGggdGhlIGZpcnN0IGxpbmVcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9qdXBpdGVyL2ltYWdlcy9hcnJvdy1kb3duLXNvbGlkLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcblxuICAgICAgQHN1cHBvcnRzICgoLXdlYmtpdC1tYXNrOiB1cmwoJycpKSBvciAobWFzazogdXJsKCcnKSkpIHtcbiAgICAgICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgICAgICBtYXNrLWltYWdlOiB1cmwoJy4uLy4uL2p1cGl0ZXIvaW1hZ2VzL2Fycm93LWRvd24tc29saWQuc3ZnJyk7XG4gICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ib29rLW5hdl9faXRlbS0tbmV4dCB7XG4gIGdyaWQtY29sdW1uOiAyO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgfVxuICB9XG59XG4iLCJAdXNlICdzYXNzOm1hdGgnO1xuXG4vLyBGb250IHNpemVzXG4kZm9udC1zaXplLS1iYXNlOiAxOHB4O1xuJGZvbnQtc2l6ZS0tc206IDE2cHg7XG4kZm9udC1zaXplLS14c206IDE0cHg7XG4kZm9udC1zaXplLS1sZzogMjBweDtcbiRmb250LXNpemUtLXhsZzogMjZweDtcblxuLy8gTGluZSBoZWlnaHRzXG4kbGluZS1oZWlnaHQtLXNtOiAxLjMzMzM7XG4kbGluZS1oZWlnaHQtLWJhc2U6IDEuNjY2NztcblxuLy8gRm9udCBmYW1pbHkgc3RhY2tzXG4kZm9udC1mYW1pbHktLWJhc2U6IFJlZEhhdFRleHQsICdSZWQgSGF0IFRleHQnLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS0tdGl0bGU6IFJlZEhhdERpc3BsYXksICdSZWQgSGF0IERpc3BsYXknLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS0tY29kZTogUmVkSGF0TW9ubywgJ1JlZCBIYXQgTW9ubycsICdDb25zb2xhcycsIG1vbm9zcGFjZTtcblxuLy8gQ29sb3JzXG4kY29sb3ItZGFyay1ncmV5OiAjMTUxNTE1O1xuJGNvbG9yLW1lZC1ncmV5OiAjM2MzZjQyO1xuJGNvbG9yLWx0LWdyZXk6ICNkMmQyZDI7XG4kY29sb3IteGx0LWdyZXk6ICNmNWY1ZjU7XG4kY29sb3ItcGYtYmx1ZTogIzJiOWFmMztcbiRjb2xvci1yaC1yZWQ6ICNlMDA7XG4kY29sb3ItcmgtYmx1ZTogIzA2YztcblxuLy8gU3VwZXJkb2MgQnJlYWtwb2ludHNcbi8vIEBub3RlIFNob3VsZCBtYXRjaCBicmVha3BvaW50cyBpbiBwdm9uZV9kb2NzX2ZhY2VsaWZ0LmpzLlxuJGJyZWFrcG9pbnRfX3RhYmxldDogMTAwMHB4O1xuJGJyZWFrcG9pbnRfX2Rlc2t0b3AtLXNtYWxsOiAxMjAwcHg7XG4kYnJlYWtwb2ludF9fZGVza3RvcDogMTQwMHB4O1xuLy8gUG9pbnQgYXQgd2hpY2ggbWF4LXdpZHRocyBhcmUgZXhjZWVkZWQgYW5kIGxheW91dCBjYW4gZ2V0IHdvbmt5XG4kYnJlYWtwb2ludF9fYm9ua2VyczogMTg1MHB4O1xuXG4vLyBMYXlvdXQgdmFyaWFibGVzXG4kY29sdW1ucy1pbi1sYXlvdXQ6IDEyO1xuJGxheW91dC1wYWRkaW5nLS1ob3Jpem9udGFsOiAyNHB4O1xuJGd1dHRlci13aWR0aDogMjRweDtcbiRjb250ZW50X19tYXgtd2lkdGg6IDY4NXB4O1xuJGNvbnRlbnRfX21heC13aWR0aC0td2l0aC1wYWRkaW5nOiAoXG4gICRjb250ZW50X19tYXgtd2lkdGggKyA0OHB4XG4pO1xuXG4vLyBTaWRlYmFyIHZhcnNcbiRzaWRlYmFyX19wYWRkaW5nLS1tb2JpbGU6IDI0cHg7XG4kc2lkZWJhcl9fcGFkZGluZy0tdHdvLWNvbDogMzJweDtcbiRzdXBlcmRvY19fd2hpdGUtc3BhY2UtLXRvcDogNjNweDtcblxuLy8gV2hpdGUgc3BhY2UgZ3V0dGVycyB0YWtlIHVwLCB0aGVyZSdzIG9uZSBsZXNzIGd1dHRlciB0aGFuIGNvbHVtbnNcbiR0b3RhbC1ndXR0ZXItd2hpdGVzcGFjZTogJGd1dHRlci13aWR0aCAqICgkY29sdW1ucy1pbi1sYXlvdXQgLSAxKTtcbiRzaWRlYmFyLWNvbHVtbi1zcGFuLS10YWJsZXQ6IDQ7XG4kc2lkZWJhci1jb2x1bW4tc3Bhbi0tZGVza3RvcDogMztcblxuLy8gTW9iaWxlIGxheW91dCB2YXJzXG4kbW9iaWxlLXRvcC1iYXItaGVpZ2h0OiA1MnB4O1xuXG4vLyBSZXZlYWwgYW5pbWF0aW9uIHRpbWluZ3Ncbi8vIEhvdyBsb25nIHdlIHdhbnQgdG8gd2FpdCBmb3IgSlMgdG8gd29yayBiZWZvcmUgd2Ugc2hvdyB3aGF0IHdlIGhhdmVcbiRyZXZlYWxfX2RlbGF5OiA0cztcbi8vIEhvdyBsb25nIHRoZSByZXZlYWwgc2hvdWxkIHRha2UgYWZ0ZXIgaXQncyB0b2dnbGVkXG4kcmV2ZWFsX19kdXJhdGlvbjogMC4xNjE4cztcbiIsIi8vIEV4dGVuZHMgc3R5bGVzIGZyb20gdGhlIHBvcnRhbCBicmVhZGNydW1ic1xuLmJyZWFkY3J1bWJzW2NsYXNzXSB7XG4gIGJveC1zaGFkb3c6IDRweCAwIDRweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbiNicmVhZGNydW1ic1tjbGFzc11bY2xhc3NdIHtcbiAgcGFkZGluZy1yaWdodDogMzJweDtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xufVxuXG4uYnJlYWRjcnVtYnNbY2xhc3NdLFxuI2JyZWFkY3J1bWJzW2NsYXNzXSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuIiwiQGltcG9ydCAnY29yZSc7XG5cbi8vIEFkZCBhIHZpc3VhbCBpbmRpY2F0b3Igb2YgdGhlIG1pZGRsZSBvZiB0aGUgcGFnZVxuLy8gV2hpY2ggaXMgd2hlcmUgdGhlIHNjcm9sbCBzcHkgY2hlY2tzIHRvIGhpZ2hsaWdodCB0aGUgY3VycmVudCBzZWN0aW9uXG5ib2R5W2RlYnVnXTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDAsIDAsIDAuMik7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uai1kb2MtbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIC8vIEVuZm9yY2luZyBoZWlnaHQgYXQgbW9iaWxlIGZvciB3aGl0ZSBiYXIgYW5kIGFic29sdXRlbHkgcG9zaXRpb25lZCBlbGVtZW50c1xuICBoZWlnaHQ6ICRtb2JpbGUtdG9wLWJhci1oZWlnaHQ7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgLy8gT3ZlcnJpZGUgbW9iaWxlXG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5qLXNpZGViYXJfX21lbnUtY29udGFpbmVyIHtcbiAgLy8gSGlkZSB0aGUgVG9DIHdoZW4gZG9jIG9wdGlvbnMgYXJlIG9wZW5cbiAgLmotaGFzLW9wZW5lZC1kb2MtbWVudS0tb3B0aW9ucy0tbW9iaWxlICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wLS1zbWFsbCkge1xuICAgICAgLy8gSWdub3JlIHRoaXMgaWYgd2UncmUgbm90IGF0IG1vYmlsZVxuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgJltvcGVuXSB7XG4gICAgei1pbmRleDogMTA7IC8vIENvdmVyIHRoZSBvdGhlciBkcm9wZG93biBpbiB0aGUgYmFyXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcblxuICAgIC5qLXNpZGViYXJfX21lbnUtdHJpZ2dlcl9fb3Blbi10ZXh0IHtcbiAgICAgIGNvbG9yOiAjNzU3NTc1OyAvLyBXYXMgI2M0YzRjNCwgZGFya2VuZWQgZm9yIGExMXlcbiAgICB9XG5cbiAgICAuai1zaWRlYmFyX19tZW51LXRyaWdnZXJfX2Nsb3NlLXRleHQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cblxuICAuai1zaWRlYmFyX19tZW51LXRyaWdnZXJfX2Nsb3NlLXRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB1bCxcbiAgbGkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbn1cblxuLmotZG9jLW5hdl9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgLy8gVGhlIGV4cGFuZGluZyBhcnJvd3MgZm9yIHNlY3Rpb25zIG1pZ2h0IHN0aWNrIG91dCBvbiBzeXN0ZW1zIHdpdGggd2lkZXIgc2Nyb2xsYmFyc1xuICAvLyBhZGRpbmcgb3ZlcmZsb3cteCBoaWRkZW4gdG8gcHJldmVudCBob3Jpem9udGFsIHNjcm9sbCBmb3IgdGhhdDsgd2Ugc2hvdWxkIG9ubHkgYmUgb2ZmIGEgZmV3IHBpeGVscy5cbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy10b3A6IDIwcHg7IC8vIE1vdmUgZHJvcGRvd24gY29udGVudCBvZmYgb2YgdG9wIGJvcmRlci9ib3gtc2hhZG93XG4gIHBhZGRpbmctcmlnaHQ6ICRzaWRlYmFyX19wYWRkaW5nLS1tb2JpbGU7XG4gIHBhZGRpbmctbGVmdDogJHNpZGViYXJfX3BhZGRpbmctLW1vYmlsZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjpcbiAgICBwYWRkaW5nLWxlZnQgMC41cyBlYXNlLFxuICAgIHBhZGRpbmctcmlnaHQgMC41cyBlYXNlO1xuXG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gY29udGVudHMgYnkgZGVmYXVsdCB1bnRpbCAoc2VlIGNvbW1lbnRzIHdpdGggKiopXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIG9yZGVyL3Byb3BlcnRpZXMtb3JkZXJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBoZWlnaHQ6IDA7XG4gIC8vICoqIEl0J3MgYmVlbiBhIHdoaWxlLCBKUyBtYXkgbm90IGJlIHdvcmtpbmcsIHNob3cgd2hhdCB3ZSBoYXZlXG4gIGFuaW1hdGlvbjogcmV2ZWFsLWRyb3Bkb3ducyAkcmV2ZWFsX19kdXJhdGlvbiAkcmV2ZWFsX19kZWxheSAxIGZvcndhcmRzO1xuICAvLyBzdHlsZWxpbnQtZW5hYmxlIG9yZGVyL3Byb3BlcnRpZXMtb3JkZXJcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX3RhYmxldCkge1xuICAgIC8vICoqIFdlJ3JlIGRlc2t0b3AgYW5kIHdlIGRvbid0IGhhdmUgdG8gd29ycnkgYWJvdXQgYSBmbGFzaCBvZiBvcGVuZWQgZHJvcGRvd25cbiAgICBAaW5jbHVkZSByZXZlYWwtZHJvcGRvd247XG5cbiAgICBwYWRkaW5nLXRvcDogJHN1cGVyZG9jX193aGl0ZS1zcGFjZS0tdG9wO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzaWRlYmFyX19wYWRkaW5nLS10d28tY29sO1xuICAgIHBhZGRpbmctbGVmdDogJHNpZGViYXJfX3BhZGRpbmctLXR3by1jb2w7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wLS1zbWFsbCkge1xuICAgIC8vIFNldCB0aGUgc3RpY2t5IHBvc2l0aW9uaW5nIHRvIGNhdGNoIGF0IHRoZSBib3R0b20gb2YgdGhlIGJyb3dzZXJcbiAgICBib3R0b206IDA7XG4gIH1cblxuICAvLyAqKiBXZSdyZSBhdCBhIGJyZWFrcG9pbnQgd2hlcmUgdGhpcyBpc24ndCBhIGRyb3Bkb3duLCBzaG93IGl0IGltbWVkaWF0ZWx5XG4gIC5qLXNpZGViYXJfX21lbnUtY29udGFpbmVyLS1wcm9jZXNzZWQgJiB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLWRyb3Bkb3duO1xuICB9XG5cbiAgLmotc2lkZWJhcl9fbWVudS1jb250YWluZXJbb3Blbl0gJiB7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X190YWJsZXQpIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmotcmVhZGluZy1tb2RlLS1lbmFibGVkICYge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBzdHlsZXMgb25seSAocGFkZGluZy90ZXh0L2V0Yylcbi8vIEV4dGVybmFsIHN0eWxlcyAobWFyZ2luL3Bvc2l0aW9uL2V0Yykgc2hvdWxkIGdvIG9uIC5qLXN1cGVyZG9jX19uYXYgb3Igc2ltaWxhclxuLmotZG9jLW5hdiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBTZXR0aW5nIGEgd2lkdGggc28gaXQgY2FuIGJlIHRyYW5zaXRpb25lZFxuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LS1zbTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNXMgZWFzZTsgLy8gRm9yIGZvY3VzLW1vZGVcbn1cblxuLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxNnB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjMTUxNTE1O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uai1zaWRlYmFyX19tZW51LXRyaWdnZXItLW9wdGlvbnMge1xuICBjb2xvcjogIzA2YztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwNDA4MDtcbiAgfVxuXG4gIEBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbGFuZ3VhZ2UtZm9ybWF0LnN2ZycpKSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogNDJweDtcbiAgICAgIGhlaWdodDogMjBweDsgLy8gZGltZW5zaW9ucyBiYXNlZCBvbiBtb2NrdXAgc2l6ZVxuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRjb2xvcjtcbiAgICAgIG1hc2s6IHVybCgnLi4vaW1hZ2VzL2xhbmd1YWdlLWZvcm1hdC5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgIG1hc2stc2l6ZTogMTAwJSBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBwb3NpdGlvbiB0aGUgYnV0dG9uIHRvIG9wZW4gYW5kIGNsb3NlIHRoZSBsYW5ndWFnZS9mb3JtYXQgb3B0aW9ucyBvbiB0YWJsZXQgdmlld1xuLmotc2lkZWJhcl9fbWVudS10cmlnZ2VyLS10YWJsZXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTQ1cHg7IC8vIG1vdmVzIHRoZSB0b2dnbGUgYnV0dG9uIHVwIGluIGxpbmUgd2l0aCB0aGUgcmVhZGluZyBtb2RlIHRvZ2dsZVxuICByaWdodDogMTBweDsgLy8gdG8gbW92ZSB0aGUgdG9nZ2xlIGJ1dHRvbiBuZXh0IHRvIHRoZSByZWFkaW5nIG1vZGUgdG9nZ2xlXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBjb2xvcjogIzA2YztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwNDA4MDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3ApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9sYW5ndWFnZS1mb3JtYXQuc3ZnJykpIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA0MnB4O1xuICAgICAgaGVpZ2h0OiAyMHB4OyAvLyBkaW1lbnNpb25zIGJhc2VkIG9uIG1vY2t1cCBzaXplXG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xuICAgICAgYmFja2dyb3VuZDogY3VycmVudGNvbG9yO1xuICAgICAgbWFzazogdXJsKCcuLi9pbWFnZXMvbGFuZ3VhZ2UtZm9ybWF0LnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgbWFzay1zaXplOiAxMDAlIGF1dG87XG4gICAgfVxuICB9XG59XG5cbi5qLXNpZGViYXJfX21lbnUtdHJpZ2dlciBzdmcge1xuICBoZWlnaHQ6IDMwcHg7XG4gIGZpbGw6ICMwNmM7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgZmlsbDogIzAwNDA4MDtcbiAgfVxufVxuXG4uai1kb2MtbmF2X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC0tc207XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktLWJhc2U7XG59XG5cbi5qLWRvYy1uYXZfX3RpdGxlLS1kZXNrdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3AtLXNtYWxsKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmotZG9jLW5hdl9fbWVudS10aXRsZSxcbi5qLWRvYy1uYXZfX3RpdGxlLS1tb2JpbGUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3AtLXNtYWxsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uai1kb2MtbmF2X19tZW51LXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxNHB4IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnB2b2YtZG9jX190b2Mge1xuICBtYXgtaW5saW5lLXNpemU6IDQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19ib25rZXJzKSB7XG4gICAgLy8gUmlnaHQgYWxpZ24gdGhlIFRvQyBhdCBlbm9ybW91c2Ugc2NyZWVuIHNpemVzXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuXG4vKipcbiAqIFByZXZlbnQgVUkganVtcGluZyBkdWUgdG8gc2Nyb2xsYmFyc1xuICpcbiAqIEV4cGFuZGluZyBUb0Mgc2VjdGlvbnMgY2FuIGFkZCBhIHNjcm9sbGJhciB3aGljaCB3b3VsZCBjaGFuZ2VcbiAqIHRoZSB3aWR0aCBvZiB0aGUgVG9DLCBtYWtpbmcgdGhlIGV4cGFuZCBidXR0b25zIG1vdmUgZnJvbVxuICogdW5kZXIgdGhlIG1vdXNlLiBTZXR0aW5nIGEgd2lkdGggcHJldmVudHMgdGhhdFxuICovXG4uai1kb2MtbmF2X19saXN0IHtcbiAgJGJyZWF0aGluZy1yb29tOiA0cHg7XG5cbiAgLy8gQ2FsY3VsYXRlZCBpbiBicm93c2VyIGJ5IHBsYXlpbmcgd2l0aCBicm93c2VyLXdpZHRoXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgJHNpZGViYXItZ3V0dGVyLXdoaXRlc3BhY2U6ICgkc2lkZWJhci1jb2x1bW4tc3Bhbi0tdGFibGV0IC0gMSkgKiAkZ3V0dGVyLXdpZHRoO1xuXG4gICAgLy8gTG9naWMgYmVoaW5kIHRoZSBjYWxjIGlzOlxuICAgIC8vIC0gR2V0IHRoZSB3aWR0aCBvZiBvbmUgY29sdW1uLFxuICAgIC8vIC0gTXVsdGlwbHkgdGhhdCBieSB0aGUgbnVtYmVyIG9mIGNvbHVtbnMsXG4gICAgLy8gLSBBZGQgdGhlIHdoaXRlIHNwYWNlIGZvciB0aGUgbnVtYmVyIG9mIGd1dHRlcnMgaW4gdGhlIGNvbHVtbiBzcGFuIHNpZGViYXJcbiAgICAvLyAtIEV4dHJhIHdoaXRlIHNwYWNlIGJhc2VkIG9uIHdoYXQgd2UgZ290IGluIHRoZSBicm93c2VyXG4gICAgd2lkdGg6XG4gICAgICBjYWxjKFxuICAgICAgICAoMTAwdncgLSAjeyR0b3RhbC1ndXR0ZXItd2hpdGVzcGFjZX0gLSB2YXIoLS1zY3JvbGxiYXJXaWR0aCwgNDBweCkgLSAjeyRsYXlvdXQtcGFkZGluZy0taG9yaXpvbnRhbH0pIC8gI3skY29sdW1ucy1pbi1sYXlvdXR9XG4gICAgICAgICogI3skc2lkZWJhci1jb2x1bW4tc3Bhbi0tdGFibGV0fVxuICAgICAgICArICN7JHNpZGViYXItZ3V0dGVyLXdoaXRlc3BhY2V9XG4gICAgICAgIC0gI3skc2lkZWJhcl9fcGFkZGluZy0tdHdvLWNvbCAqIDJ9XG4gICAgICAgIC0gI3skYnJlYXRoaW5nLXJvb219XG4gICAgICApO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fZGVza3RvcCkge1xuICAgICRzaWRlYmFyLWd1dHRlci13aGl0ZXNwYWNlOiAoJHNpZGViYXItY29sdW1uLXNwYW4tLWRlc2t0b3AgLSAxKSAqICRndXR0ZXItd2lkdGg7XG5cbiAgICB3aWR0aDpcbiAgICAgIGNhbGMoXG4gICAgICAgICgxMDB2dyAtICN7JHRvdGFsLWd1dHRlci13aGl0ZXNwYWNlfSAtIHZhcigtLXNjcm9sbGJhcldpZHRoLCA0MHB4KSAtICN7JGxheW91dC1wYWRkaW5nLS1ob3Jpem9udGFsfSkgLyAjeyRjb2x1bW5zLWluLWxheW91dH1cbiAgICAgICAgKiAjeyRzaWRlYmFyLWNvbHVtbi1zcGFuLS1kZXNrdG9wfVxuICAgICAgICArICN7JHNpZGViYXItZ3V0dGVyLXdoaXRlc3BhY2V9XG4gICAgICAgIC0gI3skc2lkZWJhcl9fcGFkZGluZy0tdHdvLWNvbCAqIDJ9XG4gICAgICAgIC0gI3skYnJlYXRoaW5nLXJvb219XG4gICAgICApO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fYm9ua2Vycykge1xuICAgIC8vIEF0IGxhcmdlciBzY3JlZW4gc2l6ZXMgbWF4LXdpZHRocyBhcmUgbWFkZSBhbmQgdGhlIGNhbGMgd2lsbFxuICAgIC8vIG1ha2UgdGhlIHNpZGViYXIgd2lkZXIgdGhhbiBpdCdzIGNvbnRhaW5lciwgY2xpcHBpbmcgY29udGVudC5cbiAgICB3aWR0aDogMzYwcHg7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWVuYWJsZVxufVxuXG4uai1kb2MtbmF2X19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uai1kb2MtbmF2X19saXN0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5qLWRvYy1uYXZfX2xpbmssXG4uai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAycHggMDtcbiAgcGFkZGluZzogOXB4IDA7IC8vIEVuc3VyZXMgYSBtaW4gNDBweCB0YWxsIGhpdCBhcmVhIGZvciB0b3VjaCBhMTF5XG5cbiAgJltjbGFzc10ge1xuICAgIGNvbG9yOiAjMTUxNTE1O1xuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGNvbG9yOiAjMDZjO1xuICAgIGJhY2tncm91bmQ6ICNlN2YxZmE7XG4gIH1cbn1cblxuLy8gU3BlY2lhbCBzdHlsaW5nIGZvciBmaXJzdCBsZXZlbCBtZW51IGl0ZW1zXG4uai1kb2MtbmF2X19saXN0LWl0ZW0gPiAuai1kb2MtbmF2X19saW5rLFxuLmotZG9jLW5hdl9fbGlzdC1pdGVtID4gZGV0YWlscyA+IC5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICM2YTZlNzM7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTUxNTE1O1xuICB9XG59XG5cbi5qLWRvYy1uYXZfX2xpc3QtaXRlbSA+IC5qLWRvYy1uYXZfX2xpbmsuaXMtYWN0aXZlIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X190YWJsZXQpIHtcbiAgICAgIGNvbG9yOiAjMDZjO1xuICAgICAgYmFja2dyb3VuZDogI2U3ZjFmYTtcbiAgICB9XG4gIH1cbn1cblxuXG4uai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBIaWRlIGV4cGFuZCBhMTF5IHRleHQgd2hlbiBpdCdzIG9wZW5cbi5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZV9fZXhwYW5kLXRleHQge1xuICAvLyBNYWtpbmcgc3VyZSB0aGUgY2xvc2VzdCBkZXRhaWxzIGVsZW1lbnQgaXMgdGhlIG9wZW4gb25lLCBhbmQgbm90IGEgZ3JhbmRwYXJlbnRcbiAgLmotZG9jLW5hdl9fc2VjdGlvbltvcGVuXSA+IC5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZSA+ICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gSGlkZSBjb2xsYXBzZSB0ZXh0IGJ5IGRlZmF1bHQgYW5kIHNob3cgaXQgd2hlbiBvcGVuXG4uai1kb2MtbmF2X19jaGlsZHJlbi10b2dnbGVfX2NvbGxhcHNlLXRleHQge1xuICBkaXNwbGF5OiBub25lO1xuICAvLyBNYWtpbmcgc3VyZSB0aGUgY2xvc2VzdCBkZXRhaWxzIGVsZW1lbnQgaXMgdGhlIG9wZW4gb25lLCBhbmQgbm90IGEgZ3JhbmRwYXJlbnRcbiAgLmotZG9jLW5hdl9fc2VjdGlvbltvcGVuXSA+IC5qLWRvYy1uYXZfX2NoaWxkcmVuLXRvZ2dsZSA+ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIEB0b2RvIFRoaXMgaG92ZXIgc3RhdGUgd2FzIGJ1aWx0IGZvciBQdjEsIGhhc24ndCBiZWVuIHRlc3RlZC9idWlsdCBmb3IgYW55dGhpbmcgZWxzZSB5ZXRcbi5qLWRvYy1uYXZfX2xpbmsge1xuICBtYXJnaW4taW5saW5lOiAtMWVtO1xuICBwYWRkaW5nLWlubGluZTogMWVtO1xuICBib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZGVkZWRlO1xuICB9XG59XG5cbi5qLWRvYy1uYXZfX2xpbmstLWhhcy1jaGlsZHJlbiB7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIC8vIERvbid0IG92ZXJsYXAgdGhlIGFycm93IGJ1dHRvblxuICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG59XG5cblxuLmotZG9jLW5hdl9fY2hpbGRyZW4tdG9nZ2xlW2NsYXNzXVtjbGFzc10ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4yNXM7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOjotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cblxuICAuai1kb2MtbmF2X19zZWN0aW9uLS11c2Utc21hbGwtdG9nZ2xlID4gJiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAvLyBXaWR0aCBvZiBjb250ZW50IGFyZWEgLSByaWdodCBvZmZzZXRcbiAgICAvLyBEb2luZyB0aGlzIElOU1RFQUQgb2YgcmlnaHQ6LTIwcHggc28gdGhlIGJ1dHRvbiBkb2Vzbid0IG1vdmVcbiAgICAvLyB3aGVuIGEgc2Nyb2xsYmFyIGFwcGVhcnNcbiAgICBsZWZ0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDZweDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNmE2ZTczO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTNweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG5cbiAgICAuai1kb2MtbmF2X19zZWN0aW9uLS11c2Utc21hbGwtdG9nZ2xlID4gJiB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICB9XG5cbiAgICAuai1kb2MtbmF2X19jaGlsZHJlbi13cmFwcGVyW29wZW5dID4gJixcbiAgICAuai1kb2MtbmF2X19zZWN0aW9uW29wZW5dID4gJiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCAtM3B4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgICB9XG4gIH1cblxuICAuai1kb2MtbmF2X19zZWN0aW9uLS11c2Utc21hbGwtdG9nZ2xlID4gJjpob3ZlcixcbiAgLmotZG9jLW5hdl9fc2VjdGlvbi0tdXNlLXNtYWxsLXRvZ2dsZSA+ICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICMwNmM7XG4gICAgfVxuICB9XG59XG5cbi5qLWRvYy1uYXZfX2NoaWxkcmVuLXdyYXBwZXJbb3Blbl0sXG4uai1kb2MtbmF2X19zZWN0aW9uW29wZW5dIHtcbiAgLy8gMjRweCA9IDMycHggKGZyb20gZGVzaWduKSAtIDZweCAobGluayB0b3AgcGFkZGluZykgLSAycHggKGxpbmsgdG9wIG1hcmdpbilcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxuLmotZG9jLW5hdl9fc3VibmF2W2NsYXNzXSB7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xufVxuXG4uai1zdXBlcmRvYy1zdWJuYXZfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4iLCIvLyBNaXhpbnMgZ28gaGVyZSFcbkBtaXhpbiByZXZlYWwtZHJvcGRvd24ge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IGF1dG87XG4gIGFuaW1hdGlvbjogbm9uZTtcbn1cbiIsIkBpbXBvcnQgJ2NvcmUnO1xuXG4uai1vcHRpb25zLWNvbnRhaW5lci0tbW9iaWxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICRtb2JpbGUtdG9wLWJhci1oZWlnaHQ7XG4gIC8vIFVzaW5nIHotaW5kZXggdG8gc2NvcGUgYmVmb3JlIGFuZCBhZnRlciBlbGVtZW50cyBuZWdhdGl2ZSB6LWluZGV4LlxuICB6LWluZGV4OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX3RhYmxldCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuai1zaWRlYmFyX19tZW51LXRyaWdnZXJfX2Nsb3NlLXRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuai1oYXMtb3BlbmVkLWRvYy1tZW51LS10b2MgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbb3Blbl0ge1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuXG4gICAgLy8gQWRkaW5nIGJveCBzaGFkb3cgdG8gYmVmb3JlIGVsZW1lbnQgc28gaXQgZG9lc24ndCBzdGljayBvdXQgb2YgdGhlIHRvcC5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAtMjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICBib3gtc2hhZG93OiAwIDVweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICB9XG5cbiAgICAvLyBDb3ZlcmluZyB0aGUgdG9wIG9mIHRoZSBib3ggc2hhZG93IHdpdGggdGhlIHdoaXRlIGJnIGNvbG9yXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB9XG5cbiAgICAuai1zaWRlYmFyX19tZW51LXRyaWdnZXJfX2Nsb3NlLXRleHQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5qLXNpZGViYXJfX21lbnUtdHJpZ2dlci0tb3B0aW9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAoJG1vYmlsZS10b3AtYmFyLWhlaWdodCAqIC0xKTtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDE2cHg7XG5cbiAgLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZVtvcGVuXSAmIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5qLXNpZGViYXJfX21lbnUtdHJpZ2dlcl9fb3Blbi1oZWFkbGluZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgLmotb3B0aW9ucy1jb250YWluZXItLW1vYmlsZVtvcGVuXSAmIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGNvbG9yOiAjNzU3NTc1OyAvLyBXYXMgI2M0YzRjNCwgZGFya2VuZWQgZm9yIGExMXlcbiAgfVxufVxuXG4uai1kb2NfX2RvYy1vcHRpb25zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtLWRlc2t0b3ApIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIGRldGFpbHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtLWRlc2t0b3ApIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDYwcHg7IC8vIGFkZCBtYXJnaW4gdG8gaGF2ZSB0aGUgZHJvcGRvd24gYWxpZ24gd2l0aCB0aGUgZm9jdXMgbW9kZSB0b2dnbGVcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VmZWZlZjtcblxuICAgIGRldGFpbHMge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbn1cblxuLmotZG9jX190ZXJ0aWFyeS1zaWRlYmFyX19pbm5lciAuai1kb2NfX2RvYy1vcHRpb25zIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX3RhYmxldCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5qLWRvYy1vcHRpb25zX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmctYm90dG9tOiAxNHB4O1xuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy10b3A6IDE0cHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX3RhYmxldCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA4MCU7XG4gICAgcGFkZGluZzogNnB4IDhweDtcbiAgICBib3gtc2hhZG93OlxuICAgICAgaW5zZXQgMCAtMXB4IDAgIzhhOGQ5MCxcbiAgICAgIGluc2V0IDFweCAwIDAgI2YwZjBmMCxcbiAgICAgIGluc2V0IDAgMXB4IDAgI2YwZjBmMCxcbiAgICAgIGluc2V0IC0xcHggMCAwICNmMGYwZjA7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX3RhYmxldCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5qLWRvYy1vcHRpb25fX2xhYmVsLS1vbmx5LW9uZS1sYW5ndWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG59XG5cbi5qLWxhbmd1YWdlc19fY3VycmVudC1sYW5nYXVnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogODAlO1xuICBwYWRkaW5nOiA2cHggOHB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG4gIGJveC1zaGFkb3c6XG4gICAgaW5zZXQgMCAtMXB4IDAgIzhhOGQ5MCxcbiAgICBpbnNldCAxcHggMCAwICNlMGUwZTAsXG4gICAgaW5zZXQgMCAxcHggMCAjZTBlMGUwLFxuICAgIGluc2V0IC0xcHggMCAwICNlMGUwZTA7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X190YWJsZXQpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5cbi5qLWRvYy1vcHRpb25zX19saXN0IHtcbiAgbWFyZ2luOiAwIDAgMjRweDtcbiAgcGFkZGluZzogMDtcblxuICAuai1vcHRpb25zLWNvbnRhaW5lci0tbW9iaWxlICYge1xuICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGNvbnRlbnRzIGJ5IGRlZmF1bHQgdW50aWwgKHNlZSBjb21tZW50cyB3aXRoICoqKVxuICAuai1vcHRpb25zLWNvbnRhaW5lci0tZGVza3RvcCAmIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAwO1xuICAgIC8vICoqIEl0J3MgYmVlbiBhIHdoaWxlLCBKUyBtYXkgbm90IGJlIHdvcmtpbmcsIHNob3cgd2hhdCB3ZSBoYXZlXG4gICAgYW5pbWF0aW9uOiByZXZlYWwtZHJvcGRvd25zICRyZXZlYWxfX2R1cmF0aW9uICRyZXZlYWxfX2RlbGF5IDEgZm9yd2FyZHM7XG5cbiAgICAvLyAqKiBXZSdyZSBkZXNrdG9wIGFuZCB3ZSBkb24ndCBoYXZlIHRvIHdvcnJ5IGFib3V0IGEgZmxhc2ggb2Ygb3BlbmVkIGRyb3Bkb3duXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wKSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtZHJvcGRvd247XG4gICAgfVxuICB9XG5cbiAgLy8gKiogV2UncmUgYXQgYSBicmVha3BvaW50IHdoZXJlIHRoaXMgaXNuJ3QgYSBkcm9wZG93biwgc2hvdyBpdCBpbW1lZGlhdGVseVxuICAuai1vcHRpb25zLWNvbnRhaW5lci0tZGVza3RvcC0tcHJvY2Vzc2VkICYge1xuICAgIEBpbmNsdWRlIHJldmVhbC1kcm9wZG93bjtcbiAgfVxufVxuXG4uai1kb2Mtb3B0aW9uX19sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIHBhZGRpbmctdG9wOiA4cHg7IC8vIE1lYXN1cmVkIGluIERPTSB0byBhbGlnbiBiYXNlbGluZXMgb2YgdGhlIGRyb3Bkb3duIGFuZCBsYWJlbFxuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoJyMnKSkge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDsgLy8gZGltZW5zaW9ucyBiYXNlZCBvbiBtb2NrdXAgc2l6ZVxuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRjb2xvcjtcbiAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgbWFzay1zaXplOiBhdXRvIDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5qLWRvYy1vcHRpb25fX2xhYmVsLS1sYW5ndWFnZSB7XG4gICY6YmVmb3JlIHtcbiAgICBAc3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybCgnIycpKSB7XG4gICAgICBtYXNrLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9sYW5ndWFnZS5zdmcnKTtcbiAgICB9XG4gIH1cbn1cblxuLmotZG9jLW9wdGlvbl9fbGFiZWwtLWZvcm1hdCB7XG4gICY6YmVmb3JlIHtcbiAgICBAc3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybCgnIycpKSB7XG4gICAgICBtYXNrLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9kb2N1bWVudC5zdmcnKTtcbiAgICB9XG4gIH1cbn1cblxuLmotc2lkZWJhcl9fbWVudS1kZXRhaWxzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC1pbmxpbmUtc2l6ZTogMzAwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDI0cHg7XG59XG5cbi5qLXNpZGViYXJfX21lbnUtZGV0YWlscy1idXR0b24ge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgd2lkdGg6IDQ1JTtcbiAgcGFkZGluZzogMCA4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1sdC1ncmV5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXJoLWJsdWU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZjFmYTtcbiAgfVxufVxuLmotc2lkZWJhcl9fbWVudS1kZXRhaWxzLWJ1dHRvbi0tZXhwYW5kIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG59XG5cbi5qLXNpZGViYXJfX21lbnUtZGV0YWlscy1idXR0b24tLWNvbGxhcHNlIHtcbiAgYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XG59XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1pZC1wYXR0ZXJuLCBzY3NzL2RvbGxhci12YXJpYWJsZS1wYXR0ZXJuLCBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmQgKi9cblxuLyoqXG4gKiBIb2xkIG92ZXIgc3R5bGVzIGZvciBQdk9uZSBvbmx5IGVsZW1lbnRzXG4gKi9cblxuLy8gdmFyaWFibGUgdmFsdWVzIHNob3VsZCBtYXRjaCBzYW1lIHZhcmlhYmxlIGZyb20gYWRvYy10ZW1wbGF0ZXMvc2Nzcy9fY29yZS9fdmFyaWFibGVzLnNjc3NcbiRiYXNlLXJoeXRobTogMThweDtcbiRoZWFkaW5nLS1ibG9jazogMTZweDtcbiRoZWFkaW5nLS1ibG9jay0tdHJhbnNmb3JtOiBub25lO1xuJGhlYWRpbmctLWJsb2NrLS1zdHlsZTogbm9ybWFsO1xuJGhlYWRpbmctLWJsb2NrLS13ZWlnaHQ6IDcwMDtcbiRsaW5lLWhlaWdodC0tYmFzZTogMS42NjY3O1xuXG4vLyBPdmVycmlkaW5nIGhlaWdodDogMTAwJSBzdHlsZSBvbiBnbG9iYWwgY2hyb21pbmcgbWF5IGhhdmUgYmVlbiBjYXVzaW5nIHVzIGlzc3Vlcy5cbmh0bWwsXG5ib2R5IHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG4vKipcbiAqIFJldmVyc2UgZW5naW5lZXIgYSBmbHVpZCB3aWR0aCBsYXlvdXRcbiAqIFRoaXMgaXMgYSBubyBKUyBmYWxsYmFjayB0byBtYWtlIHN1cmUgd3JhcHBpbmcgY29udGFpbmVyIGRvZXNuJ3QgbWVzcyB1cyB1cFxuICovXG4uY29udGFpbmVyIC5wdm9mLWRvY19fY29udGVudC13cmFwcGVyX19vdXRlci0tY3NzLW5vdC1yZW1vdmVkIHtcbiAgLyogTWFrZSB0aGUgbGF5b3V0IGFzIHdpZGUgYXMgdGhlIHdpbmRvdywgbWludXMgc29tZSByb29tIGZvciBzY3JvbGxiYXJzICovXG4gIHdpZHRoOiBjYWxjKDEwMHZ3IC0gNTBweCk7XG5cbiAgLyoqXG4gICAqIFRoZW4gd2UgaGF2ZSB0byBwdWxsIGl0IGxlZnQgdG8gY2VudGVyIGl0OlxuICAgKiB2aWV3cG9ydFdpZHRoIGNvbnRhaW5lck1heFdpZHRoIHRvIGdldCB0aGUgYXZhaWxhYmxlIHdoaXRlIHNwYWNlXG4gICAqIFRoZW4gZGl2aWRlZCBieSB0d28gYW5kIG1hZGUgbmVnYXRpdmUgdG8gcHVsbCB0aGUgcGFnZSBsZWZ0XG4gICAqIE1lZGlhIHF1ZXJpZXMgYW5kIHJlbSB2YWx1ZSBjb21lIGZyb20gYm9vdHN0cmFwXG4gICAqL1xuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygoMTAwdncgLSA0Ni44NzVyZW0pIC8gLTIpO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MnJlbSkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCgxMDB2dyAtIDYwLjYyNXJlbSkgLyAtMik7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc1cmVtKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDEwMHZ3IC0gNzMuMTI1cmVtKSAvIC0yKTtcbiAgfVxufVxuXG4vLyBNYWtlIHN1cmUgdGhlIHJlZCBcIlByZXZpZXdcIiBiYXIgaXNuJ3Qgb3ZlcmxhcHBlZCB0b28gbXVjaFxucGZlLXBhZ2Utc3RhdHVzIHtcbiAgei1pbmRleDogMTAwO1xufVxuXG4ucHZvZi1kb2NfX2NvbnRlbnQtd3JhcHBlcl9fb3V0ZXItLWNzcy1ub3QtcmVtb3ZlZCAuZG9jLXdyYXBwZXIge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wdm9mLWRvY19fdGVydGlhcnktc2lkZWJhcl9faW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ucHZvZi1kb2NfX3dyYXBwZXIge1xuXG4gIC8vIFNlY3Rpb24gZGVsaW5lYXRpb24gc3R5bGVzLCBlc3BlY2lhbGx5IGltcG9ydGFudCBvbiBzaW5nbGUgcGFnZSB2aWV3XG4gIC5ib29rID4gLnRpdGxlcGFnZSxcbiAgLmNoYXB0ZXIsXG4gIHNlY3Rpb25baWRdIHtcbiAgICAvLyBVc2luZyBwYWRkaW5nIGluc3RlYWQgb2YgbWFyZ2luIHRvIGF2b2lkIHNjcm9sbHNweVxuICAgIC8vIGZsaWNraW5nIHRvIHBhcmVudCBhbmQgdGhlbiBuZXh0IHNlY3Rpb24gd2hlbiBhIHNlY3Rpb24gaXMgcGFzc2VkXG4gICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG5cbiAgICAuY2hhcHRlcjpsYXN0LWNoaWxkLFxuICAgIHNlY3Rpb25baWRdOmxhc3QtY2hpbGQge1xuICAgICAgLy8gTmVnYXRlIHBhcmVudCBwYWRkaW5nIHNvIHdlIGRvbid0IGRvdWJsZSB1cCBjYXVzaW5nIHNjcm9sbCBzcHkgdG9cbiAgICAgIC8vIGZsaWNrIHRvIHRoZSBwYXJlbnQgc2VjdGlvbiBiZWZvcmUgZ29pbmcgdG8gdGhlIG5leHQgc2VjdGlvblxuICAgICAgbWFyZ2luLWJvdHRvbTogLTYwcHg7XG4gICAgfVxuICB9XG5cbiAgLmN0YS1saW5rIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBQcmV2ZW50IGV4dHJlbWVseSBsb25nIHN0cmluZ3MgZnJvbSBicmVha2luZyBvdXQgb2YgdGhlIGNvbnRlbnQgYXJlYS5cbiAgLy8gV29ycmllZCB0aGlzIG1pZ2h0IGNhdXNlIGJ1Z3MgaWYgaXQncyBhcHBsaWVkIHRvbyBicm9hZGx5LlxuICAvLyBTZWUgQ0NTLTU4OTFcbiAgYSB7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICAud2FybmluZyAuYWRtb25pdGlvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBBZGRyZXNzIHRlcnJpYmxlIHN1cnZleSBDU1MgYnVnc1xuICovXG4uUVNJU2xpZGVyLFxuLlFTSVBvcE92ZXIge1xuICAucmgtdGFibGUtLWlzLWZ1bGwtc2NyZWVuICYsXG4gIC5qLWhhcy1vcGVuZWQtZG9jLW1lbnUgJiB7XG4gICAgei1pbmRleDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5RU0lQb3BPdmVyIHtcbiAgLy8gTWFrZSBzdXJlIHRoZSBmZWVkYmFjayBidWJibGUgZG9lc24ndCBjb3ZlciBkb2Mgb3B0aW9ucyBvciB0aGUgdGVydGlhcnkgc2lkZWJhciB0b28gbXVjaFxuICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgYm90dG9tOiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4vLy9cbi8vIERpc21pc3MgYnV0dG9uXG4vLy9cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuYnV0dG9uLmRpc21pc3MtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDAuMzEyNXJlbTtcbiAgei1pbmRleDogNTA7XG4gIHdpZHRoOiAyLjVyZW07XG4gIGhlaWdodDogMi41cmVtO1xuICBtYXJnaW4tdG9wOiAtMS4yNXJlbTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAn74SJJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0zMCk7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgICBmb250LWZhbWlseTogcmgtd2ViLWljb25mb250O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIH1cbn1cblxuXG4vLy9cbi8vIFRvIHRvcCBsaW5rXG4vLy9cbiN0by10b3AgYSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMC45Mzc1cmVtO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgd2lkdGg6IDIuNzVyZW07XG4gIGhlaWdodDogMi43NXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIG9wYWNpdHk6IDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yMThzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiN0by10b3AgYS5hZmZpeCB7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuI3RvLXRvcCBhLmFmZml4OmZvY3VzLFxuI3RvLXRvcCBhLmFmZml4OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyoqXG4gKiBQcmV2aWV3IHN0eWxlc1xuICovXG4uYWxlcnQge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5hbGVydCA+IGgyOmZpcnN0LWNoaWxkLFxuLmFsZXJ0ID4gaDM6Zmlyc3QtY2hpbGQsXG4uYWxlcnQgPiBoNDpmaXJzdC1jaGlsZCxcbi5hbGVydCA+IGg1OmZpcnN0LWNoaWxkLFxuLmFsZXJ0ID4gaDY6Zmlyc3QtY2hpbGQsXG4uYWxlcnQgPiBwOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uYWxlcnQgPiBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5hbGVydC13LWljb25bY2xhc3NdIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjgxMjVyZW07XG59XG5cbi5hbGVydC13LWljb24gLmFsZXJ0LWljb24ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xLjg3NXJlbTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cblxuLmFsZXJ0LXctaWNvbiAuYWxlcnQtaWNvbltjbGFzcyo9JyByaC1pY29uLSddLFxuLmFsZXJ0LXctaWNvbiAuYWxlcnQtaWNvbltjbGFzc149J3JoLWljb24tJ10ge1xuICBtYXJnaW4tdG9wOiAtMC4zNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMi41cmVtO1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cbi5hbGVydC13LWljb24gLmFsZXJ0LWljb25bY2xhc3MqPScgaWNvbi1pbm5vdi1wcmV2J10sXG4uYWxlcnQtdy1pY29uIC5hbGVydC1pY29uW2NsYXNzXj0naWNvbi1pbm5vdi1wcmV2J10ge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbn1cblxuLmFsZXJ0LXctaWNvbi5hbGVydC1wbGFpbiB7XG4gIHBhZGRpbmctbGVmdDogNXJlbTtcbiAgY29sb3I6ICMyNTI1MjU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5hbGVydC13LWljb24uYWxlcnQtcGxhaW4gLmFsZXJ0LWljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAtNC4zNzVyZW07XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cblxuLmFsZXJ0LXctaWNvbi5hbGVydC1wbGFpbi5hbGVydC1zdWNjZXNzIC5hbGVydC1pY29uIHtcbiAgY29sb3I6ICMzZjljMzU7XG59XG5cbi5hbGVydC13LWljb24uYWxlcnQtcGxhaW4uYWxlcnQtaW5mbyAuYWxlcnQtaWNvbiB7XG4gIGNvbG9yOiAjMDA4OGNlO1xufVxuXG4uYWxlcnQtdy1pY29uLmFsZXJ0LXBsYWluLmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWljb24ge1xuICBjb2xvcjogI2YwYWIwMDtcbn1cblxuLmFsZXJ0LXctaWNvbi5hbGVydC1wbGFpbi5hbGVydC1kYW5nZXIgLmFsZXJ0LWljb24ge1xuICBjb2xvcjogI2UwMDtcbn1cblxuI3RhcmdldF9iYW5uZXIgLmNvcHktdXJsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4jdGFyZ2V0X2Jhbm5lciAuZHJvcGRvd24tbWVudSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuLnRpdGxlcGFnZSAuc3ZnLWltZ1tkYXRhKj0ndGl0bGVfbG9nby5zdmcnXSB7XG4gIHdpZHRoOiAxNXJlbTtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbn1cblxuLmd1aWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDNweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnWyc7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXSc7XG4gIH1cbn1cblxuLy8gY29weWluZyBwYXJhZ3JhcGggc3R5bGVcbi5wYXJhIHtcbiAgbWFyZ2luOiAoJGJhc2Utcmh5dGhtICogMS4zMzMpIDA7XG59XG5cbi8vIEV4dHJhIHNwZWNpZmljaXR5IHRvIG92ZXJyaWRlIENQIENocm9tZVxuLnBhcmFbY2xhc3NdIHtcbiAgbWFyZ2luLWJvdHRvbTogKCRiYXNlLXJoeXRobSAqIDEuMzMzKTtcbn1cblxuLy8gYWRkaW5nIGJvdHRvbSBtYXJnaW4gZm9yIGRlZmluaXRpb24gbGlzdCBpdGVtc1xuLy8gZGxbY2xhc3NdW2NsYXNzXSB7XG4ucHZvZi1kb2NfX3dyYXBwZXIgZGQge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG5cbi8qKlxuICogRm9yIHRyYWluaW5nIGJhbm5lclxuICogZS5nLiAvZG9jdW1lbnRhdGlvbi9lbi11cy9yZWRfaGF0X2VudGVycHJpc2VfbGludXgvOC9odG1sL2NvbmZpZ3VyaW5nX2FuZF9tYW5hZ2luZ192aXJ0dWFsaXphdGlvbi9pbmRleFxuICovXG4uY2FyZC1saWdodCxcbi5jYXJkLWxpZ2h0LWdyYXksXG4uY2FyZC1saWdodC1ncmV5IHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgI2YwZjBmMDtcbiAgY29sb3I6ICMyNTI1MjU7XG4gIGJhY2tncm91bmQ6ICNmMGYwZjA7XG5cbiAgLnB2b2YtZG9jX193cmFwcGVyICYucHVzaC1ib3R0b206Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHggIWltcG9ydGFudDsgLy8gZmlnaHRpbmcgcHVzaC1ib3R0b20gdXRpbGl0eSBjbGFzcyB3aGljaCBoYXMgaW1wb3J0YW50XG4gIH1cbn1cblxuLmNhcmQtbGlnaHQtZ3JheSBhLmNhcmQtbGluayxcbi5jYXJkLWxpZ2h0LWdyYXkgaDEsXG4uY2FyZC1saWdodC1ncmF5IGgyLFxuLmNhcmQtbGlnaHQtZ3JheSBoMyxcbi5jYXJkLWxpZ2h0LWdyYXkgaDQsXG4uY2FyZC1saWdodC1ncmF5IGg1LFxuLmNhcmQtbGlnaHQtZ3JheSBoNixcbi5jYXJkLWxpZ2h0LWdyZXkgYS5jYXJkLWxpbmssXG4uY2FyZC1saWdodC1ncmV5IGgxLFxuLmNhcmQtbGlnaHQtZ3JleSBoMixcbi5jYXJkLWxpZ2h0LWdyZXkgaDMsXG4uY2FyZC1saWdodC1ncmV5IGg0LFxuLmNhcmQtbGlnaHQtZ3JleSBoNSxcbi5jYXJkLWxpZ2h0LWdyZXkgaDYsXG4uY2FyZC1saWdodCBhLmNhcmQtbGluayxcbi5jYXJkLWxpZ2h0IGgxLFxuLmNhcmQtbGlnaHQgaDIsXG4uY2FyZC1saWdodCBoMyxcbi5jYXJkLWxpZ2h0IGg0LFxuLmNhcmQtbGlnaHQgaDUsXG4uY2FyZC1saWdodCBoNiB7XG4gIGNvbG9yOiAjMjUyNTI1O1xufVxuXG4uY2FyZC1saWdodC1ncmF5LmNhcmQtYWN0aXZlOmFmdGVyLFxuLmNhcmQtbGlnaHQtZ3JleS5jYXJkLWFjdGl2ZTphZnRlcixcbi5jYXJkLWxpZ2h0LmNhcmQtYWN0aXZlOmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2YwZjBmMDtcbn1cblxuLmNhcmQtbWQsXG4uY2FyZC1uYXJyb3cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4xODc1cmVtO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi5jYXJkLXNtIC5jYXJkIC5jYXJkLWhlYWRpbmcsXG4uY2FyZCAuY2FyZC1oZWFkaW5nLmNhcmQtaGVhZGluZy1zbSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5jYXJkIC5jYXJkLWhlYWRpbmcuY2FyZC1oZWFkaW5nLWZsdXNoIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xufVxuXG4uY2FyZCAuY2FyZC1oZWFkaW5nLmNhcmQtaGVhZGluZy1yZWQge1xuICBjb2xvcjogI2UwMDtcbn1cblxuLmNhcmQgPiBwIHtcbiAgbWFyZ2luLXRvcDogMDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLm5ldy1leHBlcmllbmNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW46IDI0cHg7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgI2JlZTFmNDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdmMWZhO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm5ldy1leHBlcmllbmNlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubmV3LWV4cGVyaWVuY2UtLWNvbnRhaW5lZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogY2FsYygxMDB2dyAtIDIuNXJlbSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbi5uZXctZXhwZXJpZW5jZV9fcHJpbWFyeS1jb250ZW50IHtcbiAgZmxleC1ncm93OiAxO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm5ldy1leHBlcmllbmNlX19wcmltYXJ5LWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgfVxufVxuXG4ubmV3LWV4cGVyaWVuY2VfX3RpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4ubmV3LWV4cGVyaWVuY2VfX3RpdGxlICsgYSxcbi5uZXctZXhwZXJpZW5jZV9fdGl0bGUgKyBwZmUtY3RhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAxLjVlbTtcbn1cblxuLm5ldy1leHBlcmllbmNlX19zZWNvbmRhcnktY29udGVudCB7XG4gIG1pbi13aWR0aDogMTIuNXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5uZXctZXhwZXJpZW5jZV9fc2Vjb25kYXJ5LWNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5wdm9mLWRvY19fd3JhcHBlciAuZXhhbXBsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHBhZGRpbmc6IDFyZW0gMCAxcmVtIDFyZW07XG4gIGJvcmRlci1sZWZ0OiAwLjMxMjVyZW0gc29saWQgI2NjYztcbn1cblxuXG5kbC5jYWxsb3V0bGlzdFtjbGFzc10geyAvLyBUYWcgcXVhbGlmaWVyIGlzIG5lY2Vzc2FyeVxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbi1jb250ZW50IDFmcjtcbiAgZ2FwOiAxLjI1ZW0gMC43NWVtO1xuXG4gIGR0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIGRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5wYXJhOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vL1xuLy8gVG9hc3Qgc3R5bGVzIGFyZSBmaXhpbmcgaXNzdWVzIHdpdGggXCJDbGljayB0byBjb3B5IGxpbmtcIiB0ZXh0XG4vLyBWYXJpYWJsZSBzZXQgdG8gbWF0Y2ggdmFsdWUgZnJvbSBjcC1jaHJvbWUgc2Fzcy9uaW1idXMvc2Fzcy9pbmNsdWRlcy9fc2V0dGluZ3Muc2Nzc1xuLy8vXG4kbGlua19kYXJrdGhlbWVfaG92ZXI6ICMyYjlhZjM7XG5cbi50b2FzdCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDE1cHg7XG4gIGJvdHRvbTogMTVweDtcbiAgbGVmdDogMTVweDtcbiAgei1pbmRleDogOTk5O1xuICBtaW4td2lkdGg6IDEwMHB4O1xuICBtYXgtd2lkdGg6IDUyNXB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4yNik7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBjdWJpYy1iZXppZXIoMC40NjUsIDAuMTgzLCAwLjE1MywgMC45NDYpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDE1MCUsIDApO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuXG4gICYuc2hvdyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbGlua19kYXJrdGhlbWVfaG92ZXI7XG4gICAgfVxuXG4gICAgJi5idG4ge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5idG4ge1xuICAgICYuYnRuLWxpbmsge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgLmNsb3NlIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4ubm8tY3NzdHJhbnNmb3JtczNkIHtcbiAgJi5jc3N0cmFuc2l0aW9ucyB7XG4gICAgLnRvYXN0IHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBjdWJpYy1iZXppZXIoMC40NjUsIDAuMTgzLCAwLjE1MywgMC45NDYpO1xuICAgIH1cbiAgfVxuXG4gIC50b2FzdCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAmLnNob3cge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vL1xuLy8gRERGIG92ZXJyaWRlc1xuLy8vXG4uYW5ub3RhdG9yLW91dGVyW2NsYXNzXVtjbGFzc10ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcblxuICAvLyBEb24ndCBzaG93IERERiB1bmxlc3Mgd2UgaGF2ZSB0aGUgMyBjb2x1bW4gbGF5b3V0XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fZGVza3RvcCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLyogSXMgc2FtZSBlbGVtZW50IGFzIGFubm90YXRvci1mcmFtZSAqL1xuLmFubm90YXRvci1mcmFtZVtjbGFzc10gKiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmFubm90YXRvci1mcmFtZSAuaC1zaWRlYmFyLWlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1NXB4OyAvLyBNb3ZlIHRoZSBtb2RhbCBiZWxvdyB0aGUgdG9wIG5hdiBiYXJcbiAgcmlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAyMDBweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3ApIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5hbm5vdGF0b3ItdG9vbGJhcltjbGFzc11bY2xhc3NdIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5hbm5vdGF0b3ItdG9vbGJhciA+IHVsLFxuLmFubm90YXRvci10b29sYmFyID4gdWwgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5hbm5vdGF0b3ItdG9vbGJhciA+IHVsID4gbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYW5ub3RhdG9yLW91dGVyIC5hbm5vdGF0b3ItZnJhbWUtYnV0dG9uW2NsYXNzXVtjbGFzc10sXG4uYW5ub3RhdG9yLWZyYW1lW2NsYXNzXSAuYW5ub3RhdG9yLWZyYW1lLWJ1dHRvbi0tc2lkZWJhcl90b2dnbGUsXG4uYXBwLWNvbnRlbnQtd3JhcHBlciAqIHtcbiAgZm9udC1mYW1pbHk6IFJlZEhhdFRleHQsICdSZWQgSGF0IFRleHQnLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xufVxuXG4uYW5ub3RhdG9yLW91dGVyIC5hbm5vdGF0b3ItZnJhbWUtYnV0dG9uW2NsYXNzXVtjbGFzc10ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMzBweDtcbiAgcGFkZGluZzogMC43NWVtIDFlbTtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMS4zMzM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5hbm5vdGF0b3Itb3V0ZXIgaWZyYW1lIHtcbiAgZmxleC1ncm93OiAxO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3ApIHtcbiAgICBtaW4taGVpZ2h0OiA2MDBweDtcbiAgfVxufVxuXG5cbi5wcm9kdWN0dGl0bGUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIC5wcm9kdWN0bnVtYmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLXJoLXJlZDtcbiAgfVxufVxuXG4vLyBpbWFnZSB6b29tIG1vZGFsXG4vLyBkb24ndCBrbm93IGlmIGFsbCBvZiB0aGlzIGlzIG5lZWRlZCBidXQgaXQgd29ya3Ncbi5jcC1tb2RhbC1vcGVuLFxuLnpvb20tb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jcC1tb2RhbCxcbi5jcC12aWRlby1tb2RhbCxcbi56b29tLW1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNDY1LCAwLjE4MywgMC4xNTMsIDAuOTQ2KTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4uaW4uY3AtbW9kYWwsXG4uaW4uY3AtdmlkZW8tbW9kYWwsXG4uaW4uem9vbS1tb2RhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xufVxuXG4uY3AtbW9kYWwgLmNsb3NlLFxuLmNwLXZpZGVvLW1vZGFsIC5jbG9zZSxcbi56b29tLW1vZGFsIC5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTAuNXJlbTtcbiAgd2lkdGg6IDI4cHg7XG4gIHdpZHRoOiAxLjc1cmVtO1xuICBoZWlnaHQ6IDI4cHg7XG4gIGhlaWdodDogMS43NXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG4gIG9wYWNpdHk6IDAuOTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICBjb2xvcjogIzFhMWExYTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5jcC1tb2RhbCAuY2xvc2U6YWZ0ZXIsXG4uY3AtdmlkZW8tbW9kYWwgLmNsb3NlOmFmdGVyLFxuLnpvb20tbW9kYWwgLmNsb3NlOmFmdGVyIHtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG59XG5cbi5jcC1tb2RhbC13cmFwLFxuLnpvb20td3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwLjYyNXJlbTtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG5cbiAgLmNwLW1vZGFsLXdyYXAsXG4gIC56b29tLXdyYXAge1xuICAgIHdpZHRoOiAzOC40Mzc1cmVtO1xuICAgIG1hcmdpbjogMi44MTI1cmVtIGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYycmVtKSB7XG5cbiAgLmNwLW1vZGFsLXdyYXAsXG4gIC56b29tLXdyYXAge1xuICAgIHdpZHRoOiA0OS44OTU4cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NXJlbSkge1xuXG4gIC5jcC1tb2RhbC13cmFwLFxuICAuem9vbS13cmFwIHtcbiAgICB3aWR0aDogNjAuMzEyNXJlbTtcbiAgfVxufVxuXG4uY3AtbW9kYWwtYm9keSA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jcC1tb2RhbC1iYWNrZHJvcCxcbi56b29tLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGN1YmljLWJlemllcigwLjQ2NSwgMC4xODMsIDAuMTUzLCAwLjk0Nik7XG59XG5cbi5pbi5jcC1tb2RhbC1iYWNrZHJvcCxcbi5pbi56b29tLWJhY2tkcm9wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDAuODtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTgwKTtcbn1cblxuLmNwLW1vZGFsLWJvZHkge1xuICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmNwLW1vZGFsW2RhdGEtY3AtbW9kYWwtdmlkZW89J3RydWUnXSAuY3AtbW9kYWwtYm9keSxcbi5jcC12aWRlby1tb2RhbCAuY3AtbW9kYWwtYm9keSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbltkYXRhLWFjdGlvbj0nem9vbSddIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5bZGF0YS1hY3Rpb249J3pvb20nXTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtZmFtaWx5OiByaC13ZWItaWNvbmZvbnQ7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbltkYXRhLWFjdGlvbj0nem9vbSddOmZvY3VzOmFmdGVyLFxuW2RhdGEtYWN0aW9uPSd6b29tJ106aG92ZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi56b29tLXdyYXAgLnpvb20tbGFyZ2VyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uem9vbS13cmFwIC56b29tLWxhcmdlciBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi56b29tLXdyYXAgLnpvb20tbGFyZ2VyIGE6Zm9jdXMsXG4uem9vbS13cmFwIC56b29tLWxhcmdlciBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uem9vbS13cmFwIC56b29tLWxhcmdlciBhOmFmdGVyIHtcbiAgY29udGVudDogJ1xcMkZGQic7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG59XG5cbi56b29tLWJvZHkge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLnpvb20tYm9keSAudmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4uem9vbS1ib2R5IC52aWRlby13cmFwcGVyW2RhdGEtYXNwZWN0LXJhdGlvPSc0OjMnXSB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG5cbi56b29tLWJvZHkgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wYXJhID4gLnRpdGxlW2NsYXNzXSxcbnAudGl0bGVbY2xhc3NdIHtcbiAgbWFyZ2luOiAxLjI1cmVtIDAgMDtcbiAgZm9udC1zaXplOiAkaGVhZGluZy0tYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZy0tYmxvY2stLXdlaWdodDtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmctLWJsb2NrLS1zdHlsZTtcbiAgdGV4dC10cmFuc2Zvcm06ICRoZWFkaW5nLS1ibG9jay0tdHJhbnNmb3JtO1xuXG4gICsgcCxcbiAgKyAuY29udGVudCA+ICo6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLnB2b2YtZG9jX193cmFwcGVyW2NsYXNzXSB7XG4gIHByZSB7XG4gICAgLy8gUmVtb3ZpbmcgbmljZSBmYWRlIGZvciBzY3JvbGxpbmcgZHVlIHRvIGJ1Z3MgdGhhdCB3b3VsZCByZXF1aXJlXG4gICAgLy8gYSB3cmFwcGluZyBIVE1MIGVsZW1lbnQgYXJvdW5kIHRoZSBwcmUuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cblxuICAgIC8vIENDUy02MDQ5OiBXZSBmb3VuZCBhIGNhc2Ugd2hlcmUgYWRtb25pdGlvbnMgd2VyZSByZW5kZXJkIGluc2lkZSBvZiBhIGNvZGVibG9ja1xuICAgIC8vIGR1ZSB0byBiYWQgUHYxIHJlbmRlcmluZy5cbiAgICAud2FybmluZyxcbiAgICAudGlwLFxuICAgIC5pbXBvcnRhbnQsXG4gICAgLmNhdXRpb24sXG4gICAgLm5vdGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IGVtYWlscyB3cmFwcGVkIGluIGNvZGUgZWxlbWVudCBmcm9tIGxvb2tpbmcgbGlrZSBjb2RlXG4gIGNvZGUuZW1haWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udDogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYXV0aG9yIHNlY3Rpb25zIGZyb20gaGF2aW5nIGNvbmZ1c2luZyB3aGl0ZSBzcGFjZVxuICAvLyBFeGFtcGxlOiBodHRwczovL2FjY2Vzcy5yZWRoYXQuY29tL2RvY3VtZW50YXRpb24vZW4tdXMvcmVkX2hhdF9lbnRlcnByaXNlX2xpbnV4LzcvaHRtbC9kZXZlbG9wZXJfZ3VpZGUvaW5kZXhcbiAgLy8gQXV0aG9yIGNvbXBvbmVudCB3cmFwcGVyXG4gIC5hdXRob3Ige1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuXG4gIC8vIEhlYWRsaW5lIHdpdGggYXV0aG9yIG5hbWUgYWxzbyBoYXMgY2xhc3Mgb2YgLmF1dGhvclxuICAuYXV0aG9yIC5hdXRob3Ige1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLyoqXG4gKiBUYWJsZSBzdHlsaW5nXG4gKi9cbnRhYmxlIHtcbiAgLy8gU3R5bGVzIHdpdGggKiBhcmUgbWF0Y2hpbmcgcmgtdGFibGUgdG8gcHJldmVudCBqdW1waW5nIGFmdGVyIHJoLXRhYmxlIGlzIGFkZGVkXG4gIG1hcmdpbjogMnJlbSAwO1xuXG4gIC5wdm9mLWRvY19fd3JhcHBlciAmIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC50YWJsZS1jb250ZW50cyB0YWJsZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgcmgtdGFibGUgJiB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgbWF4LXdpZHRoOiA5OTk5ZW07XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi8qIERlZmF1bHQgdGFibGUgY2VsbCBzdHlsZXMgdG8gcmgtdGFibGUgc3R5bGVzICovXG4ucHZvZi1kb2NfX3dyYXBwZXIgdGQsXG4ucHZvZi1kb2NfX3dyYXBwZXIgdGgge1xuICBwYWRkaW5nOiAwLjVlbSAxcmVtO1xuICBib3JkZXItbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjI1cyBlYXNlLW91dDtcbn1cblxuLyogRGVmYXVsdCB0YWJsZSBjZWxsIHN0eWxlcyB0byByaC10YWJsZSBzdHlsZXMgKi9cbi5wdm9mLWRvY19fd3JhcHBlciB0aGVhZCB0aCB7XG4gIHBhZGRpbmctdG9wOiAxLjVlbTtcbn1cblxuLyogRGVmYXVsdCB0YWJsZSBjYXB0aW9uIHN0eWxlcyB0byByaC10YWJsZSBzdHlsZXMgKi9cbi5wdm9mLWRvY19fd3JhcHBlciBjYXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGNvbG9yOiB2YXIoLS1wZmUtdGFibGVfX2NhcHRpb24tLUNvbG9yLCBjdXJyZW50Q29sb3IpO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wdm9mLWRvY19fd3JhcHBlciAucmV2aGlzdG9yeSB0YWJsZSB0aCxcbi5wdm9mLWRvY19fd3JhcHBlciAucmV2aGlzdG9yeSB0YWJsZSB0ZCB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5wdm9mLWRvY19fd3JhcHBlciAucmV2aGlzdG9yeSB0YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuODc1cmVtO1xufVxuXG4ucHZvZi1kb2NfX3dyYXBwZXIgLnJldmhpc3RvcnkgdGFibGUuc2ltcGxlbGlzdCB7XG4gIG1hcmdpbjogMDtcbn1cbiIsIkB1c2UgJ3Nhc3M6bWF0aCc7XG5AaW1wb3J0ICdjb3JlJztcbkBpbXBvcnQgJzIwX2Jhc2UvYW5pbWF0aW9ucyc7XG5AaW1wb3J0ICczMF9jb21wb25lbnRzL2Jvb2stbmF2JztcbkBpbXBvcnQgJzMwX2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnMzBfY29tcG9uZW50cy9zdXBlcmRvYy1uYXYnO1xuQGltcG9ydCAnMzBfY29tcG9uZW50cy9kb2Mtb3B0aW9ucyc7XG5AaW1wb3J0ICczMF9jb21wb25lbnRzL3B2b25lLWZhY2VsaWZ0JztcblxuI21hc3RoZWFkIHtcbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLm1haW4tY29udGVudFtjbGFzc10ge1xuICAvLyBQb3J0YWwgY2hyb21pbmcgb3ZlcnJpZGVcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uai1zdXBlcmRvYyB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IG1pbi1jb250ZW50IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgjeyRjb2x1bW5zLWluLWxheW91dH0sIG1pbm1heCgwLCAxZnIpKTtcbiAgICBwYWRkaW5nOiAwICN7JGxheW91dC1wYWRkaW5nLS1ob3Jpem9udGFsfTtcbiAgICBnYXA6IDAgI3skZ3V0dGVyLXdpZHRofTtcbiAgfVxufVxuXG4vLyBGb3IgcGFnZSBsYXlvdXQgc3R5bGVzIG9ubHkgKG1hcmdpbi9wb3NpdGlvbi9ldGMpXG4vLyBJbnRlcmlvciBzdHlsZXMgKHBhZGRpbmcsIGZvbnQsIGV0Yykgc2hvdWxkIGdvIG9uIC5qLWRvYy1uYXYgb3Igc2ltaWxhclxuLmotc3VwZXJkb2NfX25hdiB7XG4gIC8vIFN0aWNreSBzdHlsZXMgZm9yIG1vYmlsZSBiYXJcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICBib3gtc2hhZG93OiAwIDVweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X190YWJsZXQpIHtcbiAgICAvLyBSZW1vdmUgc3RpY2t5IHN0eWxlcywgb3RoZXIgZWxlbWVudHMgdGFrZSB0aGF0IG92ZXIgZm9yIHRhYmxldCBhbmQgdXBcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGdyaWQtcm93OiAxIC8gc3BhbiAyO1xuICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAjeyRzaWRlYmFyLWNvbHVtbi1zcGFuLS10YWJsZXR9O1xuICAgIGJvcmRlcjogMDtcbiAgICAvLyBEZXZpYXRlZCBmcm9tIGRlc2lnbiBzaGFkb3cgc28gaXQgZGlkbid0IHBvcCBvdXQgb24gdGhlIGxlZnQgc2lkZVxuICAgIGJveC1zaGFkb3c6IDNweCAwIDNweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wKSB7XG4gICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuICN7JHNpZGViYXItY29sdW1uLXNwYW4tLWRlc2t0b3B9O1xuICB9XG5cbiAgLmotcmVhZGluZy1tb2RlLS1lbmFibGVkICYge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmotcmVhZGluZy1tb2RlLS1hbmltYXRpb24tY29tcGxldGUgJiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X190YWJsZXQpIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKipcbiAqIFN1cGVyZG9jIEhlYWRlclxuICovXG4uai1zdXBlcmRvY19fcHJvZHVjdC10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5qLXN1cGVyZG9jX19wcm9kdWN0LXRpdGxlX19uYW1lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG59XG5cbi5qLXN1cGVyZG9jX19wcm9kdWN0LXRpdGxlX192ZXJzaW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogI2QwMDIxYjtcbn1cblxuLy8gSGlkZSBlbGVtZW50cyB0aGF0IGRvbid0IHNob3cgdXAgaW4gc3VwZXJkb2MgY29udGV4dFxuLnJoZG9jc19faGVhZGVyIHtcblxuICAucmhkb2NzLWNvbnRlbnQtdHlwZSxcbiAgLnJoZG9jc19faGVhZGVyX19zZWNvbmRhcnktd3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKipcbiAqIFN1cGVyZG9jIENvbnRlbnRcbiAqL1xuLmotc3VwZXJkb2NfX2NvbnRlbnQtd3JhcHBlciB7XG4gIGxlZnQ6IDA7IC8vIFNldHRpbmcgaXQgdG8gYSBudW1iZXIgc28gaXQgY2FuIGJlIHRyYW5zaXRpb25lZFxuICAvLyBEZXNpcmVkIHdpZHRoICsgcGFkZGluZyBjb252ZXJ0ZWQsIGludG8gZW1cbiAgbWF4LXdpZHRoOiAkY29udGVudF9fbWF4LXdpZHRoLS13aXRoLXBhZGRpbmc7XG4gIG1hcmdpbi10b3A6ICRzdXBlcmRvY19fd2hpdGUtc3BhY2UtLXRvcDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogI3skbGF5b3V0LXBhZGRpbmctLWhvcml6b250YWx9O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgcGFkZGluZy1sZWZ0OiAjeyRsYXlvdXQtcGFkZGluZy0taG9yaXpvbnRhbH07XG4gIHRyYW5zaXRpb246IGxlZnQgMC4yNXMgZWFzZTsgLy8gRm9yIGZvY3VzLW1vZGVcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX3RhYmxldCkge1xuICAgIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICAgIGdyaWQtcm93OiAyO1xuICAgIGdyaWQtY29sdW1uOiAjeyRzaWRlYmFyLWNvbHVtbi1zcGFuLS10YWJsZXQgKyAxfSAvIC0xO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAvLyBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3AtLXNtYWxsKSB7XG4gIC8vICAgZ3JpZC1jb2x1bW46IDQgLyAtMTtcbiAgLy8gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3ApIHtcbiAgICBncmlkLXJvdzogMTtcbiAgICBncmlkLWNvbHVtbjogI3skc2lkZWJhci1jb2x1bW4tc3Bhbi0tZGVza3RvcCArIDF9IC8gMTE7XG4gICAgbWF4LXdpZHRoOiAkY29udGVudF9fbWF4LXdpZHRoO1xuICB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmotcmVhZGluZy1tb2RlLS1lbmFibGVkICYge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgICAkc2lkZWJhci1ndXR0ZXItd2hpdGVzcGFjZTogKCRzaWRlYmFyLWNvbHVtbi1zcGFuLS10YWJsZXQgLSAxKSAqICRndXR0ZXItd2lkdGg7XG5cbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC8vIFNjb290IHRoZSBjb250ZW50IGFyZWEgb3ZlciB0byBjZW50ZXIgaXQgd2hlbiBzaWRlYmFyIGlzIGhpZGRlblxuICAgICAgLy8gTG9naWMgYmVoaW5kIHRoZSBjYWxjIGlzOlxuICAgICAgLy8gR2V0IHRoZSB3aWR0aCBvZiBvbmUgY29sdW1uXG4gICAgICAvLyBNdWx0aXBseSBieSB0aGUgY29sdW1uIHNwYW4gb2YgdGhlIHNpZGViYXIsXG4gICAgICAvLyBBZGQgYmFjayB0aGUgd2hpdGVzcGFjZSBmb3IgdGhlIGd1dHRlcnMgaW4gdGhlIHNpZGViYXJcbiAgICAgIC8vIFRvIHB1bGwgaXQgbGVmdCB0aGUgY29ycmVjdCBhbW91bnQgZGl2aWRlIGJ5IC0yXG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZVxuICAgICAgbGVmdDpcbiAgICAgICAgY2FsYyhcbiAgICAgICAgICAoXG4gICAgICAgICAgICAoMTAwdncgLSAjeyR0b3RhbC1ndXR0ZXItd2hpdGVzcGFjZX0gLSB2YXIoLS1zY3JvbGxiYXJXaWR0aCwgNDBweCkgLSAjeyRsYXlvdXQtcGFkZGluZy0taG9yaXpvbnRhbH0pIC8gI3skY29sdW1ucy1pbi1sYXlvdXR9XG4gICAgICAgICAgICAqICN7JHNpZGViYXItY29sdW1uLXNwYW4tLXRhYmxldH1cbiAgICAgICAgICAgICsgI3skc2lkZWJhci1ndXR0ZXItd2hpdGVzcGFjZX1cbiAgICAgICAgICApIC8gLTJcbiAgICAgICAgKTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wKSB7XG4gICAgICAkc2lkZWJhci1ndXR0ZXItd2hpdGVzcGFjZTogKCRzaWRlYmFyLWNvbHVtbi1zcGFuLS1kZXNrdG9wIC0gMSkgKiAkZ3V0dGVyLXdpZHRoO1xuXG4gICAgICBsZWZ0OlxuICAgICAgICBjYWxjKFxuICAgICAgICAgIChcbiAgICAgICAgICAgICgxMDB2dyAtICN7JHRvdGFsLWd1dHRlci13aGl0ZXNwYWNlfSAtIHZhcigtLXNjcm9sbGJhcldpZHRoLCA0MHB4KSAtICN7JGxheW91dC1wYWRkaW5nLS1ob3Jpem9udGFsfSkgLyAjeyRjb2x1bW5zLWluLWxheW91dH1cbiAgICAgICAgICAgICogI3skc2lkZWJhci1jb2x1bW4tc3Bhbi0tZGVza3RvcH1cbiAgICAgICAgICAgICsgI3skc2lkZWJhci1ndXR0ZXItd2hpdGVzcGFjZX1cbiAgICAgICAgICApIC8gLTJcbiAgICAgICAgKTtcbiAgICB9XG4gICAgLy8gc3R5bGVsaW50LWVuYWJsZVxuICB9XG59XG5cbi8qKlxuICogVGVydGlhcnkgU2lkZWJhclxuICovXG4uai1kb2NfX3RlcnRpYXJ5LXNpZGViYXIge1xuICAvLyBOZWdhdGl2ZSBtYXJnaW4gaXMgc28gYmFyIGlzIGZsdXNoIHdpdGggbGVmdCBhbmQgcmlnaHQgc2lkZSBhbmQgaWdub3JzIGd1dHRlclxuICBwYWRkaW5nOiAwLjVlbSAwO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjI1cyBlYXNlO1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX3RhYmxldCkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAtMXB4OyAvLyBQcmV2ZW50cyBoYWlybGluZSBwZWVrIGF0IGJhY2tncm91bmQgb24gdG9wXG4gICAgei1pbmRleDogMTtcbiAgICBncmlkLXJvdzogMTtcbiAgICBncmlkLWNvbHVtbjogNSAvLTE7XG4gICAgbWFyZ2luOiAwICN7JGxheW91dC1wYWRkaW5nLS1ob3Jpem9udGFsICogLTF9IDA7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wLS1zbWFsbCkge1xuICAgIGdyaWQtY29sdW1uOiA1IC8gLTE7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wKSB7XG4gICAgLy8gLmotZG9jX190ZXJ0aWFyeS1zaWRlYmFyX19pbm5lciB0YWtlcyBvdmVyIHN0aWNreSBhdCBkZXNrdG9wXG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBncmlkLWNvbHVtbjogLTMgLyAtMTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAkc3VwZXJkb2NfX3doaXRlLXNwYWNlLS10b3AgIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uai1kb2NfX3RlcnRpYXJ5LXNpZGViYXItLXN0aWNreSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgei1pbmRleDogNTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAzcHggMCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC0tZGVza3RvcCkge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmotcmVhZGluZy1tb2RlLS1lbmFibGVkICYge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fdGFibGV0KSB7XG4gICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnRfX2Rlc2t0b3ApIHtcbiAgICAgIC8vIE92ZXJyaWRpbmcgdGhlIG92ZXJyaWRlLCBiYWNrIHRvIHRoZSBkZWZhdWx0IGZvciB0aGlzIGJyZWFrcG9pbnRcbiAgICAgIGdyaWQtY29sdW1uOiAtMyAvIC0xO1xuICAgIH1cbiAgfVxufVxuXG4uai1kb2NfX3RlcnRpYXJ5LXNpZGViYXJfX2lubmVyIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50X19kZXNrdG9wLS1zbWFsbCkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiA0MHB4O1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludF9fZGVza3RvcCkge1xuICAgIG1heC13aWR0aDogOTk5OWVtO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4ucmgtdGFibGUtLWlzLWZ1bGwtc2NyZWVuICN0by10b3Age1xuICBkaXNwbGF5OiBub25lO1xufVxuIl19 */
