/* functions.scss */
/* variables.scss */
/* mixins.scss */
/* breakpoints.scss */
/* animations.scss */
@keyframes fadeDown {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.animate-down {
  opacity: 0;
  transform: translateY(-40px);
  animation: fadeDown 0.8s ease-out forwards;
  animation-delay: 0.2s;
}

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.animate-up {
  opacity: 0;
  transform: translateY(40px);
}

.animate-up.in-view {
  animation: fadeUp 0.8s ease-out forwards;
}

.hero .o-anchor {
  display: inline-block;
  position: relative;
}

.video-placeholder {
  width: calc(100% - 2 * clamp(16px, 4vw, 32px));
  max-width: calc(100% - 2 * clamp(16px, 4vw, 32px));
  aspect-ratio: 4/3;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.floating-video {
  position: absolute;
  border-radius: 50%;
  overflow: hidden;
  z-index: 2;
  pointer-events: none;
  max-width: calc(100% - 2 * clamp(16px, 4vw, 32px));
  width: calc(100% - 2 * clamp(16px, 4vw, 32px));
}

.floating-video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 8px;
}

/* animated text on headings */
#animated-heading {
  word-wrap: break-word;
}

.word {
  display: inline-block;
  white-space: nowrap;
  margin-right: 0.25em; /* keeps spacing between words */
}

.char {
  display: inline-block;
  white-space: pre;
}

/*Base.scss*/
*,
*::after,
*::before {
  margin: 0;
  padding: 0;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  background-color: black;
  color: white;
  -webkit-font-smoothing: antialiased;
}

.tenc-image, .tenc-video {
  width: 100%;
  display: block;
  border-radius: 6px;
}

@font-face {
  font-family: "moderat";
  src: url("../fonts/moderat-bold-italic-webfont.woff2") format("woff2"), url("../fonts/moderat-bold-italic-webfont.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "moderat";
  src: url("../fonts/moderat-bold-webfont.woff2") format("woff2"), url("../fonts/moderat-bold-webfont.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "moderat";
  src: url("../fonts/moderat-regular-italic-webfont.woff2") format("woff2"), url("../fonts/moderat-regular-italic-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "moderat";
  src: url("../fonts/moderat-regular-webfont.woff2") format("woff2"), url("../fonts/moderat-regular-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --algst-block-editor-border: solid 2px #f0f0f0;
  --algst-block-editor-padding: 2px;
}

/* White theme override */
.background--white {
  --block-bg-color: #ffffff;
  --block-col-color: #f8f8f8;
}

/* Gray theme override */
.background--grey {
  --block-bg-color: #f8f8f8;
  --block-col-color: #ffffff;
}

.G-title-wrapper {
  padding-left: 15px;
  padding-right: 15px;
}

/* CSS :root variables */
/*typography.scss*/
body {
  color: #fafafa;
  font-family: "moderat", sans-serif;
}

h1, h2, h3, h4, h5, h6, p {
  line-height: 1.2em;
}

p {
  margin-bottom: 7.5px;
}

h1 {
  font-size: clamp(4.8rem, 8vw, 80rem);
  letter-spacing: -0.03em;
  line-height: 1em;
}
h1.port-item-title {
  font-size: clamp(6rem, 5vw, 7.2rem);
}
h1.home-h1 {
  word-break: break-word;
  max-width: 100%;
  margin: 0;
  font-size: clamp(6rem, 8vw, 60rem);
}
h1.h1-404-text {
  font-size: clamp(3rem, 3vw, 3.2rem);
  margin-bottom: 45px;
}

h2 {
  font-size: clamp(4rem, 5vw, 20rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1em;
}
h2.wb-wide-section-heading {
  margin-top: -5px;
}
h2.service-title {
  font-size: clamp(3rem, 3vw, 3.2rem);
}
h2.port-item-subtitle {
  font-size: clamp(3rem, 3vw, 4.3rem);
  color: #a1a1a1;
}
h2.service-stages-title {
  font-size: clamp(3.5rem, 3vw, 20rem);
}
h2.tight-team {
  font-size: clamp(3rem, 4vw, 60rem);
}

h3 {
  font-size: clamp(2rem, 3vw, 20rem);
}
h3.title {
  font-size: clamp(1.5rem, 2vw, 2rem);
}
h3.service-subtitle {
  font-weight: 400;
  letter-spacing: -0.16px;
  font-size: 2.4rem;
  line-height: 1.3em;
}
h3.stages-subtitle {
  font-size: clamp(3rem, 3vw, 3.2rem);
}
h3.contact-details-telemail {
  font-size: clamp(2.2rem, 3vw, 2.4rem);
}
h3.contact-details-telemail a {
  font-weight: 400;
  letter-spacing: -0.16px;
  font-size: clamp(2.2rem, 3vw, 2.4rem);
  line-height: 1.4em;
}
h3.quote-text {
  font-size: clamp(3rem, 3vw, 3.2rem);
}

p {
  font-size: 1.8rem;
  line-height: 1.5em;
  font-weight: 400;
}
p.side-title {
  color: #a1a1a1;
}
p.super-large-text {
  font-size: clamp(10rem, 12vw, 60rem);
  line-height: 1em;
}
p.service-description {
  color: #a1a1a1;
}
p.port-item-categories {
  color: #a1a1a1;
}
p.super-small-text {
  font-size: clamp(1.4rem, 1.5vw, 1.6rem);
}
p.portfolio-title, p.portfolio-year, p.team-title, p.team-job {
  line-height: 1.3em;
}

li {
  font-size: 1.8rem;
  line-height: 1.5em;
}
li.lead-text {
  font-weight: 700;
}

a, a:visited {
  color: white;
  font-size: clamp(1.6rem, 1.5vw, 1.8rem);
  text-decoration: none;
}

a:hover, a:active, a:focus {
  text-decoration: none;
  color: white;
  opacity: 0.85;
}

/* utilities.scss */
/* button.scss */
.button-wrapper {
  margin-top: 15px;
}
.button-wrapper .button_custom {
  padding: 20px 30px;
  border: solid 1px white;
  background-color: transparent;
  color: white;
  border-radius: 6px;
  text-decoration: none;
}
.button_custom {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  overflow: hidden;
  text-decoration: none;
}
.button_custom .button-text-wrap, .button_custom .button-arrow-wrap {
  position: relative;
  overflow: hidden;
}
.button_custom .button-text-wrap .button-text, .button_custom .button-text-wrap .button-arrow, .button_custom .button-text-wrap .button-hover-text, .button_custom .button-text-wrap .button-hover-arrow, .button_custom .button-arrow-wrap .button-text, .button_custom .button-arrow-wrap .button-arrow, .button_custom .button-arrow-wrap .button-hover-text, .button_custom .button-arrow-wrap .button-hover-arrow {
  display: block;
  transform: translateY(0%);
  transition: transform 0.35s ease;
  transform-style: preserve-3d;
}
.button_custom .button-text-wrap .button-hover-text, .button_custom .button-text-wrap .button-hover-arrow, .button_custom .button-arrow-wrap .button-hover-text, .button_custom .button-arrow-wrap .button-hover-arrow {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
}
.button_custom .button-text-wrap.is-animated .button-text, .button_custom .button-text-wrap.is-animated .button-arrow, .button_custom .button-arrow-wrap.is-animated .button-text, .button_custom .button-arrow-wrap.is-animated .button-arrow {
  transform: translateY(-100%);
}
.button_custom .button-text-wrap.is-animated .button-hover-text, .button_custom .button-text-wrap.is-animated .button-hover-arrow, .button_custom .button-arrow-wrap.is-animated .button-hover-text, .button_custom .button-arrow-wrap.is-animated .button-hover-arrow {
  transform: translateY(-100%);
}

@keyframes flickUp {
  0% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-100%);
  }
}
/* carousel.scss */
.wpcf7 .wpcf7-form p .wpcf7-form-control-wrap input, .wpcf7 .wpcf7-form p .wpcf7-form-control-wrap textarea {
  width: 100%;
  border: solid 1px transparent;
  border-bottom: solid 1px black;
  background-color: transparent;
  margin-bottom: 2%;
  padding-left: 0;
  font-weight: 700;
}
.wpcf7 .wpcf7-form p .wpcf7-form-control-wrap input::-moz-placeholder, .wpcf7 .wpcf7-form p .wpcf7-form-control-wrap textarea::-moz-placeholder {
  color: black;
}
.wpcf7 .wpcf7-form p .wpcf7-form-control-wrap input::placeholder, .wpcf7 .wpcf7-form p .wpcf7-form-control-wrap textarea::placeholder {
  color: black;
}
.wpcf7 .wpcf7-form p input[type=submit] {
  background-color: #f0f0f0;
  color: black;
  font-size: 1.6rem;
  border: solid 1px #f0f0f0;
  border-radius: 30px;
  padding: 5px 30px;
  font-weight: 700;
  margin-top: 20px;
}

/* Slider.scss */
/* global-heading.scss */
.tenc-global-header-s1-wrapper {
  padding-top: 16px;
  padding-bottom: clamp(80px, 12vw, 180px);
}
.tenc-global-header-s1-wrapper.contact-page {
  padding-bottom: clamp(24px, 6vw, 64px);
}
.tenc-global-header-s1-wrapper .tenc-tenc-global-header-s1-grid-wrapper .tenc-global-header-s1-grid-item .tenc-content-wrapper .tenc-title-wrapper {
  max-width: 90%;
}
.tenc-global-header-s1-wrapper .tenc-tenc-global-header-s1-grid-wrapper .tenc-global-header-s1-grid-item .tenc-content-wrapper .tenc-title-wrapper h1 {
  transform: translateZ(0);
  will-change: transform;
  backface-visibility: hidden;
}
.tenc-global-header-s1-wrapper .tenc-tenc-global-header-s1-grid-wrapper .tenc-global-header-s1-grid-item .tenc-content-wrapper .tenc-title-wrapper h1 .word {
  display: inline-block;
  white-space: normal;
  -webkit-hyphens: auto;
          hyphens: auto;
}
.tenc-global-header-s1-wrapper .tenc-tenc-global-header-s1-grid-wrapper .tenc-global-header-s1-grid-item .tenc-content-wrapper .tenc-title-wrapper h1 .word .char {
  display: inline-block;
}
.tenc-global-header-s1-wrapper .tenc-tenc-global-header-s1-grid-wrapper .tenc-global-header-s1-grid-item .tenc-content-wrapper .tenc-title-wrapper h1 .word .char.hyphen {
  display: inline-block;
}

/* Brands-built.scss */
.brands-wrapper .tenc-brands-grid-wrapper2 {
  gap: 12px !important;
}
.brands-wrapper .tenc-brands-grid-wrapper2 .brands-grid-item2 {
  padding-top: 0;
  padding-bottom: 0;
}
.brands-wrapper .tenc-brands-grid-wrapper2 .brands-grid-item2 .logo-wrapper .client-logo {
  width: 100%;
}

@media (max-width: 1280px) {
  .brands-wrapper .tenc-brands-grid-wrapper2.algst-grid.algst-cols-6 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media (max-width: 992px) {
  .brands-wrapper .tenc-brands-grid-wrapper2.algst-grid.algst-cols-6 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 600px) {
  .brands-wrapper .tenc-brands-grid-wrapper2.algst-grid.algst-cols-6 {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .brands-wrapper .tenc-brands-grid-wrapper2.algst-grid {
    padding: 0px 0;
    gap: 12px;
    margin-top: 30px;
  }
  .brands-wrapper .tenc-brands-grid-wrapper2.algst-grid .brands-grid-item2 {
    padding: 0;
  }
}
/* team.scss */
.team-wrapper {
  padding-bottom: clamp(80px, 12vw, 180px);
}
.team-wrapper .team-grid-wrapper .team-grid-item .tenc-content-wrapper .image-wrapper {
  margin-bottom: 16px;
}
.team-wrapper .team-grid-wrapper .team-grid-item .tenc-content-wrapper .image-wrapper .tenc-image {
  aspect-ratio: 16/9;
  border-radius: 6px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
}
.team-wrapper .team-grid-wrapper .team-grid-item .tenc-content-wrapper .text-wrapper .team-title {
  margin-bottom: 0;
}
.team-wrapper .team-grid-wrapper .team-grid-item .tenc-content-wrapper .text-wrapper .team-job {
  color: #a1a1a1;
}

/* quote-section.scss */
.quote-outer-wrapper {
  padding-bottom: clamp(80px, 12vw, 180px);
}
.quote-outer-wrapper .quote-grid-wrapper .quote-grid-item .tenc-content-wrapper {
  border-left: solid 1px #a1a1a1;
  padding-left: 30px;
}
.quote-outer-wrapper .quote-grid-wrapper .quote-grid-item .tenc-content-wrapper .quoter-wrapper {
  margin-top: 16px;
}
.quote-outer-wrapper .quote-grid-wrapper .quote-grid-item .tenc-content-wrapper .quoter-wrapper .team-title {
  margin-bottom: 0;
}
.quote-outer-wrapper .quote-grid-wrapper .quote-grid-item .tenc-content-wrapper .quoter-wrapper .team-year {
  color: #a1a1a1;
  line-height: 1.3em;
}
/* Grid base */
.algst-wrapper {
  width: 100%;
  margin: 0 auto;
  padding-left: clamp(16px, 4vw, 32px);
  padding-right: clamp(16px, 4vw, 32px);
}
.algst-wrapper .algst-grid {
  max-width: 100%;
  margin: 0 auto;
  padding: 30px 0;
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}
.algst-wrapper .algst-grid.contained-grid {
  max-width: 1280px;
}
.algst-wrapper .algst-grid.special-grid {
  max-width: 1800px;
}
.algst-wrapper .algst-grid.algst-cols-2 {
  grid-template-columns: repeat(2, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-3 {
  grid-template-columns: repeat(3, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-4 {
  grid-template-columns: repeat(4, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-5 {
  grid-template-columns: repeat(5, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-6 {
  grid-template-columns: repeat(6, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-7 {
  grid-template-columns: repeat(7, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-8 {
  grid-template-columns: repeat(8, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-9 {
  grid-template-columns: repeat(9, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-10 {
  grid-template-columns: repeat(10, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-11 {
  grid-template-columns: repeat(11, 1fr);
}
.algst-wrapper .algst-grid.algst-cols-12 {
  grid-template-columns: repeat(12, 1fr);
}
.algst-wrapper .algst-col {
  padding: 15px;
  box-sizing: border-box;
}
.algst-wrapper .algst-col.col-span-1 {
  grid-column: span 1;
}
.algst-wrapper .algst-col.col-span-2 {
  grid-column: span 2;
}
.algst-wrapper .algst-col.col-span-3 {
  grid-column: span 3;
}
.algst-wrapper .algst-col.col-span-4 {
  grid-column: span 4;
}
.algst-wrapper .algst-col.col-span-5 {
  grid-column: span 5;
}
.algst-wrapper .algst-col.col-span-6 {
  grid-column: span 6;
}
.algst-wrapper .algst-col.col-span-7 {
  grid-column: span 7;
}
.algst-wrapper .algst-col.col-span-8 {
  grid-column: span 8;
}
.algst-wrapper .algst-col.col-span-9 {
  grid-column: span 9;
}
.algst-wrapper .algst-col.col-span-10 {
  grid-column: span 10;
}
.algst-wrapper .algst-col.col-span-11 {
  grid-column: span 11;
}
.algst-wrapper .algst-col.col-span-12 {
  grid-column: span 12;
}
.algst-wrapper .algst-col.col-full {
  grid-column: 1/-1;
}

@media (max-width: 1280px) {
  .algst-wrapper .algst-grid {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-2 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-3 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-4 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-5 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-6 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-7 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-8 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-9 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-10 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-11 {
    grid-template-columns: 1fr 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-12 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .algst-wrapper .algst-grid {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-2 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-3 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-4 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-5 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-6 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-7 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-8 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-9 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-10 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-11 {
    grid-template-columns: 1fr;
  }
  .algst-wrapper .algst-grid.algst-cols-12 {
    grid-template-columns: 1fr;
  }
}
/* Footer */
.tenc-footer-wrapper-wrapper {
  padding-top: clamp(80px, 12vw, 180px);
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .tenc-title-wrapper {
  padding-bottom: clamp(16px, 4vw, 32px);
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid-wrapper {
  padding-bottom: clamp(64px, 10vw, 128px);
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid-wrapper .footer-grid-item {
  padding-left: 0;
  padding-right: 0;
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid-wrapper .footer-grid-item .tenc-inner-content-wrapper p {
  color: #a1a1a1;
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid-wrapper .footer-grid-item .tenc-inner-content-wrapper p a {
  color: white;
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid-wrapper .footer-grid-item .tenc-inner-content-wrapper p a:hover {
  opacity: 0.85;
}
@media (max-width: 768px) {
  .tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid2-wrapper.algst-cols-6 {
    grid-template-columns: 1fr 1fr;
  }
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid2-wrapper .footer-grid2-item .tenc-logo-wrapper .tenc-logo {
  max-width: 100px;
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid2-wrapper .footer-grid2-item .tenc-logo-wrapper .tenc-logo.tenc-company-logo {
  height: 65px;
}
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid2-wrapper .footer-grid2-item .tenc-logo-wrapper .tenc-logo.b-corp-logo {
  height: 62.5px;
}

/* additional css */
/* 8th September 2026 */
.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid2-wrapper .footer-grid2-item .tenc-logo-wrapper .tenc-logo.b-corp-logo {
  height: 62.5px;
}

.tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid2-wrapper .footer-grid2-item .tenc-logo-wrapper .tenc-logo.tenc-company-logo {
  max-width: 100px;
  height: 65px;
}

@media (max-width: 768px) {
  .tenc-footer-wrapper-wrapper .tenc-footer-wrapper-grid-wrapper .tenc-footer-wrapper-grid-item .tenc-content-wrapper .footer-grid2-wrapper.algst-grid.algst-cols-6 {
    grid-template-columns: 1fr 1fr;
  }
}
/* Layout */
.tenc-site-header {
  padding: clamp(16px, 4vw, 32px);
}
.tenc-site-header .tenc-nav-container {
  margin: 0 auto;
  padding: 0 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.tenc-site-header .tenc-nav-container .tenc-nav-logo-wrapper .tenc-nav-logo-link:hover {
  opacity: 1;
}
.tenc-site-header .tenc-nav-container .tenc-nav-logo-wrapper .tenc-nav-logo-link .tenc-nav-logo {
  max-width: 100px;
}
.tenc-site-header .tenc-nav-container .tenc-main-nav {
  position: relative;
  z-index: 9999;
}
.tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-menu-toggle {
  display: none;
  background: none;
  color: white;
  font-size: 1rem;
  border: none;
  cursor: pointer;
}
.tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links {
  list-style: none;
  display: flex;
  gap: 2rem;
  z-index: 9999;
}
.tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links .tenc-nav-item a.active, .tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links .tenc-nav-item a:hover {
  color: #a1a1a1;
  opacity: 1;
}
.tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links .tenc-nav-item a .nav-link-text-wrap {
  position: relative;
  overflow: hidden;
}
.tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links .tenc-nav-item a .nav-link-text-wrap .nav-link-text {
  transform: translateY(0);
  transition: transform 0.35s ease;
  transform-style: preserve-3d;
}
.tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links .tenc-nav-item a .nav-link-text-wrap .nav-link-text.nav-link-hover-text {
  position: absolute;
  bottom: -100%;
  left: 0;
  width: 100%;
}
.tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links .tenc-nav-item a .nav-link-text-wrap.is-animated .nav-link-text {
  animation: flickUp 0.4s ease forwards;
}
@keyframes flickUp {
  0% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-100%);
  }
}
/* Mobile Styles */
@media (max-width: 992px) {
  .tenc-nav-item a, .tenc-menu-toggle a {
    font-size: 1.8rem;
  }
  .tenc-site-header .tenc-nav-container .tenc-main-nav {
    background-color: black;
  }
  .tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-menu-toggle {
    display: block;
  }
  .tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links {
    position: absolute;
    top: 2.5rem;
    right: -10px;
    background-color: black;
    flex-direction: column;
    align-items: flex-end;
    padding: 1rem;
    display: none;
    gap: 1rem;
    text-align: right;
  }
  .tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links.open {
    display: flex;
  }
  .tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links .tenc-nav-item a .nav-link-text-wrap.is-animated .nav-link-text {
    animation: none;
  }
  .tenc-site-header .tenc-nav-container .tenc-main-nav .tenc-nav-links .tenc-nav-item a .nav-link-text-wrap.is-animated .nav-link-hover-text {
    animation: none;
  }
}
/* home.scss */
/*
.home-hero-section-wrapper {

    & .tenc-home-hero-grid-wrapper {

        & .home-hero-grid-item {

            & .tenc-content-wrapper {

            }
        }
    }
}
    */
.home-hero-section-wrapper {
  padding-top: 16px;
  padding-bottom: 16px;
}
.home-hero2-section-wrapper {
  padding-bottom: 16px;
}
.home-hero2-section-wrapper .tenc-home-hero2-grid-wrapper .home-hero2-grid-item .tenc-vid-embed-wrapper .tenc-hero-vid {
  width: 100%;
  border-radius: 6px;
}

.home-s2-wrapper {
  padding-bottom: clamp(80px, 12vw, 180px);
}
.home-s2-wrapper .tenc-home-s2-grid-wrapper .home-s2-grid-item .tenc-content-wrapper .button-wrapper {
  margin-top: 90px;
}

/* Portfolio.scss */
.portfolio-s1-wrapper .tenc-portfolio-s1-grid-wrapper {
  gap: 8px;
}
.portfolio-s1-wrapper .tenc-portfolio-s1-grid-wrapper .portfolio-s1-grid-item .tenc-content-wrapper a .image-wrapper {
  border-radius: 6px;
  overflow: hidden;
  aspect-ratio: 797/448;
}
.portfolio-s1-wrapper .tenc-portfolio-s1-grid-wrapper .portfolio-s1-grid-item .tenc-content-wrapper a .image-wrapper .tenc-image {
  border-radius: 6px;
  transition: transform 0.6s ease;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.portfolio-s1-wrapper .tenc-portfolio-s1-grid-wrapper .portfolio-s1-grid-item .tenc-content-wrapper a .image-wrapper .tenc-image:hover {
  transform: scale(1.15);
}
.portfolio-s1-wrapper .tenc-portfolio-s1-grid-wrapper .portfolio-s1-grid-item .tenc-content-wrapper a .text-wrapper .portfolio-title {
  padding-top: 16px;
  margin-bottom: 0px;
}
.portfolio-s1-wrapper .tenc-portfolio-s1-grid-wrapper .portfolio-s1-grid-item .tenc-content-wrapper a .text-wrapper .portfolio-year {
  color: #a1a1a1;
}

/* about.scss */
.about-s2-wrapper {
  margin-bottom: clamp(80px, 12vw, 180px);
}
.about-s2-wrapper .tenc-about-s2-grid-wrapper {
  padding-bottom: clamp(24px, 6vw, 64px);
}
.about-s2-wrapper .tenc-about-s2-grid-wrapper .about-s2-grid-item.left-col {
  max-width: 350px;
}
.about-s2-wrapper .tenc-about-s2-grid-wrapper .about-s2-grid-item.left-col .tenc-content-wrapper p {
  color: #a1a1a1;
}
.about-s2-wrapper .tenc-about-s2-grid-wrapper .about-s2-grid-item.right-col .tenc-content-wrapper {
  max-width: 90%;
}
/* services.scss */
.services-s2-wrapper {
  padding-bottom: clamp(80px, 12vw, 180px);
}
.services-s2-wrapper .tenc-services-s2-grid-wrapper .services-s2-grid-item .tenc-content-wrapper .image-wrapper .tenc-icon {
  width: 113px;
}
.services-s2-wrapper .tenc-services-s2-grid-wrapper .services-s2-grid-item .tenc-content-wrapper .text-wrapper {
  padding-top: 16px;
  max-width: 500px;
}
.services-s2-wrapper .tenc-services-s2-grid-wrapper .services-s2-grid-item .tenc-content-wrapper .text-wrapper .service-subtitle {
  padding-top: 16px;
}
.services-s2-wrapper .tenc-services-s2-grid-wrapper .services-s2-grid-item .tenc-content-wrapper .text-wrapper .service-description {
  padding-top: 16px;
}

.services-s3-wrapper {
  padding-bottom: clamp(80px, 12vw, 180px);
}
.services-s3-wrapper .tenc-services-s3a-grid-wrapper .services-s3a-grid-item .tenc-flex-wrapper {
  display: flex;
  gap: clamp(16px, 4vw, 32px);
}
.services-s3-wrapper .tenc-services-s3a-grid-wrapper .services-s3a-grid-item .tenc-flex-wrapper .tenc-content-wrapper.left {
  width: 10%;
}
.services-s3-wrapper .tenc-services-s3a-grid-wrapper .services-s3a-grid-item .tenc-flex-wrapper .tenc-content-wrapper.right {
  width: 80%;
  max-width: 500px;
}
.services-s3-wrapper .tenc-services-s3a-grid-wrapper .services-s3a-grid-item .tenc-flex-wrapper .tenc-content-wrapper.right h3 {
  margin-bottom: 16px;
}
.services-s3-wrapper .tenc-services-s3a-grid-wrapper .services-s3a-grid-item .tenc-flex-wrapper .tenc-content-wrapper.right p {
  color: #a1a1a1;
}

.services-s4-wrapper .tenc-services-s4a-grid-wrapper .services-s4a-grid-item {
  padding-top: 0;
  padding-bottom: 0;
}
.services-s4-wrapper .tenc-services-s4a-grid-wrapper .services-s4a-grid-item .tenc-content-wrapper ul.outer-list {
  margin-bottom: 16px;
  margin-left: 20px;
}
.services-s4-wrapper .tenc-services-s4a-grid-wrapper .services-s4a-grid-item .tenc-content-wrapper ul.outer-list:last-child {
  margin-bottom: 0;
}
.services-s4-wrapper .tenc-services-s4a-grid-wrapper .services-s4a-grid-item .tenc-content-wrapper ul.outer-list li ul.inner-list {
  list-style-type: none;
}
.services-s4-wrapper .tenc-services-s4a-grid-wrapper .services-s4a-grid-item .tenc-content-wrapper ul.outer-list li ul.inner-list li {
  color: #a1a1a1;
}
.services-s4-wrapper .tenc-services-s4a-grid-wrapper .services-s4a-grid-item .tenc-content-wrapper .text-description p {
  color: #a1a1a1;
}

/* Contact.scss */
.contact-s2-wrapper .tenc-contact-s2a-grid-wrapper .contact-s2a-grid-item-right .tenc-content-wrapper {
  display: flex;
  padding-bottom: clamp(24px, 6vw, 64px);
}
.contact-s2-wrapper .tenc-contact-s2a-grid-wrapper .contact-s2a-grid-item-right .tenc-content-wrapper .tenc-left-col {
  width: 30%;
}
.contact-s2-wrapper .tenc-contact-s2a-grid-wrapper .contact-s2a-grid-item-right .tenc-content-wrapper .tenc-right-col {
  width: 50%;
}
.contact-s2-wrapper .tenc-contact-s2a-grid-wrapper .contact-s2a-grid-item-right .tenc-content-wrapper .tenc-right-col p {
  color: #a1a1a1;
}
.contact-s2-wrapper .tenc-contact-s2a-grid-wrapper .contact-s2a-grid-item-right .tenc-content-wrapper .tenc-right-col p a {
  color: white;
}

@media (max-width: 600px) {
  .contact-s2-wrapper .tenc-contact-s2a-grid-wrapper .contact-s2a-grid-item-right .tenc-content-wrapper {
    flex-direction: column;
  }
  .contact-s2-wrapper .tenc-contact-s2a-grid-wrapper .contact-s2a-grid-item-right .tenc-content-wrapper .tenc-left-col {
    width: 100%;
  }
  .contact-s2-wrapper .tenc-contact-s2a-grid-wrapper .contact-s2a-grid-item-right .tenc-content-wrapper .tenc-right-col {
    width: 100%;
  }
}
/* portfolio-items.scss */
.port-item-s1-wrapper {
  padding-top: clamp(24px, 6vw, 64px);
  padding-bottom: 16px;
}
.port-item-s1-wrapper .port-item-s1-grid-wrapper .port-item-s1-grid-item .tenc-content-wrapper .tenc-title-wrapper h1.port-item-title {
  margin-bottom: 16px;
}
.port-item-s1-wrapper .port-item-s1-grid-wrapper .port-item-s1-grid-item .tenc-content-wrapper .tenc-subtitle-wrapper h2.port-item-subtitle {
  max-width: 620px;
  margin-bottom: clamp(16px, 4vw, 32px);
}
.port-item-s1-wrapper .port-item-s1-grid-wrapper .port-item-s1-grid-item .tenc-content-wrapper .tenc-cat-wrapper p.port-item-categories {
  max-width: 620px;
}

.port-item-s2-wrapper .port-item-s2-grid-wrapper {
  padding-bottom: 0;
}
.port-item-s2-wrapper .port-item-s2-grid-wrapper .port-item-s2-grid-item .tenc-image-wrapper .tenc-image {
  border-radius: 6px;
}
.port-item-s2-wrapper .port-item-s2-grid-wrapper .port-item-s2-grid-item .tenc-video-wrapper .tenc-video {
  width: 100%;
  border-radius: 6px;
}

@media (max-width: 992px) {
  .port-item-s3-wrapper .port-item-s3-grid-wrapper {
    padding-top: 0;
  }
}
/* dark mode.scss */
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFic3RyYWN0cy9fZnVuY3Rpb25zLnNjc3MiLCJhYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwiYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsImFic3RyYWN0cy9fYnJlYWtwb2ludHMuc2NzcyIsImJhc2UvX2FuaW1hdGlvbnMuc2NzcyIsImJ1bmRsZS5jc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL19yb290LnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL191dGxpdGllcy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCJjb21wb25lbnRzL19jYXJvdXNlbC5zY3NzIiwiY29tcG9uZW50cy9fZm9ybS5zY3NzIiwiY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCJnbG9iYWwvX2dsb2JhbC1oZWFkaW5nLnNjc3MiLCJnbG9iYWwvX2JyYW5kcy1idWlsdC5zY3NzIiwiZ2xvYmFsL190ZWFtLnNjc3MiLCJnbG9iYWwvX3F1b3RlLXNlY3Rpb24uc2NzcyIsImxheW91dC9fYWxnc3QtZ3JpZC5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImxheW91dC9fbmF2YmFyLnNjc3MiLCJwYWdlcy9faG9tZS5zY3NzIiwicGFnZXMvX3BvcnRmb2xpby5zY3NzIiwicGFnZXMvX2Fib3V0LnNjc3MiLCJwYWdlcy9fc2VydmljZXMuc2NzcyIsInBhZ2VzL19jb250YWN0LnNjc3MiLCJwYWdlcy9fcG9ydGZvbGlvLWl0ZW1zLnNjc3MiLCJ0aGVtZXMvX2RhcmstbW9kZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG1CQUFBO0FDQUEsbUJBQUE7QUNBQSxnQkFBQTtBQ0FBLHFCQUFBO0FDQUEsb0JBQUE7QUFJQTtFQUNJO0lBQ0UsVUFBQTtJQUNBLHdCQUFBO0VDRUo7QUFDRjtBREVFO0VBQ0UsVUFBQTtFQUNBLDRCQUFBO0VBQ0EsMENBQUE7RUFDQSxxQkFBQTtBQ0FKOztBREdFO0VBQ0U7SUFDRSxVQUFBO0lBQ0Esd0JB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Ozs7Ozs7Ozs7Ozs7S0FBQTtBQWVBO0VBQ0ksaUJwQlhTO0VvQllULG9CcEJaUztBSTZ4QmI7QWdCOXZCQTtFQUVJLG9CcEJqQ1M7QUlneUJiO0FnQnZ2QmdCO0VBQ0ksV0FBQTtFQUNBLGtCQUFBO0FoQnl2QnBCOztBZ0IxdEJBO0VBQ0ksd0NwQnJFVTtBSWt5QmQ7QWdCcHNCZ0I7RUFDSSxnQkFBQTtBaEJzc0JwQjs7QWlCcHpCQSxtQkFBQTtBQU1JO0VBQ0ksUXJCQ0k7QUlpekJaO0FpQjF5Qm9CO0VBQ0ksa0JBQUE7RUFDQSxnQkFBQTtFQUNBLHFCQUFBO0FqQjR5QnhCO0FpQjF5QndCO0VBQ0ksa0JBQUE7RUFDQSwrQkFBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtLQUFBLGlCQUFBO0FqQjR5QjVCO0FpQjF5QjRCO0VBQ0ksc0JBQUE7QWpCNHlCaEM7QWlCcnlCd0I7RUFDSSxpQnJCMUJmO0VxQjJCZSxrQkFBQTtBakJ1eUI1QjtBaUJweUJ3QjtFQUNJLGNyQnJDakI7QUkyMEJYOztBa0I5MEJBLGVBQUE7QUFJQTtFQUNJLHVDdEJVVTtBSW8wQmQ7QWtCNTBCSTtFQUNJLHNDdEJJTTtBSTAwQmQ7QWtCMTBCWTtFQUNJLGdCQUFBO0FsQjQwQmhCO0FrQngwQm9CO0VBQ0ksY0FBQTtBbEIwMEJ4QjtBa0JuMEJnQjtFQUNJLGNBQUE7QWxCcTBCcEI7QW1CLzFCQSxrQkFBQTtBQUlBO0VBQ0ksd0N2QlVVO0FJbzFCZDtBbUJwMUJvQjtFQUNJLFlBQUE7QW5CczFCeEI7QW1CbDFCZ0I7RUFDSSxpQnZCWlA7RXVCYU8sZ0JBQUE7QW5CbzFCcEI7QW1COTBCb0I7RUFDSSxpQnZCcEJYO0FJbzJCYjtBbUI3MEJvQjtFQUNJLGlCdkJ4Qlg7QUl1MkJiOztBbUJ0MEJBO0VBQ0ksd0N2QjVCVTtBSXEyQmQ7QW1CdHpCWTtFQUNJLGFBQUE7RUFDQSwyQnZCdERKO0FJODJCWjtBbUJwekJvQjtFQUNJLFVBQUE7QW5Cc3pCeEI7QW1CL3lCb0I7RUFDSSxVQUFBO0VBQ0EsZ0JBQUE7QW5CaXpCeEI7QW1CL3lCd0I7RUFDSSxtQnZCeEVmO0FJeTNCYjtBbUI5eUJ3QjtFQUNJLGN2QmxGakI7QUlrNEJYOztBbUJyeEJRO0VBQ0ksY0FBQTtFQUNBLGlCQUFBO0FuQnd4Qlo7QW1CcHhCZ0I7RUFDSSxtQnZCOUdQO0V1QitHTyxpQkFBQTtBbkJzeEJwQjtBbUJweEJvQjtFQUNJLGdCQUFBO0FuQnN4QnhCO0FtQmp4QndCO0VBQ0kscUJBQUE7QW5CbXhCNUI7QW1CanhCNEI7RUFDSSxjdkJqSXJCO0FJbzVCWDtBbUIzd0JvQjtFQUNJLGN2QjFJYjtBSXU1Qlg7O0FvQjE1QkEsaUJBQUE7QUFxQ1k7RUFDSSxhQUFBO0VBQ0Esc0N4QjNCRjtBSW81QmQ7QW9CdjNCZ0I7RUFDSSxVQUFBO0FwQnkzQnBCO0FvQmwzQmdCO0VBQ0ksVUFBQTtBcEJvM0JwQjtBb0JsM0JvQjtFQUNJLGN4QmxEYjtBSXM2Qlg7QW9CbDNCd0I7RUFDSSxZQUFBO0FwQm8zQjVCOztBb0IzMkJBO0VBb0NnQjtJQUNJLHNCQUFBO0VwQjIwQmxCO0VvQnowQmtCO0lBQ0ksV0FBQTtFcEIyMEJ0QjtFb0JwMEJrQjtJQUNJLFdBQUE7RXBCczBCdEI7QUFDRjtBcUJ4N0JBLHlCQUFBO0FBSUE7RUFDSSxtQ3pCT1U7RXlCTlYsb0J6QkdTO0FJbzdCYjtBcUI3NkJvQjtFQUNJLG1CekJSWDtBSXU3QmI7QXFCejZCb0I7RUFDSSxnQkFBQTtFQUNBLHFDekJmWjtBSTA3Qlo7QXFCcjZCb0I7RUFDSSxnQkFBQTtBckJ1NkJ4Qjs7QXFCNzVCSTtFQUNJLGlCQUFBO0FyQmc2QlI7QXFCMTVCZ0I7RUFDSSxrQkFBQTtBckI0NUJwQjtBcUJyNUJnQjtFQUNJLFdBQUE7RUFDQSxrQkFBQTtBckJ1NUJwQjs7QXFCNTRCUTtFQUZKO0lBR1EsY0FBQTtFckJnNUJWO0FBQ0Y7QXNCeDlCQSxtQkFBQSIsImZpbGUiOiJidW5kbGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogZnVuY3Rpb25zLnNjc3MgKi9cblxuQHVzZSAnc2FzczptYXAnOyAvLyDwn5GIIGJyaW5ncyBpbiBtYXAuZ2V0KClcblxuQHVzZSAndmFyaWFibGVzJyBhcyAqO1xuXG5AZnVuY3Rpb24gYnAoJGtleSkge1xuICAgIEByZXR1cm4gbWFwLmdldCgkYnJlYWtwb2ludHMsICRrZXkpO1xuICB9IiwiLyogdmFyaWFibGVzLnNjc3MgKi9cblxuJGZvbnQtY29sb3I6IHdoaXRlO1xuJGFsdC1mb250OiAjYTFhMWExO1xuJHByaW1hcnktY29sb3I6ICMyNDA2QjY7XG4kc2Vjb25kYXJ5LWNvbG9yOiAjMDAwO1xuJHRoZW1lLXJlZDogcmVkO1xuXG4kcGFkLXNtYWxsOiA4cHg7XG4kcGFkLW1lZGl1bTogMTZweDtcbiRwYWQtbGFyZ2U6IGNsYW1wKDE2cHgsIDR2dywgMzJweCk7XG4kcGFkLXhsYXJnZTogY2xhbXAoMjRweCwgNXZ3LCA0MHB4KTtcbiRwYWQteHhsYXJnZTogY2xhbXAoMjRweCwgNnZ3LCA2NHB4KTtcbiRwYWQteHh4bGFyZ2U6IGNsYW1wKDY0cHgsIDEwdncsIDEyOHB4KTtcblxuJGxhcmdlLW1hcmdlOiBjbGFtcCg4MHB4LCAxMnZ3LCAxODBweCk7XG5cbiRicmVha3BvaW50czogKFxuICB4czogMzYwcHgsXG4gIHNtOiA2MDBweCxcbiAgbWQ6IDc2OHB4LFxuICBtZG1sOiA5OTJweCxcbiAgbGc6IDEwMjRweCxcbiAgeGw6IDEyODBweCxcbiAgeHhsOiAxNDQwcHhcbik7IiwiLyogbWl4aW5zLnNjc3MgKi9cblxuQG1peGluIGNsZWFyZml4IHtcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG59XG5cbkBtaXhpbiB0aW50IHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cblxuXG4vLyAgIC5ib3gge1xuLy8gICAgIEBpbmNsdWRlIHBhZCgkcGFkLXNtYWxsKTsgLy8gYWxsIHNpZGVzXG4vLyAgIH1cbiAgXG4vLyAgIC5wYW5lbCB7XG4vLyAgICAgQGluY2x1ZGUgcGFkKCRwYWQtc21hbGwsICRwYWQtbWVkaXVtKTsgLy8gdG9wL2JvdHRvbSwgbGVmdC9yaWdodFxuLy8gICB9IiwiLyogYnJlYWtwb2ludHMuc2NzcyAqL1xuXG4kYnJlYWtwb2ludHM6IChcbiAgeHM6IDQ4MHB4LFxuICBzbTogNjQwcHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDEwMjRweCxcbiAgeGw6IDEyODBweFxuKTtcblxuQG1peGluIHJlc3BvbmQoJGJyZWFrcG9pbnQpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCk7XG4gIEBpZiAkc2l6ZSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzaXplKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gLmhlcm8ge1xuLy8gICAgIHBhZGRpbmc6IDJyZW07XG4gIFxuLy8gICAgIEBpbmNsdWRlIHJlc3BvbmQobWQpIHtcbi8vICAgICAgIHBhZGRpbmc6IDRyZW07XG4vLyAgICAgfVxuLy8gICB9IiwiLyogYW5pbWF0aW9ucy5zY3NzICovXG5cbkB1c2UgXCJhYnN0cmFjdHMvZ2xvYmFsLXZhcnNcIiBhcyAqO1xuXG5Aa2V5ZnJhbWVzIGZhZGVEb3duIHtcbiAgICB0byB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gT3B0aW9uYWwgZ2xvYmFsIGNsYXNzIGlmIHlvdSB3YW50IHV0aWxpdHktc3R5bGUgdXNhZ2VcbiAgLmFuaW1hdGUtZG93biB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwcHgpO1xuICAgIGFuaW1hdGlvbjogZmFkZURvd24gMC44cyBlYXNlLW91dCBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMnM7XG4gIH1cblxuICBAa2V5ZnJhbWVzIGZhZGVVcCB7XG4gICAgdG8ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG4gIH1cblxuICAuYW5pbWF0ZS11cCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCk7XG4gIH1cbiAgXG4gIC8vIE9wdGlvbmFsIGdsb2JhbCBjbGFzcyBpZiB5b3Ugd2FudCB1dGlsaXR5LXN0eWxlIHVzYWdlXG4gIC5hbmltYXRlLXVwLmluLXZpZXcge1xuICAgIGFuaW1hdGlvbjogZmFkZVVwIDAuOHMgZWFzZS1vdXQgZm9yd2FyZHM7XG4gIH1cblxuXG5cbi8vR1NBUCBhbmltYXRpb25cblxuICAuaGVybyAuby1hbmNob3Ige1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAudmlkZW8tcGxhY2Vob2xkZXIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyICogJHBhZC1sYXJnZSk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyICogJHBhZC1sYXJnZSk7XG4gICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC5mbG9hdGluZy12aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyICogJHBhZC1sYXJnZSk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIgKiAkcGFkLWxhcmdlKTtcbiAgICAvL3dpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIHdpZHRoLCBoZWlnaHQ7XG4gIH1cblxuICAuZmxvYXRpbmctdmlkZW8gdmlkZW8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIH1cblxuXG4gIC8qIGFuaW1hdGVkIHRleHQgb24gaGVhZGluZ3MgKi9cblxuICAjYW5pbWF0ZWQtaGVhZGluZyB7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB9XG4gIC53b3JkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTsgLyoga2VlcHMgc3BhY2luZyBiZXR3ZWVuIHdvcmRzICovXG4gIH1cbiAgLmNoYXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICB9XG5cblxuXG4gICIsIi8qIGZ1bmN0aW9ucy5zY3NzICovXG4vKiB2YXJpYWJsZXMuc2NzcyAqL1xuLyogbWl4aW5zLnNjc3MgKi9cbi8qIGJyZWFrcG9pbnRzLnNjc3MgKi9cbi8qIGFuaW1hdGlvbnMuc2NzcyAqL1xuQGtleWZyYW1lcyBmYWRlRG93biB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuLmFuaW1hdGUtZG93biB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCk7XG4gIGFuaW1hdGlvbjogZmFkZURvd24gMC44cyBlYXNlLW91dCBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVVcCB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuLmFuaW1hdGUtdXAge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCk7XG59XG5cbi5hbmltYXRlLXVwLmluLXZpZXcge1xuICBhbmltYXRpb246IGZhZGVVcCAwLjhzIGVhc2Utb3V0IGZvcndhcmRzO1xufVxuXG4uaGVybyAuby1hbmNob3Ige1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnZpZGVvLXBsYWNlaG9sZGVyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDIgKiBjbGFtcCgxNnB4LCA0dncsIDMycHgpKTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyICogY2xhbXAoMTZweCwgNHZ3LCAzMnB4KSk7XG4gIGFzcGVjdC1yYXRpbzogNC8zO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uZmxvYXRpbmctdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMiAqIGNsYW1wKDE2cHgsIDR2dywgMzJweCkpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMiAqIGNsYW1wKDE2cHgsIDR2dywgMzJweCkpO1xufVxuXG4uZmxvYXRpbmctdmlkZW8gdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuXG4vKiBhbmltYXRlZCB0ZXh0IG9uIGhlYWRpbmdzICovXG4jYW5pbWF0ZWQtaGVhZGluZyB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLndvcmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1yaWdodDogMC4yNWVtOyAvKiBrZWVwcyBzcGFjaW5nIGJldHdlZW4gd29yZHMgKi9cbn1cblxuLmNoYXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG59XG5cbi8qQmFzZS5zY3NzKi9cbiosXG4qOjphZnRlcixcbio6OmJlZm9yZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi50ZW5jLWltYWdlLCAudGVuYy12aWRlbyB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwibW9kZXJhdFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL21vZGVyYXQtYm9sZC1pdGFsaWMtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvbW9kZXJhdC1ib2xkLWl0YWxpYy13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vZGVyYXRcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9tb2RlcmF0LWJvbGQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvbW9kZXJhdC1ib2xkLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwibW9kZXJhdFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL21vZGVyYXQtcmVndWxhci1pdGFsaWMtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvbW9kZXJhdC1yZWd1bGFyLWl0YWxpYy13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vZGVyYXRcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9tb2RlcmF0LXJlZ3VsYXItd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvbW9kZXJhdC1yZWd1bGFyLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG46cm9vdCB7XG4gIC0tYWxnc3QtYmxvY2stZWRpdG9yLWJvcmRlcjogc29saWQgMnB4ICNmMGYwZjA7XG4gIC0tYWxnc3QtYmxvY2stZWRpdG9yLXBhZGRpbmc6IDJweDtcbn1cblxuLyogV2hpdGUgdGhlbWUgb3ZlcnJpZGUgKi9cbi5iYWNrZ3JvdW5kLS13aGl0ZSB7XG4gIC0tYmxvY2stYmctY29sb3I6ICNmZmZmZmY7XG4gIC0tYmxvY2stY29sLWNvbG9yOiAjZjhmOGY4O1xufVxuXG4vKiBHcmF5IHRoZW1lIG92ZXJyaWRlICovXG4uYmFja2dyb3VuZC0tZ3JleSB7XG4gIC0tYmxvY2stYmctY29sb3I6ICNmOGY4Zjg7XG4gIC0tYmxvY2stY29sLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uRy10aXRsZS13cmFwcGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4vKiBDU1MgOnJvb3QgdmFyaWFibGVzICovXG4vKnR5cG9ncmFwaHkuc2NzcyovXG5ib2R5IHtcbiAgY29sb3I6ICNmYWZhZmE7XG4gIGZvbnQtZmFtaWx5OiBcIm1vZGVyYXRcIiwgc2Fucy1zZXJpZjtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDcuNXB4O1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogY2xhbXAoNC44cmVtLCA4dncsIDgwcmVtKTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5oMS5wb3J0LWl0ZW0tdGl0bGUge1xuICBmb250LXNpemU6IGNsYW1wKDZyZW0sIDV2dywgNy4ycmVtKTtcbn1cbmgxLmhvbWUtaDEge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiBjbGFtcCg2cmVtLCA4dncsIDYwcmVtKTtcbn1cbmgxLmgxLTQwNC10ZXh0IHtcbiAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCAzdncsIDMuMnJlbSk7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiBjbGFtcCg0cmVtLCA1dncsIDIwcmVtKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5oMi53Yi13aWRlLXNlY3Rpb24taGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IC01cHg7XG59XG5oMi5zZXJ2aWNlLXRpdGxlIHtcbiAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCAzdncsIDMuMnJlbSk7XG59XG5oMi5wb3J0LWl0ZW0tc3VidGl0bGUge1xuICBmb250LXNpemU6IGNsYW1wKDNyZW0sIDN2dywgNC4zcmVtKTtcbiAgY29sb3I6ICNhMWExYTE7XG59XG5oMi5zZXJ2aWNlLXN0YWdlcy10aXRsZSB7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMy41cmVtLCAzdncsIDIwcmVtKTtcbn1cbmgyLnRpZ2h0LXRlYW0ge1xuICBmb250LXNpemU6IGNsYW1wKDNyZW0sIDR2dywgNjByZW0pO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgM3Z3LCAyMHJlbSk7XG59XG5oMy50aXRsZSB7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS41cmVtLCAydncsIDJyZW0pO1xufVxuaDMuc2VydmljZS1zdWJ0aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4xNnB4O1xuICBmb250LXNpemU6IDIuNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xufVxuaDMuc3RhZ2VzLXN1YnRpdGxlIHtcbiAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCAzdncsIDMuMnJlbSk7XG59XG5oMy5jb250YWN0LWRldGFpbHMtdGVsZW1haWwge1xuICBmb250LXNpemU6IGNsYW1wKDIuMnJlbSwgM3Z3LCAyLjRyZW0pO1xufVxuaDMuY29udGFjdC1kZXRhaWxzLXRlbGVtYWlsIGEge1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMTZweDtcbiAgZm9udC1zaXplOiBjbGFtcCgyLjJyZW0sIDN2dywgMi40cmVtKTtcbiAgbGluZS1oZWlnaHQ6IDEuNGVtO1xufVxuaDMucXVvdGUtdGV4dCB7XG4gIGZvbnQtc2l6ZTogY2xhbXAoM3JlbSwgM3Z3LCAzLjJyZW0pO1xufVxuXG5wIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbnAuc2lkZS10aXRsZSB7XG4gIGNvbG9yOiAjYTFhMWExO1xufVxucC5zdXBlci1sYXJnZS10ZXh0IHtcbiAgZm9udC1zaXplOiBjbGFtcCgxMHJlbSwgMTJ2dywgNjByZW0pO1xuICBsaW5lLWhlaWdodDogMWVtO1xufVxucC5zZXJ2aWNlLWRlc2NyaXB0aW9uIHtcbiAgY29sb3I6ICNhMWExYTE7XG59XG5wLnBvcnQtaXRlbS1jYXRlZ29yaWVzIHtcbiAgY29sb3I6ICNhMWExYTE7XG59XG5wLnN1cGVyLXNtYWxsLXRleHQge1xuICBmb250LXNpemU6IGNsYW1wKDEuNHJlbSwgMS41dncsIDEuNnJlbSk7XG59XG5wLnBvcnRmb2xpby10aXRsZSwgcC5wb3J0Zm9saW8teWVhciwgcC50ZWFtLXRpdGxlLCBwLnRlYW0tam9iIHtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xufVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG59XG5saS5sZWFkLXRleHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5hLCBhOnZpc2l0ZWQge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS42cmVtLCAxLjV2dywgMS44cmVtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hOmhvdmVyLCBhOmFjdGl2ZSwgYTpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHdoaXRlO1xuICBvcGFjaXR5OiAwLjg1O1xufVxuXG4vKiB1dGlsaXRpZXMuc2NzcyAqL1xuLyogYnV0dG9uLnNjc3MgKi9cbi5idXR0b24td3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG4uYnV0dG9uLXdyYXBwZXIgLmJ1dHRvbl9jdXN0b20ge1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gIGJvcmRlcjogc29saWQgMXB4IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5idXR0b25fY3VzdG9tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5idXR0b25fY3VzdG9tIC5idXR0b24tdGV4dC13cmFwLCAuYnV0dG9uX2N1c3RvbSAuYnV0dG9uLWFycm93LXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYnV0dG9uX2N1c3RvbSAuYnV0dG9uLXRleHQtd3JhcCAuYnV0dG9uLXRleHQsIC5idXR0b25fY3VzdG9tIC5idXR0b24tdGV4dC13cmFwIC5idXR0b24tYXJyb3csIC5idXR0b25fY3VzdG9tIC5idXR0b24tdGV4dC13cmFwIC5idXR0b24taG92ZXItdGV4dCwgLmJ1dHRvbl9jdXN0b20gLmJ1dHRvbi10ZXh0LXdyYXAgLmJ1dHRvbi1ob3Zlci1hcnJvdywgLmJ1dHRvbl9jdXN0b20gLmJ1dHRvbi1hcnJvdy13cmFwIC5idXR0b24tdGV4dCwgLmJ1dHRvbl9jdXN0b20gLmJ1dHRvbi1hcnJvdy13cmFwIC5idXR0b24tYXJyb3csIC5idXR0b25fY3VzdG9tIC5idXR0b24tYXJyb3ctd3JhcCAuYnV0dG9uLWhvdmVyLXRleHQsIC5idXR0b25fY3VzdG9tIC5idXR0b24tYXJyb3ctd3JhcCAuYnV0dG9uLWhvdmVyLWFycm93IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBlYXNlO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuLmJ1dHRvbl9jdXN0b20gLmJ1dHRvbi10ZXh0LXdyYXAgLmJ1dHRvbi1ob3Zlci10ZXh0LCAuYnV0dG9uX2N1c3RvbSAuYnV0dG9uLXRleHQtd3JhcCAuYnV0dG9uLWhvdmVyLWFycm93LCAuYnV0dG9uX2N1c3RvbSAuYnV0dG9uLWFycm93LXdyYXAgLmJ1dHRvbi1ob3Zlci10ZXh0LCAuYnV0dG9uX2N1c3RvbSAuYnV0dG9uLWFycm93LXdyYXAgLmJ1dHRvbi1ob3Zlci1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5idXR0b25fY3VzdG9tIC5idXR0b24tdGV4dC13cmFwLmlzLWFuaW1hdGVkIC5idXR0b24tdGV4dCwgLmJ1dHRvbl9jdXN0b20gLmJ1dHRvbi10ZXh0LXdyYXAuaXMtYW5pbWF0ZWQgLmJ1dHRvbi1hcnJvdywgLmJ1dHRvbl9jdXN0b20gLmJ1dHRvbi1hcnJvdy13cmFwLmlzLWFuaW1hdGVkIC5idXR0b24tdGV4dCwgLmJ1dHRvbl9jdXN0b20gLmJ1dHRvbi1hcnJvdy13cmFwLmlzLWFuaW1hdGVkIC5idXR0b24tYXJyb3cge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuLmJ1dHRvbl9jdXN0b20gLmJ1dHRvbi10ZXh0LXdyYXAuaXMtYW5pbWF0ZWQgLmJ1dHRvbi1ob3Zlci10ZXh0LCAuYnV0dG9uX2N1c3RvbSAuYnV0dG9uLXRleHQtd3JhcC5pcy1hbmltYXRlZCAuYnV0dG9uLWhvdmVyLWFycm93LCAuYnV0dG9uX2N1c3RvbSAuYnV0dG9uLWFycm93LXdyYXAuaXMtYW5pbWF0ZWQgLmJ1dHRvbi1ob3Zlci10ZXh0LCAuYnV0dG9uX2N1c3RvbSAuYnV0dG9uLWFycm93LXdyYXAuaXMtYW5pbWF0ZWQgLmJ1dHRvbi1ob3Zlci1hcnJvdyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG5cbkBrZXlmcmFtZXMgZmxpY2tVcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbn1cbi8qIGNhcm91c2VsLnNjc3MgKi9cbi53cGNmNyAud3BjZjctZm9ybSBwIC53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCBpbnB1dCwgLndwY2Y3IC53cGNmNy1mb3JtIHAgLndwY2Y3LWZvcm0tY29udHJvbC13cmFwIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogc29saWQgMXB4IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggYmxhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tYm90dG9tOiAyJTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLndwY2Y3IC53cGNmNy1mb3JtIHAgLndwY2Y3LWZvcm0tY29udHJvbC13cmFwIGlucHV0OjpwbGFjZWhvbGRlciwgLndwY2Y3IC53cGNmNy1mb3JtIHAgLndwY2Y3LWZvcm0tY29udHJvbC13cmFwIHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBibGFjaztcbn1cbi53cGNmNyAud3BjZjctZm9ybSBwIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGJvcmRlcjogc29saWQgMXB4ICNmMGYwZjA7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIHBhZGRpbmc6IDVweCAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4vKiBTbGlkZXIuc2NzcyAqL1xuLyogZ2xvYmFsLWhlYWRpbmcuc2NzcyAqL1xuLnRlbmMtZ2xvYmFsLWhlYWRlci1zMS13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctYm90dG9tOiBjbGFtcCg4MHB4LCAxMnZ3LCAxODBweCk7XG59XG4udGVuYy1nbG9iYWwtaGVhZGVyLXMxLXdyYXBwZXIuY29udGFjdC1wYWdlIHtcbiAgcGFkZGluZy1ib3R0b206IGNsYW1wKDI0cHgsIDZ2dywgNjRweCk7XG59XG4udGVuYy1nbG9iYWwtaGVhZGVyLXMxLXdyYXBwZXIgLnRlbmMtdGVuYy1nbG9iYWwtaGVhZGVyLXMxLWdyaWQtd3JhcHBlciAudGVuYy1nbG9iYWwtaGVhZGVyLXMxLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRlbmMtdGl0bGUtd3JhcHBlciB7XG4gIG1heC13aWR0aDogOTAlO1xufVxuLnRlbmMtZ2xvYmFsLWhlYWRlci1zMS13cmFwcGVyIC50ZW5jLXRlbmMtZ2xvYmFsLWhlYWRlci1zMS1ncmlkLXdyYXBwZXIgLnRlbmMtZ2xvYmFsLWhlYWRlci1zMS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC50ZW5jLXRpdGxlLXdyYXBwZXIgaDEge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi50ZW5jLWdsb2JhbC1oZWFkZXItczEtd3JhcHBlciAudGVuYy10ZW5jLWdsb2JhbC1oZWFkZXItczEtZ3JpZC13cmFwcGVyIC50ZW5jLWdsb2JhbC1oZWFkZXItczEtZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAudGVuYy10aXRsZS13cmFwcGVyIGgxIC53b3JkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLnRlbmMtZ2xvYmFsLWhlYWRlci1zMS13cmFwcGVyIC50ZW5jLXRlbmMtZ2xvYmFsLWhlYWRlci1zMS1ncmlkLXdyYXBwZXIgLnRlbmMtZ2xvYmFsLWhlYWRlci1zMS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC50ZW5jLXRpdGxlLXdyYXBwZXIgaDEgLndvcmQgLmNoYXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udGVuYy1nbG9iYWwtaGVhZGVyLXMxLXdyYXBwZXIgLnRlbmMtdGVuYy1nbG9iYWwtaGVhZGVyLXMxLWdyaWQtd3JhcHBlciAudGVuYy1nbG9iYWwtaGVhZGVyLXMxLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRlbmMtdGl0bGUtd3JhcHBlciBoMSAud29yZCAuY2hhci5oeXBoZW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qIEJyYW5kcy1idWlsdC5zY3NzICovXG4uYnJhbmRzLXdyYXBwZXIgLnRlbmMtYnJhbmRzLWdyaWQtd3JhcHBlcjIge1xuICBnYXA6IDEycHggIWltcG9ydGFudDtcbn1cbi5icmFuZHMtd3JhcHBlciAudGVuYy1icmFuZHMtZ3JpZC13cmFwcGVyMiAuYnJhbmRzLWdyaWQtaXRlbTIge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4uYnJhbmRzLXdyYXBwZXIgLnRlbmMtYnJhbmRzLWdyaWQtd3JhcHBlcjIgLmJyYW5kcy1ncmlkLWl0ZW0yIC5sb2dvLXdyYXBwZXIgLmNsaWVudC1sb2dvIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjgwcHgpIHtcbiAgLmJyYW5kcy13cmFwcGVyIC50ZW5jLWJyYW5kcy1ncmlkLXdyYXBwZXIyLmFsZ3N0LWdyaWQuYWxnc3QtY29scy02IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5icmFuZHMtd3JhcHBlciAudGVuYy1icmFuZHMtZ3JpZC13cmFwcGVyMi5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5icmFuZHMtd3JhcHBlciAudGVuYy1icmFuZHMtZ3JpZC13cmFwcGVyMi5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgfVxuICAuYnJhbmRzLXdyYXBwZXIgLnRlbmMtYnJhbmRzLWdyaWQtd3JhcHBlcjIuYWxnc3QtZ3JpZCB7XG4gICAgcGFkZGluZzogMHB4IDA7XG4gICAgZ2FwOiAxMnB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbiAgLmJyYW5kcy13cmFwcGVyIC50ZW5jLWJyYW5kcy1ncmlkLXdyYXBwZXIyLmFsZ3N0LWdyaWQgLmJyYW5kcy1ncmlkLWl0ZW0yIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4vKiB0ZWFtLnNjc3MgKi9cbi50ZWFtLXdyYXBwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoODBweCwgMTJ2dywgMTgwcHgpO1xufVxuLnRlYW0td3JhcHBlciAudGVhbS1ncmlkLXdyYXBwZXIgLnRlYW0tZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuaW1hZ2Utd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4udGVhbS13cmFwcGVyIC50ZWFtLWdyaWQtd3JhcHBlciAudGVhbS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC5pbWFnZS13cmFwcGVyIC50ZW5jLWltYWdlIHtcbiAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IHRvcDtcbn1cbi50ZWFtLXdyYXBwZXIgLnRlYW0tZ3JpZC13cmFwcGVyIC50ZWFtLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRleHQtd3JhcHBlciAudGVhbS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4udGVhbS13cmFwcGVyIC50ZWFtLWdyaWQtd3JhcHBlciAudGVhbS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC50ZXh0LXdyYXBwZXIgLnRlYW0tam9iIHtcbiAgY29sb3I6ICNhMWExYTE7XG59XG5cbi8qIHF1b3RlLXNlY3Rpb24uc2NzcyAqL1xuLnF1b3RlLW91dGVyLXdyYXBwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoODBweCwgMTJ2dywgMTgwcHgpO1xufVxuLnF1b3RlLW91dGVyLXdyYXBwZXIgLnF1b3RlLWdyaWQtd3JhcHBlciAucXVvdGUtZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI2ExYTFhMTtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuLnF1b3RlLW91dGVyLXdyYXBwZXIgLnF1b3RlLWdyaWQtd3JhcHBlciAucXVvdGUtZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAucXVvdGVyLXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuLnF1b3RlLW91dGVyLXdyYXBwZXIgLnF1b3RlLWdyaWQtd3JhcHBlciAucXVvdGUtZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAucXVvdGVyLXdyYXBwZXIgLnRlYW0tdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnF1b3RlLW91dGVyLXdyYXBwZXIgLnF1b3RlLWdyaWQtd3JhcHBlciAucXVvdGUtZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAucXVvdGVyLXdyYXBwZXIgLnRlYW0teWVhciB7XG4gIGNvbG9yOiAjYTFhMWExO1xuICBsaW5lLWhlaWdodDogMS4zZW07XG59XG4vKiBHcmlkIGJhc2UgKi9cbi5hbGdzdC13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IGNsYW1wKDE2cHgsIDR2dywgMzJweCk7XG4gIHBhZGRpbmctcmlnaHQ6IGNsYW1wKDE2cHgsIDR2dywgMzJweCk7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDMwcHggMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAyNHB4O1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDMyMHB4LCAxZnIpKTtcbn1cbi5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmNvbnRhaW5lZC1ncmlkIHtcbiAgbWF4LXdpZHRoOiAxMjgwcHg7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5zcGVjaWFsLWdyaWQge1xuICBtYXgtd2lkdGg6IDE4MDBweDtcbn1cbi5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtMiB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTMge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy00IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbn1cbi5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTYge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy03IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcbn1cbi5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtOCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDgsIDFmcik7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTkge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg5LCAxZnIpO1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy0xMCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEwLCAxZnIpO1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy0xMSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDExLCAxZnIpO1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy0xMiB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWNvbCB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtY29sLmNvbC1zcGFuLTEge1xuICBncmlkLWNvbHVtbjogc3BhbiAxO1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWNvbC5jb2wtc3Bhbi0yIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbn1cbi5hbGdzdC13cmFwcGVyIC5hbGdzdC1jb2wuY29sLXNwYW4tMyB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDM7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtY29sLmNvbC1zcGFuLTQge1xuICBncmlkLWNvbHVtbjogc3BhbiA0O1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWNvbC5jb2wtc3Bhbi01IHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbn1cbi5hbGdzdC13cmFwcGVyIC5hbGdzdC1jb2wuY29sLXNwYW4tNiB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDY7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtY29sLmNvbC1zcGFuLTcge1xuICBncmlkLWNvbHVtbjogc3BhbiA3O1xufVxuLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWNvbC5jb2wtc3Bhbi04IHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbn1cbi5hbGdzdC13cmFwcGVyIC5hbGdzdC1jb2wuY29sLXNwYW4tOSB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDk7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtY29sLmNvbC1zcGFuLTEwIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTA7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtY29sLmNvbC1zcGFuLTExIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTE7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtY29sLmNvbC1zcGFuLTEyIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG59XG4uYWxnc3Qtd3JhcHBlciAuYWxnc3QtY29sLmNvbC1mdWxsIHtcbiAgZ3JpZC1jb2x1bW46IDEvLTE7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjgwcHgpIHtcbiAgLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtMiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtMyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtOCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtOSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtMTAge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgfVxuICAuYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTExIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cbiAgLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy0xMiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtMiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy0zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxuICAuYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy02IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxuICAuYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTcge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtOCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQuYWxnc3QtY29scy05IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxuICAuYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTEwIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxuICAuYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTExIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxuICAuYWxnc3Qtd3JhcHBlciAuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTEyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxufVxuLyogRm9vdGVyICovXG4udGVuYy1mb290ZXItd3JhcHBlci13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IGNsYW1wKDgwcHgsIDEydncsIDE4MHB4KTtcbn1cbi50ZW5jLWZvb3Rlci13cmFwcGVyLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC13cmFwcGVyIC50ZW5jLWZvb3Rlci13cmFwcGVyLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRlbmMtdGl0bGUtd3JhcHBlciB7XG4gIHBhZGRpbmctYm90dG9tOiBjbGFtcCgxNnB4LCA0dncsIDMycHgpO1xufVxuLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQtd3JhcHBlciB7XG4gIHBhZGRpbmctYm90dG9tOiBjbGFtcCg2NHB4LCAxMHZ3LCAxMjhweCk7XG59XG4udGVuYy1mb290ZXItd3JhcHBlci13cmFwcGVyIC50ZW5jLWZvb3Rlci13cmFwcGVyLWdyaWQtd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC5mb290ZXItZ3JpZC13cmFwcGVyIC5mb290ZXItZ3JpZC1pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQtd3JhcHBlciAuZm9vdGVyLWdyaWQtaXRlbSAudGVuYy1pbm5lci1jb250ZW50LXdyYXBwZXIgcCB7XG4gIGNvbG9yOiAjYTFhMWExO1xufVxuLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQtd3JhcHBlciAuZm9vdGVyLWdyaWQtaXRlbSAudGVuYy1pbm5lci1jb250ZW50LXdyYXBwZXIgcCBhIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQtd3JhcHBlciAuZm9vdGVyLWdyaWQtaXRlbSAudGVuYy1pbm5lci1jb250ZW50LXdyYXBwZXIgcCBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44NTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAudGVuYy1mb290ZXItd3JhcHBlci13cmFwcGVyIC50ZW5jLWZvb3Rlci13cmFwcGVyLWdyaWQtd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC5mb290ZXItZ3JpZDItd3JhcHBlci5hbGdzdC1jb2xzLTYge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgfVxufVxuLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQyLXdyYXBwZXIgLmZvb3Rlci1ncmlkMi1pdGVtIC50ZW5jLWxvZ28td3JhcHBlciAudGVuYy1sb2dvIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbn1cbi50ZW5jLWZvb3Rlci13cmFwcGVyLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC13cmFwcGVyIC50ZW5jLWZvb3Rlci13cmFwcGVyLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1ncmlkMi13cmFwcGVyIC5mb290ZXItZ3JpZDItaXRlbSAudGVuYy1sb2dvLXdyYXBwZXIgLnRlbmMtbG9nby50ZW5jLWNvbXBhbnktbG9nbyB7XG4gIGhlaWdodDogNjVweDtcbn1cbi50ZW5jLWZvb3Rlci13cmFwcGVyLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC13cmFwcGVyIC50ZW5jLWZvb3Rlci13cmFwcGVyLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLmZvb3Rlci1ncmlkMi13cmFwcGVyIC5mb290ZXItZ3JpZDItaXRlbSAudGVuYy1sb2dvLXdyYXBwZXIgLnRlbmMtbG9nby5iLWNvcnAtbG9nbyB7XG4gIGhlaWdodDogNjIuNXB4O1xufVxuXG4vKiBhZGRpdGlvbmFsIGNzcyAqL1xuLyogOHRoIFNlcHRlbWJlciAyMDI2ICovXG4udGVuYy1mb290ZXItd3JhcHBlci13cmFwcGVyIC50ZW5jLWZvb3Rlci13cmFwcGVyLWdyaWQtd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC5mb290ZXItZ3JpZDItd3JhcHBlciAuZm9vdGVyLWdyaWQyLWl0ZW0gLnRlbmMtbG9nby13cmFwcGVyIC50ZW5jLWxvZ28uYi1jb3JwLWxvZ28ge1xuICBoZWlnaHQ6IDYyLjVweDtcbn1cblxuLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQyLXdyYXBwZXIgLmZvb3Rlci1ncmlkMi1pdGVtIC50ZW5jLWxvZ28td3JhcHBlciAudGVuYy1sb2dvLnRlbmMtY29tcGFueS1sb2dvIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiA2NXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQyLXdyYXBwZXIuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTYge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgfVxufVxuLyogTGF5b3V0ICovXG4udGVuYy1zaXRlLWhlYWRlciB7XG4gIHBhZGRpbmc6IGNsYW1wKDE2cHgsIDR2dywgMzJweCk7XG59XG4udGVuYy1zaXRlLWhlYWRlciAudGVuYy1uYXYtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnRlbmMtc2l0ZS1oZWFkZXIgLnRlbmMtbmF2LWNvbnRhaW5lciAudGVuYy1uYXYtbG9nby13cmFwcGVyIC50ZW5jLW5hdi1sb2dvLWxpbms6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLnRlbmMtc2l0ZS1oZWFkZXIgLnRlbmMtbmF2LWNvbnRhaW5lciAudGVuYy1uYXYtbG9nby13cmFwcGVyIC50ZW5jLW5hdi1sb2dvLWxpbmsgLnRlbmMtbmF2LWxvZ28ge1xuICBtYXgtd2lkdGg6IDEwMHB4O1xufVxuLnRlbmMtc2l0ZS1oZWFkZXIgLnRlbmMtbmF2LWNvbnRhaW5lciAudGVuYy1tYWluLW5hdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogOTk5OTtcbn1cbi50ZW5jLXNpdGUtaGVhZGVyIC50ZW5jLW5hdi1jb250YWluZXIgLnRlbmMtbWFpbi1uYXYgLnRlbmMtbWVudS10b2dnbGUge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udGVuYy1zaXRlLWhlYWRlciAudGVuYy1uYXYtY29udGFpbmVyIC50ZW5jLW1haW4tbmF2IC50ZW5jLW5hdi1saW5rcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMnJlbTtcbiAgei1pbmRleDogOTk5OTtcbn1cbi50ZW5jLXNpdGUtaGVhZGVyIC50ZW5jLW5hdi1jb250YWluZXIgLnRlbmMtbWFpbi1uYXYgLnRlbmMtbmF2LWxpbmtzIC50ZW5jLW5hdi1pdGVtIGEuYWN0aXZlLCAudGVuYy1zaXRlLWhlYWRlciAudGVuYy1uYXYtY29udGFpbmVyIC50ZW5jLW1haW4tbmF2IC50ZW5jLW5hdi1saW5rcyAudGVuYy1uYXYtaXRlbSBhOmhvdmVyIHtcbiAgY29sb3I6ICNhMWExYTE7XG4gIG9wYWNpdHk6IDE7XG59XG4udGVuYy1zaXRlLWhlYWRlciAudGVuYy1uYXYtY29udGFpbmVyIC50ZW5jLW1haW4tbmF2IC50ZW5jLW5hdi1saW5rcyAudGVuYy1uYXYtaXRlbSBhIC5uYXYtbGluay10ZXh0LXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udGVuYy1zaXRlLWhlYWRlciAudGVuYy1uYXYtY29udGFpbmVyIC50ZW5jLW1haW4tbmF2IC50ZW5jLW5hdi1saW5rcyAudGVuYy1uYXYtaXRlbSBhIC5uYXYtbGluay10ZXh0LXdyYXAgLm5hdi1saW5rLXRleHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBlYXNlO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuLnRlbmMtc2l0ZS1oZWFkZXIgLnRlbmMtbmF2LWNvbnRhaW5lciAudGVuYy1tYWluLW5hdiAudGVuYy1uYXYtbGlua3MgLnRlbmMtbmF2LWl0ZW0gYSAubmF2LWxpbmstdGV4dC13cmFwIC5uYXYtbGluay10ZXh0Lm5hdi1saW5rLWhvdmVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTEwMCU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRlbmMtc2l0ZS1oZWFkZXIgLnRlbmMtbmF2LWNvbnRhaW5lciAudGVuYy1tYWluLW5hdiAudGVuYy1uYXYtbGlua3MgLnRlbmMtbmF2LWl0ZW0gYSAubmF2LWxpbmstdGV4dC13cmFwLmlzLWFuaW1hdGVkIC5uYXYtbGluay10ZXh0IHtcbiAgYW5pbWF0aW9uOiBmbGlja1VwIDAuNHMgZWFzZSBmb3J3YXJkcztcbn1cbkBrZXlmcmFtZXMgZmxpY2tVcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbn1cbi8qIE1vYmlsZSBTdHlsZXMgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAudGVuYy1uYXYtaXRlbSBhLCAudGVuYy1tZW51LXRvZ2dsZSBhIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgfVxuICAudGVuYy1zaXRlLWhlYWRlciAudGVuYy1uYXYtY29udGFpbmVyIC50ZW5jLW1haW4tbmF2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgfVxuICAudGVuYy1zaXRlLWhlYWRlciAudGVuYy1uYXYtY29udGFpbmVyIC50ZW5jLW1haW4tbmF2IC50ZW5jLW1lbnUtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAudGVuYy1zaXRlLWhlYWRlciAudGVuYy1uYXYtY29udGFpbmVyIC50ZW5jLW1haW4tbmF2IC50ZW5jLW5hdi1saW5rcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMi41cmVtO1xuICAgIHJpZ2h0OiAtMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZ2FwOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC50ZW5jLXNpdGUtaGVhZGVyIC50ZW5jLW5hdi1jb250YWluZXIgLnRlbmMtbWFpbi1uYXYgLnRlbmMtbmF2LWxpbmtzLm9wZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLnRlbmMtc2l0ZS1oZWFkZXIgLnRlbmMtbmF2LWNvbnRhaW5lciAudGVuYy1tYWluLW5hdiAudGVuYy1uYXYtbGlua3MgLnRlbmMtbmF2LWl0ZW0gYSAubmF2LWxpbmstdGV4dC13cmFwLmlzLWFuaW1hdGVkIC5uYXYtbGluay10ZXh0IHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbiAgLnRlbmMtc2l0ZS1oZWFkZXIgLnRlbmMtbmF2LWNvbnRhaW5lciAudGVuYy1tYWluLW5hdiAudGVuYy1uYXYtbGlua3MgLnRlbmMtbmF2LWl0ZW0gYSAubmF2LWxpbmstdGV4dC13cmFwLmlzLWFuaW1hdGVkIC5uYXYtbGluay1ob3Zlci10ZXh0IHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cbi8qIGhvbWUuc2NzcyAqL1xuLypcbi5ob21lLWhlcm8tc2VjdGlvbi13cmFwcGVyIHtcblxuICAgICYgLnRlbmMtaG9tZS1oZXJvLWdyaWQtd3JhcHBlciB7XG5cbiAgICAgICAgJiAuaG9tZS1oZXJvLWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtY29udGVudC13cmFwcGVyIHtcblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuICAgICovXG4uaG9tZS1oZXJvLXNlY3Rpb24td3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbn1cbi5ob21lLWhlcm8yLXNlY3Rpb24td3JhcHBlciB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xufVxuLmhvbWUtaGVybzItc2VjdGlvbi13cmFwcGVyIC50ZW5jLWhvbWUtaGVybzItZ3JpZC13cmFwcGVyIC5ob21lLWhlcm8yLWdyaWQtaXRlbSAudGVuYy12aWQtZW1iZWQtd3JhcHBlciAudGVuYy1oZXJvLXZpZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG59XG5cbi5ob21lLXMyLXdyYXBwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoODBweCwgMTJ2dywgMTgwcHgpO1xufVxuLmhvbWUtczItd3JhcHBlciAudGVuYy1ob21lLXMyLWdyaWQtd3JhcHBlciAuaG9tZS1zMi1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC5idXR0b24td3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDkwcHg7XG59XG5cbi8qIFBvcnRmb2xpby5zY3NzICovXG4ucG9ydGZvbGlvLXMxLXdyYXBwZXIgLnRlbmMtcG9ydGZvbGlvLXMxLWdyaWQtd3JhcHBlciB7XG4gIGdhcDogOHB4O1xufVxuLnBvcnRmb2xpby1zMS13cmFwcGVyIC50ZW5jLXBvcnRmb2xpby1zMS1ncmlkLXdyYXBwZXIgLnBvcnRmb2xpby1zMS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIGEgLmltYWdlLXdyYXBwZXIge1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGFzcGVjdC1yYXRpbzogNzk3LzQ0ODtcbn1cbi5wb3J0Zm9saW8tczEtd3JhcHBlciAudGVuYy1wb3J0Zm9saW8tczEtZ3JpZC13cmFwcGVyIC5wb3J0Zm9saW8tczEtZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciBhIC5pbWFnZS13cmFwcGVyIC50ZW5jLWltYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLnBvcnRmb2xpby1zMS13cmFwcGVyIC50ZW5jLXBvcnRmb2xpby1zMS1ncmlkLXdyYXBwZXIgLnBvcnRmb2xpby1zMS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIGEgLmltYWdlLXdyYXBwZXIgLnRlbmMtaW1hZ2U6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xufVxuLnBvcnRmb2xpby1zMS13cmFwcGVyIC50ZW5jLXBvcnRmb2xpby1zMS1ncmlkLXdyYXBwZXIgLnBvcnRmb2xpby1zMS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIGEgLnRleHQtd3JhcHBlciAucG9ydGZvbGlvLXRpdGxlIHtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbn1cbi5wb3J0Zm9saW8tczEtd3JhcHBlciAudGVuYy1wb3J0Zm9saW8tczEtZ3JpZC13cmFwcGVyIC5wb3J0Zm9saW8tczEtZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciBhIC50ZXh0LXdyYXBwZXIgLnBvcnRmb2xpby15ZWFyIHtcbiAgY29sb3I6ICNhMWExYTE7XG59XG5cbi8qIGFib3V0LnNjc3MgKi9cbi5hYm91dC1zMi13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogY2xhbXAoODBweCwgMTJ2dywgMTgwcHgpO1xufVxuLmFib3V0LXMyLXdyYXBwZXIgLnRlbmMtYWJvdXQtczItZ3JpZC13cmFwcGVyIHtcbiAgcGFkZGluZy1ib3R0b206IGNsYW1wKDI0cHgsIDZ2dywgNjRweCk7XG59XG4uYWJvdXQtczItd3JhcHBlciAudGVuYy1hYm91dC1zMi1ncmlkLXdyYXBwZXIgLmFib3V0LXMyLWdyaWQtaXRlbS5sZWZ0LWNvbCB7XG4gIG1heC13aWR0aDogMzUwcHg7XG59XG4uYWJvdXQtczItd3JhcHBlciAudGVuYy1hYm91dC1zMi1ncmlkLXdyYXBwZXIgLmFib3V0LXMyLWdyaWQtaXRlbS5sZWZ0LWNvbCAudGVuYy1jb250ZW50LXdyYXBwZXIgcCB7XG4gIGNvbG9yOiAjYTFhMWExO1xufVxuLmFib3V0LXMyLXdyYXBwZXIgLnRlbmMtYWJvdXQtczItZ3JpZC13cmFwcGVyIC5hYm91dC1zMi1ncmlkLWl0ZW0ucmlnaHQtY29sIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG4gIG1heC13aWR0aDogOTAlO1xufVxuLyogc2VydmljZXMuc2NzcyAqL1xuLnNlcnZpY2VzLXMyLXdyYXBwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogY2xhbXAoODBweCwgMTJ2dywgMTgwcHgpO1xufVxuLnNlcnZpY2VzLXMyLXdyYXBwZXIgLnRlbmMtc2VydmljZXMtczItZ3JpZC13cmFwcGVyIC5zZXJ2aWNlcy1zMi1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC5pbWFnZS13cmFwcGVyIC50ZW5jLWljb24ge1xuICB3aWR0aDogMTEzcHg7XG59XG4uc2VydmljZXMtczItd3JhcHBlciAudGVuYy1zZXJ2aWNlcy1zMi1ncmlkLXdyYXBwZXIgLnNlcnZpY2VzLXMyLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRleHQtd3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuICBtYXgtd2lkdGg6IDUwMHB4O1xufVxuLnNlcnZpY2VzLXMyLXdyYXBwZXIgLnRlbmMtc2VydmljZXMtczItZ3JpZC13cmFwcGVyIC5zZXJ2aWNlcy1zMi1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC50ZXh0LXdyYXBwZXIgLnNlcnZpY2Utc3VidGl0bGUge1xuICBwYWRkaW5nLXRvcDogMTZweDtcbn1cbi5zZXJ2aWNlcy1zMi13cmFwcGVyIC50ZW5jLXNlcnZpY2VzLXMyLWdyaWQtd3JhcHBlciAuc2VydmljZXMtczItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAudGV4dC13cmFwcGVyIC5zZXJ2aWNlLWRlc2NyaXB0aW9uIHtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG59XG5cbi5zZXJ2aWNlcy1zMy13cmFwcGVyIHtcbiAgcGFkZGluZy1ib3R0b206IGNsYW1wKDgwcHgsIDEydncsIDE4MHB4KTtcbn1cbi5zZXJ2aWNlcy1zMy13cmFwcGVyIC50ZW5jLXNlcnZpY2VzLXMzYS1ncmlkLXdyYXBwZXIgLnNlcnZpY2VzLXMzYS1ncmlkLWl0ZW0gLnRlbmMtZmxleC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiBjbGFtcCgxNnB4LCA0dncsIDMycHgpO1xufVxuLnNlcnZpY2VzLXMzLXdyYXBwZXIgLnRlbmMtc2VydmljZXMtczNhLWdyaWQtd3JhcHBlciAuc2VydmljZXMtczNhLWdyaWQtaXRlbSAudGVuYy1mbGV4LXdyYXBwZXIgLnRlbmMtY29udGVudC13cmFwcGVyLmxlZnQge1xuICB3aWR0aDogMTAlO1xufVxuLnNlcnZpY2VzLXMzLXdyYXBwZXIgLnRlbmMtc2VydmljZXMtczNhLWdyaWQtd3JhcHBlciAuc2VydmljZXMtczNhLWdyaWQtaXRlbSAudGVuYy1mbGV4LXdyYXBwZXIgLnRlbmMtY29udGVudC13cmFwcGVyLnJpZ2h0IHtcbiAgd2lkdGg6IDgwJTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbn1cbi5zZXJ2aWNlcy1zMy13cmFwcGVyIC50ZW5jLXNlcnZpY2VzLXMzYS1ncmlkLXdyYXBwZXIgLnNlcnZpY2VzLXMzYS1ncmlkLWl0ZW0gLnRlbmMtZmxleC13cmFwcGVyIC50ZW5jLWNvbnRlbnQtd3JhcHBlci5yaWdodCBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4uc2VydmljZXMtczMtd3JhcHBlciAudGVuYy1zZXJ2aWNlcy1zM2EtZ3JpZC13cmFwcGVyIC5zZXJ2aWNlcy1zM2EtZ3JpZC1pdGVtIC50ZW5jLWZsZXgtd3JhcHBlciAudGVuYy1jb250ZW50LXdyYXBwZXIucmlnaHQgcCB7XG4gIGNvbG9yOiAjYTFhMWExO1xufVxuXG4uc2VydmljZXMtczQtd3JhcHBlciAudGVuYy1zZXJ2aWNlcy1zNGEtZ3JpZC13cmFwcGVyIC5zZXJ2aWNlcy1zNGEtZ3JpZC1pdGVtIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLnNlcnZpY2VzLXM0LXdyYXBwZXIgLnRlbmMtc2VydmljZXMtczRhLWdyaWQtd3JhcHBlciAuc2VydmljZXMtczRhLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgdWwub3V0ZXItbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuLnNlcnZpY2VzLXM0LXdyYXBwZXIgLnRlbmMtc2VydmljZXMtczRhLWdyaWQtd3JhcHBlciAuc2VydmljZXMtczRhLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgdWwub3V0ZXItbGlzdDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zZXJ2aWNlcy1zNC13cmFwcGVyIC50ZW5jLXNlcnZpY2VzLXM0YS1ncmlkLXdyYXBwZXIgLnNlcnZpY2VzLXM0YS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIHVsLm91dGVyLWxpc3QgbGkgdWwuaW5uZXItbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5zZXJ2aWNlcy1zNC13cmFwcGVyIC50ZW5jLXNlcnZpY2VzLXM0YS1ncmlkLXdyYXBwZXIgLnNlcnZpY2VzLXM0YS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIHVsLm91dGVyLWxpc3QgbGkgdWwuaW5uZXItbGlzdCBsaSB7XG4gIGNvbG9yOiAjYTFhMWExO1xufVxuLnNlcnZpY2VzLXM0LXdyYXBwZXIgLnRlbmMtc2VydmljZXMtczRhLWdyaWQtd3JhcHBlciAuc2VydmljZXMtczRhLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRleHQtZGVzY3JpcHRpb24gcCB7XG4gIGNvbG9yOiAjYTFhMWExO1xufVxuXG4vKiBDb250YWN0LnNjc3MgKi9cbi5jb250YWN0LXMyLXdyYXBwZXIgLnRlbmMtY29udGFjdC1zMmEtZ3JpZC13cmFwcGVyIC5jb250YWN0LXMyYS1ncmlkLWl0ZW0tcmlnaHQgLnRlbmMtY29udGVudC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy1ib3R0b206IGNsYW1wKDI0cHgsIDZ2dywgNjRweCk7XG59XG4uY29udGFjdC1zMi13cmFwcGVyIC50ZW5jLWNvbnRhY3QtczJhLWdyaWQtd3JhcHBlciAuY29udGFjdC1zMmEtZ3JpZC1pdGVtLXJpZ2h0IC50ZW5jLWNvbnRlbnQtd3JhcHBlciAudGVuYy1sZWZ0LWNvbCB7XG4gIHdpZHRoOiAzMCU7XG59XG4uY29udGFjdC1zMi13cmFwcGVyIC50ZW5jLWNvbnRhY3QtczJhLWdyaWQtd3JhcHBlciAuY29udGFjdC1zMmEtZ3JpZC1pdGVtLXJpZ2h0IC50ZW5jLWNvbnRlbnQtd3JhcHBlciAudGVuYy1yaWdodC1jb2wge1xuICB3aWR0aDogNTAlO1xufVxuLmNvbnRhY3QtczItd3JhcHBlciAudGVuYy1jb250YWN0LXMyYS1ncmlkLXdyYXBwZXIgLmNvbnRhY3QtczJhLWdyaWQtaXRlbS1yaWdodCAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRlbmMtcmlnaHQtY29sIHAge1xuICBjb2xvcjogI2ExYTFhMTtcbn1cbi5jb250YWN0LXMyLXdyYXBwZXIgLnRlbmMtY29udGFjdC1zMmEtZ3JpZC13cmFwcGVyIC5jb250YWN0LXMyYS1ncmlkLWl0ZW0tcmlnaHQgLnRlbmMtY29udGVudC13cmFwcGVyIC50ZW5jLXJpZ2h0LWNvbCBwIGEge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAuY29udGFjdC1zMi13cmFwcGVyIC50ZW5jLWNvbnRhY3QtczJhLWdyaWQtd3JhcHBlciAuY29udGFjdC1zMmEtZ3JpZC1pdGVtLXJpZ2h0IC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAuY29udGFjdC1zMi13cmFwcGVyIC50ZW5jLWNvbnRhY3QtczJhLWdyaWQtd3JhcHBlciAuY29udGFjdC1zMmEtZ3JpZC1pdGVtLXJpZ2h0IC50ZW5jLWNvbnRlbnQtd3JhcHBlciAudGVuYy1sZWZ0LWNvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbnRhY3QtczItd3JhcHBlciAudGVuYy1jb250YWN0LXMyYS1ncmlkLXdyYXBwZXIgLmNvbnRhY3QtczJhLWdyaWQtaXRlbS1yaWdodCAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRlbmMtcmlnaHQtY29sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLyogcG9ydGZvbGlvLWl0ZW1zLnNjc3MgKi9cbi5wb3J0LWl0ZW0tczEtd3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiBjbGFtcCgyNHB4LCA2dncsIDY0cHgpO1xuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbn1cbi5wb3J0LWl0ZW0tczEtd3JhcHBlciAucG9ydC1pdGVtLXMxLWdyaWQtd3JhcHBlciAucG9ydC1pdGVtLXMxLWdyaWQtaXRlbSAudGVuYy1jb250ZW50LXdyYXBwZXIgLnRlbmMtdGl0bGUtd3JhcHBlciBoMS5wb3J0LWl0ZW0tdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLnBvcnQtaXRlbS1zMS13cmFwcGVyIC5wb3J0LWl0ZW0tczEtZ3JpZC13cmFwcGVyIC5wb3J0LWl0ZW0tczEtZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAudGVuYy1zdWJ0aXRsZS13cmFwcGVyIGgyLnBvcnQtaXRlbS1zdWJ0aXRsZSB7XG4gIG1heC13aWR0aDogNjIwcHg7XG4gIG1hcmdpbi1ib3R0b206IGNsYW1wKDE2cHgsIDR2dywgMzJweCk7XG59XG4ucG9ydC1pdGVtLXMxLXdyYXBwZXIgLnBvcnQtaXRlbS1zMS1ncmlkLXdyYXBwZXIgLnBvcnQtaXRlbS1zMS1ncmlkLWl0ZW0gLnRlbmMtY29udGVudC13cmFwcGVyIC50ZW5jLWNhdC13cmFwcGVyIHAucG9ydC1pdGVtLWNhdGVnb3JpZXMge1xuICBtYXgtd2lkdGg6IDYyMHB4O1xufVxuXG4ucG9ydC1pdGVtLXMyLXdyYXBwZXIgLnBvcnQtaXRlbS1zMi1ncmlkLXdyYXBwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5wb3J0LWl0ZW0tczItd3JhcHBlciAucG9ydC1pdGVtLXMyLWdyaWQtd3JhcHBlciAucG9ydC1pdGVtLXMyLWdyaWQtaXRlbSAudGVuYy1pbWFnZS13cmFwcGVyIC50ZW5jLWltYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuLnBvcnQtaXRlbS1zMi13cmFwcGVyIC5wb3J0LWl0ZW0tczItZ3JpZC13cmFwcGVyIC5wb3J0LWl0ZW0tczItZ3JpZC1pdGVtIC50ZW5jLXZpZGVvLXdyYXBwZXIgLnRlbmMtdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLnBvcnQtaXRlbS1zMy13cmFwcGVyIC5wb3J0LWl0ZW0tczMtZ3JpZC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuLyogZGFyayBtb2RlLnNjc3MgKi8iLCIvKkJhc2Uuc2NzcyovXG5cbiosIFxuKjo6YWZ0ZXIsXG4qOjpiZWZvcmUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4qIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgICAvL3RoaXMgZGVmaW5lcyB3aGF0IDFyZW0gaXNcbiAgICBmb250LXNpemU6IDYyLjUlO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi50ZW5jLWltYWdlLCAudGVuYy12aWRlbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuXG4uY29udGFpbmVkLWdyaWQge1xuICAgIC8vdGhpcyBpcyBub3cgaW4gYXMtZ3JpZC5zY3NzXG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ21vZGVyYXQnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvbW9kZXJhdC1ib2xkLWl0YWxpYy13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgIHVybCgnLi4vZm9udHMvbW9kZXJhdC1ib2xkLWl0YWxpYy13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cblxuXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ21vZGVyYXQnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvbW9kZXJhdC1ib2xkLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9tb2RlcmF0LWJvbGQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdtb2RlcmF0JztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL21vZGVyYXQtcmVndWxhci1pdGFsaWMtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL21vZGVyYXQtcmVndWxhci1pdGFsaWMtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdtb2RlcmF0JztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL21vZGVyYXQtcmVndWxhci13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgIHVybCgnLi4vZm9udHMvbW9kZXJhdC1yZWd1bGFyLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuXG5cbiAvLyBiYXNlIHN0eWxlcyAodXNpbmcgU0NTUyBidXQgb3V0cHV0dGluZyBDU1MgdmFyaWFibGVzKVxuLy8gLm15LWJsb2NrIHtcblxuLy8gICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsb2NrLWJnLWNvbG9yKTtcbi8vICAgICBjb2xvcjogdmFyKC0tYmxvY2stdGV4dC1jb2xvcik7XG4vLyAgIH1cblxuOnJvb3Qge1xuICAtLWFsZ3N0LWJsb2NrLWVkaXRvci1ib3JkZXI6IHNvbGlkIDJweCAjZjBmMGYwO1xuICAtLWFsZ3N0LWJsb2NrLWVkaXRvci1wYWRkaW5nOiAycHg7XG59XG4gIFxuLyogV2hpdGUgdGhlbWUgb3ZlcnJpZGUgKi9cbi5iYWNrZ3JvdW5kLS13aGl0ZSB7XG4gIC0tYmxvY2stYmctY29sb3I6ICNmZmZmZmY7XG4gIC0tYmxvY2stY29sLWNvbG9yOiAjZjhmOGY4O1xufVxuXG4vKiBHcmF5IHRoZW1lIG92ZXJyaWRlICovXG4uYmFja2dyb3VuZC0tZ3JleSB7XG4gIC0tYmxvY2stYmctY29sb3I6ICNmOGY4Zjg7XG4gIC0tYmxvY2stY29sLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uRy10aXRsZS13cmFwcGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufSIsIi8qIENTUyA6cm9vdCB2YXJpYWJsZXMgKi9cblxuIiwiLyp0eXBvZ3JhcGh5LnNjc3MqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuYm9keSB7XG4gICAgY29sb3I6ICAjZmFmYWZhO1xuICAgIGZvbnQtZmFtaWx5OiAnbW9kZXJhdCcsIHNhbnMtc2VyaWY7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSAsaDYsIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1ICxoNiB7XG4gICAgXG59XG5cbnAge1xuICAgIG1hcmdpbi1ib3R0b206IDcuNXB4O1xufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCg0LjhyZW0sIDh2dywgODByZW0pO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG5cbiAgICAmLnBvcnQtaXRlbS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoNnJlbSwgNXZ3LCA3LjJyZW0pOyBcbiAgICB9XG5cbiAgICAmLmhvbWUtaDEge1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCg2cmVtLCA4dncsIDYwcmVtKTtcbiAgICB9XG5cbiAgICAmLmgxLTQwNC10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCAzdncsIDMuMnJlbSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgfVxufVxuXG5oMiB7XG4gICAgZm9udC1zaXplOiBjbGFtcCg0cmVtLCA1dncsIDIwcmVtKTsgXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuXG4gICAgJi53Yi13aWRlLXNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgXG4gICAgICAgIC8vbGV0dGVyLXNwYWNpbmc6IC0wLjRweDtcbiAgICB9XG5cbiAgICAmLnNlcnZpY2UtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDNyZW0sIDN2dywgMy4ycmVtKTtcbiAgICB9XG5cbiAgICAmLnBvcnQtaXRlbS1zdWJ0aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoM3JlbSwgM3Z3LCA0LjNyZW0pO1xuICAgICAgICBjb2xvcjogJGFsdC1mb250O1xuICAgIH1cblxuICAgICYuc2VydmljZS1zdGFnZXMtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDMuNXJlbSwgM3Z3LCAyMHJlbSk7XG4gICAgfVxuXG4gICAgJi50aWdodC10ZWFtIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCA0dncsIDYwcmVtKTtcbiAgICB9XG59XG5cbmgzIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDJyZW0sIDN2dywgMjByZW0pO1xuXG4gICAgJi50aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS41cmVtLCAydncsIDJyZW0pO1xuICAgIH1cblxuICAgICYuc2VydmljZS1zdWJ0aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4xNnB4O1xuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgIH1cblxuICAgICYuc3RhZ2VzLXN1YnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCAzdncsIDMuMnJlbSk7XG4gICAgfVxuXG4gICAgJi5jb250YWN0LWRldGFpbHMtdGVsZW1haWwge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDIuMnJlbSwgM3Z3LDIuNHJlbSk7XG5cbiAgICAgICAgJiBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMTZweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi4ycmVtLCAzdncsMi40cmVtKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgICAgICAgfVxuICAgICAgIFxuICAgIH1cblxuICAgICYucXVvdGUtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoM3JlbSwgM3Z3LCAzLjJyZW0pO1xuICAgIH1cbiAgICAgXG59XG5cbmg0IHtcbiAgICBcbn1cblxucCB7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAmLnNpZGUtdGl0bGUge1xuICAgICAgICBjb2xvcjogJGFsdC1mb250O1xuICAgIH1cblxuICAgICYuc3VwZXItbGFyZ2UtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMTByZW0sIDEydncsIDYwcmVtKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICB9XG5cbiAgICAmLnNlcnZpY2UtZGVzY3JpcHRpb24ge1xuICAgICAgICBjb2xvcjogJGFsdC1mb250O1xuICAgIH1cblxuICAgICYucG9ydC1pdGVtLWNhdGVnb3JpZXMge1xuICAgICAgICBjb2xvcjogJGFsdC1mb250O1xuICAgIH1cblxuICAgICYuc3VwZXItc21hbGwtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS40cmVtLCAxLjV2dywgMS42cmVtKTtcbiAgICB9XG5cbiAgICAmLnBvcnRmb2xpby10aXRsZSwgJi5wb3J0Zm9saW8teWVhciwgJi50ZWFtLXRpdGxlLCAmLnRlYW0tam9iIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgIH1cbiAgICBcbn1cblxuXG5cbmxpIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG5cbiAgICAmLmxlYWQtdGV4dCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxufVxuXG5hLCBhOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuNnJlbSwgMS41dncsIDEuOHJlbSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hOmhvdmVyLCBhOmFjdGl2ZSwgYTpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAwLjg1O1xufSIsIi8qIHV0aWxpdGllcy5zY3NzICovIiwiLyogYnV0dG9uLnNjc3MgKi9cblxuQHVzZSBcImFic3RyYWN0cy9nbG9iYWwtdmFyc1wiIGFzICo7XG5cbi5idXR0b24td3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcblxuICAgICYgLmJ1dHRvbl9jdXN0b20ge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRmb250LWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ1dHRvbl9jdXN0b20ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBcbiAgICAmIC5idXR0b24tdGV4dC13cmFwLFxuICAgICYgLmJ1dHRvbi1hcnJvdy13cmFwIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIFxuICAgICAgJiAuYnV0dG9uLXRleHQsXG4gICAgICAmIC5idXR0b24tYXJyb3csXG4gICAgICAmIC5idXR0b24taG92ZXItdGV4dCxcbiAgICAgICYgLmJ1dHRvbi1ob3Zlci1hcnJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zNXMgZWFzZTtcbiAgICAgICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICAgIH1cbiAgXG4gICAgICAmIC5idXR0b24taG92ZXItdGV4dCxcbiAgICAgICYgLmJ1dHRvbi1ob3Zlci1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgXG4gICAgICAmLmlzLWFuaW1hdGVkIHtcbiAgICAgICAgJiAuYnV0dG9uLXRleHQsXG4gICAgICAgICYgLmJ1dHRvbi1hcnJvdyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgfVxuICBcbiAgICAgICAgJiAuYnV0dG9uLWhvdmVyLXRleHQsXG4gICAgICAgICYgLmJ1dHRvbi1ob3Zlci1hcnJvdyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgXG4gIFxuICBAa2V5ZnJhbWVzIGZsaWNrVXAge1xuICAgIDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICB9XG4gIH1cbiAgIiwiLyogY2Fyb3VzZWwuc2NzcyAqL1xuXG4uY2Fyb3VzZWwge1xuXG4gICAgJiBvbC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcblxuICAgICAgICAmIGxpIHtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5jYXJvdXNlbC1pbm5lciB7XG5cbiAgICAgICAgJiAuY2Fyb3VzZWwtaXRlbSB7XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiAuY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcblxuICAgICAgICAmIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJiAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcblxuICAgICAgICAmIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgIH1cbn0iLCIud3BjZjcge1xuXG4gICAgJiAud3BjZjctZm9ybSB7XG5cbiAgICAgICAgJiBwIHtcblxuICAgICAgICAgICAgJiAud3BjZjctZm9ybS1jb250cm9sLXdyYXAge1xuXG4gICAgICAgICAgICAgICAgJiBpbnB1dCwgJiB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMiU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG4gICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmMGYwZjA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMzBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogU2xpZGVyLnNjc3MgKi9cblxuIiwiLyogZ2xvYmFsLWhlYWRpbmcuc2NzcyAqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuLnRlbmMtZ2xvYmFsLWhlYWRlci1zMS13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogJHBhZC1tZWRpdW07XG4gICAgcGFkZGluZy1ib3R0b206ICRsYXJnZS1tYXJnZTtcblxuICAgICYuY29udGFjdC1wYWdlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRwYWQteHhsYXJnZTtcbiAgICB9XG5cbiAgICAmIC50ZW5jLXRlbmMtZ2xvYmFsLWhlYWRlci1zMS1ncmlkLXdyYXBwZXIge1xuXG4gICAgICAgICYgLnRlbmMtZ2xvYmFsLWhlYWRlci1zMS1ncmlkLWl0ZW0ge1xuXG4gICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAmIC50ZW5jLXRpdGxlLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkwJTtcblxuICAgICAgICAgICAgICAgICAgICAmIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgLndvcmQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh5cGhlbnM6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmIC5jaGFyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuaHlwaGVuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IGJwKHNtKSkge1xuXG5cbn0iLCIvKiBCcmFuZHMtYnVpbHQuc2NzcyAqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuLmJyYW5kcy13cmFwcGVyIHtcblxuICAgICYgLnRlbmMtYnJhbmRzLWdyaWQtd3JhcHBlcjEge1xuXG4gICAgICAgICYgLmJyYW5kcy1ncmlkLWl0ZW0xIHtcblxuICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgJiAuc2lkZS10aXRsZSB7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmIC50ZW5jLWJyYW5kcy1ncmlkLXdyYXBwZXIyIHtcbiAgICAgICAgZ2FwOiAxMnB4IWltcG9ydGFudDtcblxuICAgICAgICAmIC5icmFuZHMtZ3JpZC1pdGVtMiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAmIC5sb2dvLXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgJiAuY2xpZW50LWxvZ28ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogYnAobWRtbCkpIHtcblxuICAgIC5icmFuZHMtd3JhcHBlciB7XG5cbiAgICAgICAgJiAudGVuYy1icmFuZHMtZ3JpZC13cmFwcGVyMSB7XG4gICAgXG4gICAgICAgICAgICAmIC5icmFuZHMtZ3JpZC1pdGVtMSB7XG4gICAgXG4gICAgICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAmIC5zaWRlLXRpdGxlIHtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuICAgICAgICAmIC50ZW5jLWJyYW5kcy1ncmlkLXdyYXBwZXIyIHtcbiAgICAgICAgICAgIFxuICAgIFxuICAgICAgICAgICAgJiAuYnJhbmRzLWdyaWQtaXRlbTIge1xuICAgICAgICAgICAgICAgIFxuICAgIFxuICAgICAgICAgICAgICAgICYgLmxvZ28td3JhcHBlciB7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICYgLmNsaWVudC1sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogYnAoeGwpKSB7XG4gICAgLmJyYW5kcy13cmFwcGVyIC50ZW5jLWJyYW5kcy1ncmlkLXdyYXBwZXIyLmFsZ3N0LWdyaWQuYWxnc3QtY29scy02IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiBicChtZG1sKSkge1xuICAgIC5icmFuZHMtd3JhcHBlciAudGVuYy1icmFuZHMtZ3JpZC13cmFwcGVyMi5hbGdzdC1ncmlkLmFsZ3N0LWNvbHMtNiB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiBicChzbSkpIHtcbiAgICAuYnJhbmRzLXdyYXBwZXIgLnRlbmMtYnJhbmRzLWdyaWQtd3JhcHBlcjIuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTYge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICB9XG5cbiAgICAuYnJhbmRzLXdyYXBwZXIgLnRlbmMtYnJhbmRzLWdyaWQtd3JhcHBlcjIuYWxnc3QtZ3JpZCB7XG4gICAgICAgIHBhZGRpbmc6IDBweCAwO1xuICAgICAgICBnYXA6IDEycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICAgICAgJiAuYnJhbmRzLWdyaWQtaXRlbTIge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJiAubG9nby13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgLmNsaWVudC1sb2dvIHtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gIH0iLCIvKiB0ZWFtLnNjc3MgKi9cblxuQHVzZSBcImFic3RyYWN0cy9nbG9iYWwtdmFyc1wiIGFzICo7XG5cbi50ZWFtLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAkbGFyZ2UtbWFyZ2U7XG5cbiAgICAmIC50ZWFtLWdyaWQtd3JhcHBlciB7XG5cbiAgICAgICAgJiAudGVhbS1ncmlkLWl0ZW0ge1xuXG4gICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAmIC5pbWFnZS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZC1tZWRpdW07XG5cbiAgICAgICAgICAgICAgICAgICAgJiAudGVuYy1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmIC50ZXh0LXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICYgLnRlYW0tdGl0bGUge1xuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYgLnRlYW0tam9iIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYWx0LWZvbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogcXVvdGUtc2VjdGlvbi5zY3NzICovXG5cbkB1c2UgXCJhYnN0cmFjdHMvZ2xvYmFsLXZhcnNcIiBhcyAqO1xuXG4ucXVvdGUtb3V0ZXItd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206ICRsYXJnZS1tYXJnZTtcblxuICAgICYgLnF1b3RlLWdyaWQtd3JhcHBlciB7XG5cbiAgICAgICAgJiAucXVvdGUtZ3JpZC1pdGVtIHtcblxuICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggJGFsdC1mb250O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcblxuICAgICAgICAgICAgICAgICYgLnF1b3RlLXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICYgLnF1b3RlLXRleHQge1xuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmIC5xdW90ZXItd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICRwYWQtbWVkaXVtO1xuXG4gICAgICAgICAgICAgICAgICAgICYgLnRlYW0tdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYgLnRlYW0teWVhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGFsdC1mb250O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiAucXVvdGUtZ3JpZC13cmFwcGVyMiB7XG5cbiAgICAgICAgJiAucXVvdGUtZ3JpZC1pdGVtMiB7XG5cbiAgICAgICAgICAgICYgLmJ1dHRvbi13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgLmJ1dHRvbl9jdXN0b20ge1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qIEdyaWQgYmFzZSAqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuLmFsZ3N0LXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBGdWxsLXdpZHRoIGZvciBzZWN0aW9uc1xuICAgIG1hcmdpbjogMCBhdXRvOyAvLyBDZW50ZXItYWxpZ24gdGhlIGNvbnRlbnRcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWQtbGFyZ2U7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZC1sYXJnZTtcblxuICAgICYgLmFsZ3N0LWdyaWQge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSB0aGUgZ3JpZCByZXNwZWN0cyB0aGUgd3JhcHBlciB3aWR0aFxuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMzBweCAwOyAvLyBBZGQgc3BhY2luZyBhcm91bmQgdGhlIGdyaWQgc2VjdGlvblxuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IDI0cHg7IC8vIFNwYWNpbmcgYmV0d2VlbiBncmlkIGl0ZW1zXG4gICAgICBcbiAgICAgICAgLy8gUmVzcG9uc2l2ZSBjb2x1bW4gc2V0dXBcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgzMjBweCwgMWZyKSk7IC8vIEFkanVzdCBtaW4gd2lkdGggdG8gZml0IG1heC13aWR0aFxuXG4gICAgICAgICYuY29udGFpbmVkLWdyaWQge1xuICAgICAgICAgIG1heC13aWR0aDogMTI4MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zcGVjaWFsLWdyaWQge1xuICAgICAgICAgIG1heC13aWR0aDogMTgwMHB4O1xuICAgICAgICB9XG5cbiAgICAgIC8vICAgJi5hbGdzdC1jb2xzLTIge1xuICAgICAgLy8gICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIC8vICAgfVxuICAgICAgICBcblxuICAgICAgLy8gICAmLmFsZ3N0LWNvbHMtMyB7XG4gICAgICAvLyAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgLy8gICB9XG5cbiAgICAgIC8vICAgJi5hbGdzdC1jb2xzLTYge1xuICAgICAgLy8gICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyIDFmciAxZnI7XG4gICAgICAvLyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggMTIge1xuICAgICAgICAmLmFsZ3N0LWNvbHMtI3skaX0ge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCN7JGl9LCAxZnIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJiAuYWxnc3QtY29sIHtcbiAgICAgICAgcGFkZGluZzogMTVweDsgLy8gUGFkZGluZyBmb3IgaW5uZXIgc3BhY2luZ1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgICAgLy8gICAmLmNvbC1zcGFuLTIge1xuICAgICAgICAgIC8vICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7IC8vIFNwYW4gMiBjb2x1bW5zXG4gICAgICAgICAgLy8gICB9XG5cbiAgICAgICAgICAvLyAgICYuY29sLXNwYW4tNSB7XG4gICAgICAgICAgLy8gICAgIGdyaWQtY29sdW1uOiBzcGFuIDU7IC8vIFNwYW4gMiBjb2x1bW5zXG4gICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMiB7XG4gICAgICAgICAgICAmLmNvbC1zcGFuLSN7JGl9IHtcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gI3skaX07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNvbC1mdWxsIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xOyAvLyBGdWxsLXdpZHRoIGl0ZW0gd2l0aGluIHRoZSBncmlkXG4gICAgICAgICAgICB9XG4gICAgICB9IFxuICAgICAgXG4gIH1cblxuIFxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAgYnAoeGwpKSB7XG4gICAgLmFsZ3N0LXdyYXBwZXIgLmFsZ3N0LWdyaWQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IC8vIFNpbmdsZSBjb2x1bW4gb24gc21hbGxlciBzY3JlZW5zXG5cbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggMTIge1xuICAgICAgICAmLmFsZ3N0LWNvbHMtI3skaX0ge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gUmVzcG9uc2l2ZSBBZGp1c3RtZW50c1xuICBAbWVkaWEgKG1heC13aWR0aDogIGJwKG1kKSkge1xuICAgIC5hbGdzdC13cmFwcGVyIC5hbGdzdC1ncmlkIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyAvLyBTaW5nbGUgY29sdW1uIG9uIHNtYWxsZXIgc2NyZWVuc1xuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDEyIHtcbiAgICAgICAgJi5hbGdzdC1jb2xzLSN7JGl9IHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuIiwiLyogRm9vdGVyICovXG5cbkB1c2UgXCJhYnN0cmFjdHMvZ2xvYmFsLXZhcnNcIiBhcyAqO1xuXG4udGVuYy1mb290ZXItd3JhcHBlci13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogJGxhcmdlLW1hcmdlO1xuXG4gICAgJiAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIge1xuXG4gICAgICAgICYgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIHtcblxuICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgJiAudGVuYy10aXRsZS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRwYWQtbGFyZ2U7XG5cbiAgICAgICAgICAgICAgICAgICAgJiBoMiB7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgLmZvb3Rlci1ncmlkLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHBhZC14eHhsYXJnZTtcblxuICAgICAgICAgICAgICAgICAgICAmIC5mb290ZXItZ3JpZC1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgLnRlbmMtaW5uZXItY29udGVudC13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYWx0LWZvbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44NTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgLmZvb3Rlci1ncmlkMi13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICYuYWxnc3QtY29scy02IHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmIC5mb290ZXItZ3JpZDItaXRlbSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgLnRlbmMtbG9nby13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgLnRlbmMtbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi50ZW5jLWNvbXBhbnktbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmItY29ycC1sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjIuNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBhZGRpdGlvbmFsIGNzcyAqL1xuXG4vKiA4dGggU2VwdGVtYmVyIDIwMjYgKi9cblxuLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQyLXdyYXBwZXIgLmZvb3Rlci1ncmlkMi1pdGVtIC50ZW5jLWxvZ28td3JhcHBlciAudGVuYy1sb2dvLmItY29ycC1sb2dvIHtcbiAgICBoZWlnaHQ6IDYyLjVweDtcbn1cblxuLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQyLXdyYXBwZXIgLmZvb3Rlci1ncmlkMi1pdGVtIC50ZW5jLWxvZ28td3JhcHBlciAudGVuYy1sb2dvLnRlbmMtY29tcGFueS1sb2dvIHtcbiAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogNjVweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLnRlbmMtZm9vdGVyLXdyYXBwZXItd3JhcHBlciAudGVuYy1mb290ZXItd3JhcHBlci1ncmlkLXdyYXBwZXIgLnRlbmMtZm9vdGVyLXdyYXBwZXItZ3JpZC1pdGVtIC50ZW5jLWNvbnRlbnQtd3JhcHBlciAuZm9vdGVyLWdyaWQyLXdyYXBwZXIuYWxnc3QtZ3JpZC5hbGdzdC1jb2xzLTYge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgfVxufSIsIi8qIExheW91dCAqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuLnRlbmMtc2l0ZS1oZWFkZXIge1xuICBwYWRkaW5nOiAkcGFkLWxhcmdlO1xuXG4gICAgJiAudGVuYy1uYXYtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICYgLnRlbmMtbmF2LWxvZ28td3JhcHBlciB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtbmF2LWxvZ28tbGluayB7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgLnRlbmMtbmF2LWxvZ28ge1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmIC50ZW5jLW1haW4tbmF2IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk7XG5cbiAgICAgICAgICAgICYgLnRlbmMtbWVudS10b2dnbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgLnRlbmMtbmF2LWxpbmtzIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZ2FwOiAycmVtO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5OTk7XG5cbiAgICAgICAgICAgICAgICAmIC50ZW5jLW5hdi1pdGVtIHtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUsICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYWx0LWZvbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmIC5uYXYtbGluay10ZXh0LXdyYXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJiAubmF2LWxpbmstdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5uYXYtbGluay1ob3Zlci10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmlzLWFuaW1hdGVkIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmIC5uYXYtbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmxpY2tVcCAwLjRzIGVhc2UgZm9yd2FyZHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiAubmF2LWxpbmstaG92ZXItdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaWNrVXAge1xuICAgIDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICB9XG4gIH1cblxuLyogTW9iaWxlIFN0eWxlcyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IGJwKG1kbWwpKSB7XG5cbiAgICAudGVuYy1uYXYtaXRlbSBhLCAudGVuYy1tZW51LXRvZ2dsZSBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgfVxuXG4gICAgLnRlbmMtc2l0ZS1oZWFkZXIge1xuXG4gICAgICAgICYgLnRlbmMtbmF2LWNvbnRhaW5lciB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtbmF2LWxvZ28td3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAmIC50ZW5jLW5hdi1sb2dvLWxpbmsge1xuXG4gICAgICAgICAgICAgICAgICAgICYgLnRlbmMtbmF2LWxvZ28ge1xuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgLnRlbmMtbWFpbi1uYXYge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgJiAudGVuYy1tZW51LXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgLnRlbmMtbmF2LWxpbmtzIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJiAudGVuYy1uYXYtaXRlbSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgYSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmIC5uYXYtbGluay10ZXh0LXdyYXAge1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmIC5uYXYtbGluay10ZXh0IHtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubmF2LWxpbmstaG92ZXItdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5pcy1hbmltYXRlZCB7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmIC5uYXYtbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiAubmF2LWxpbmstaG92ZXItdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiBob21lLnNjc3MgKi9cblxuQHVzZSBcImFic3RyYWN0cy9nbG9iYWwtdmFyc1wiIGFzICo7XG5cbi8qXG4uaG9tZS1oZXJvLXNlY3Rpb24td3JhcHBlciB7XG5cbiAgICAmIC50ZW5jLWhvbWUtaGVyby1ncmlkLXdyYXBwZXIge1xuXG4gICAgICAgICYgLmhvbWUtaGVyby1ncmlkLWl0ZW0ge1xuXG4gICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiAgICAqL1xuXG4uaG9tZS1oZXJvLXNlY3Rpb24td3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6ICRwYWQtbWVkaXVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAkcGFkLW1lZGl1bTtcblxuICAgICYgLnRlbmMtaG9tZS1oZXJvLWdyaWQtd3JhcHBlciB7XG5cbiAgICAgICAgJiAuaG9tZS1oZXJvLWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtY29udGVudC13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgLnRlbmMtdGl0bGUtd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgJiBoMSB7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhvbWUtaGVybzItc2VjdGlvbi13cmFwcGVyIHtcbiAgICAvL3BhZGRpbmctdG9wOiAkcGFkLW1lZGl1bTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHBhZC1tZWRpdW07XG5cbiAgICAmIC50ZW5jLWhvbWUtaGVybzItZ3JpZC13cmFwcGVyIHtcblxuICAgICAgICAmIC5ob21lLWhlcm8yLWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtdmlkLWVtYmVkLXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgJiAudGVuYy1oZXJvLXZpZCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4vLyAgICAgLmhvbWUtaGVybzItc2VjdGlvbi13cmFwcGVyIHtcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTUwcHg7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4vLyAgICAgLmhvbWUtaGVybzItc2VjdGlvbi13cmFwcGVyIHtcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjUwcHg7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4vLyAgICAgLmhvbWUtaGVybzItc2VjdGlvbi13cmFwcGVyIHtcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTUwcHg7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4vLyAgICAgLmhvbWUtaGVybzItc2VjdGlvbi13cmFwcGVyIHtcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzI1cHg7XG4vLyAgICAgfVxuLy8gICB9XG5cbi5ob21lLXMyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAkbGFyZ2UtbWFyZ2U7XG5cbiAgICAmIC50ZW5jLWhvbWUtczItZ3JpZC13cmFwcGVyIHtcblxuICAgICAgICAmIC5ob21lLXMyLWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtY29udGVudC13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgcCB7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmIC5ob21lLXMyLWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtY29udGVudC13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgLmRlc2NyaXB0aW9uLXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICYgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmIC5idXR0b24td3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgICAgICAgICAgICAgICAgIC8vc3R5bGVzIGluIGJ1dHRvbi5zY3NzXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiBQb3J0Zm9saW8uc2NzcyAqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuLnBvcnRmb2xpby1zMS13cmFwcGVyIHtcblxuICAgICYgLnRlbmMtcG9ydGZvbGlvLXMxLWdyaWQtd3JhcHBlciB7XG4gICAgICAgIGdhcDogJHBhZC1zbWFsbDtcblxuICAgICAgICAmIC5wb3J0Zm9saW8tczEtZ3JpZC1pdGVtIHtcblxuICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgJiBhIHtcblxuICAgICAgICAgICAgICAgICAgICAmIC5pbWFnZS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDc5Ny80NDg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgLnRlbmMtaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYgLnRleHQtd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgLnBvcnRmb2xpby10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRwYWQtbWVkaXVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJiAucG9ydGZvbGlvLXllYXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYWx0LWZvbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogYWJvdXQuc2NzcyAqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuLmFib3V0LXMyLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206ICRsYXJnZS1tYXJnZTtcblxuICAgICYgLnRlbmMtYWJvdXQtczItZ3JpZC13cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRwYWQteHhsYXJnZTtcblxuICAgICAgICAmIC5hYm91dC1zMi1ncmlkLWl0ZW0ge1xuXG4gICAgICAgICAgICAmLmxlZnQtY29sIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuXG4gICAgICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICYgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ExYTFhMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5yaWdodC1jb2wge1xuXG4gICAgICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkwJTtcblxuICAgICAgICAgICAgICAgICAgICAmIHAge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnN1cGVyLWxhcmdlLXRleHQge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogc2VydmljZXMuc2NzcyAqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuLnNlcnZpY2VzLXMyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAkbGFyZ2UtbWFyZ2U7XG5cbiAgICAmIC50ZW5jLXNlcnZpY2VzLXMyLWdyaWQtd3JhcHBlciB7XG5cbiAgICAgICAgJiAuc2VydmljZXMtczItZ3JpZC1pdGVtIHtcblxuICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgJiAuaW1hZ2Utd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgJiAudGVuYy1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgLnRleHQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkcGFkLW1lZGl1bTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcblxuICAgICAgICAgICAgICAgICAgICAmIC5zZXJ2aWNlLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJiAuc2VydmljZS1zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJHBhZC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmIC5zZXJ2aWNlLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkcGFkLW1lZGl1bTtcbiAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZXJ2aWNlcy1zMy13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGxhcmdlLW1hcmdlO1xuXG4gICAgJiAudGVuYy1zZXJ2aWNlcy1zMy1ncmlkLXdyYXBwZXIge1xuXG4gICAgICAgICYgLnNlcnZpY2VzLXMzLWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtY29udGVudC13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgaDMuc2VydmljZS1zdGFnZXMtdGl0bGUgeyBcblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgLnRlbmMtc2VydmljZXMtczNhLWdyaWQtd3JhcHBlciB7XG5cbiAgICAgICAgJiAuc2VydmljZXMtczNhLWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtZmxleC13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGdhcDogJHBhZC1sYXJnZTtcblxuICAgICAgICAgICAgICAgICYgLnRlbmMtY29udGVudC13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwJTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJiAudGVuYy1pY29uIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJiBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYWx0LWZvbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlcnZpY2VzLXM0LXdyYXBwZXIge1xuXG4gICAgJiAudGVuYy1zZXJ2aWNlcy1zNC1ncmlkLXdyYXBwZXIge1xuXG4gICAgICAgICYgLnNlcnZpY2VzLXM0LWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLnRlbmMtY29udGVudC13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgLnNlcnZpY2VzLXRpdGxlIHtcblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgLnRlbmMtc2VydmljZXMtczRhLWdyaWQtd3JhcHBlciB7XG5cbiAgICAgICAgJiAuc2VydmljZXMtczRhLWdyaWQtaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAmIHVsLm91dGVyLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkcGFkLW1lZGl1bTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmIGxpIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJiB1bC5pbm5lci1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRhbHQtZm9udDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmIC50ZXh0LWRlc2NyaXB0aW9uIHtcblxuICAgICAgICAgICAgICAgICAgICAmIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRhbHQtZm9udDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiBDb250YWN0LnNjc3MgKi9cblxuQHVzZSBcImFic3RyYWN0cy9nbG9iYWwtdmFyc1wiIGFzICo7XG5cbi5jb250YWN0LXMyLXdyYXBwZXIge1xuXG4gICAgJiAudGVuYy1jb250YWN0LXMyLWdyaWQtd3JhcHBlciB7XG5cbiAgICAgICAgJiAuY29udGFjdC1zMi1ncmlkLWl0ZW0ge1xuXG4gICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAmIHAge1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiAudGVuYy1jb250YWN0LXMyYS1ncmlkLXdyYXBwZXIge1xuXG4gICAgICAgICYgLmNvbnRhY3QtczJhLWdyaWQtaXRlbS1sZWZ0IHtcblxuXG4gICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAmIGgzIHtcblxuICAgICAgICAgICAgICAgICAgICAmIGEge1xuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmIC5jb250YWN0LXMyYS1ncmlkLWl0ZW0tcmlnaHQge1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHBhZC14eGxhcmdlO1xuXG4gICAgICAgICAgICAgICAgJiAudGVuYy1sZWZ0LWNvbCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgJiBwIHtcblxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiAudGVuYy1yaWdodC1jb2wge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgICAgICAgICAgICYgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGFsdC1mb250O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IGJwKHNtKSkge1xuXG4gICAgLmNvbnRhY3QtczItd3JhcHBlciB7XG5cbiAgICAgICAgJiAudGVuYy1jb250YWN0LXMyLWdyaWQtd3JhcHBlciB7XG4gICAgXG4gICAgICAgICAgICAmIC5jb250YWN0LXMyLWdyaWQtaXRlbSB7XG4gICAgXG4gICAgICAgICAgICAgICAgJiAudGVuYy1jb250ZW50LXdyYXBwZXIge1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAmIHAge1xuICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgICYgLnRlbmMtY29udGFjdC1zMmEtZ3JpZC13cmFwcGVyIHtcblxuICAgIFxuICAgICAgICAgICAgJiAuY29udGFjdC1zMmEtZ3JpZC1pdGVtLWxlZnQge1xuICAgIFxuICAgIFxuICAgICAgICAgICAgICAgICYgLnRlbmMtY29udGVudC13cmFwcGVyIHtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgJiBoMyB7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmIGEge1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgJiAuY29udGFjdC1zMmEtZ3JpZC1pdGVtLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICYgLnRlbmMtbGVmdC1jb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmIHAge1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICYgLnRlbmMtcmlnaHQtY29sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJiBwIHtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiBwb3J0Zm9saW8taXRlbXMuc2NzcyAqL1xuXG5AdXNlIFwiYWJzdHJhY3RzL2dsb2JhbC12YXJzXCIgYXMgKjtcblxuLnBvcnQtaXRlbS1zMS13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogJHBhZC14eGxhcmdlO1xuICAgIHBhZGRpbmctYm90dG9tOiAkcGFkLW1lZGl1bTtcblxuICAgICYgLnBvcnQtaXRlbS1zMS1ncmlkLXdyYXBwZXIge1xuXG4gICAgICAgICYgLnBvcnQtaXRlbS1zMS1ncmlkLWl0ZW0ge1xuXG4gICAgICAgICAgICAmIC50ZW5jLWNvbnRlbnQtd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAmIC50ZW5jLXRpdGxlLXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICYgaDEucG9ydC1pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRwYWQtbWVkaXVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiAudGVuYy1zdWJ0aXRsZS13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAmIGgyLnBvcnQtaXRlbS1zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZC1sYXJnZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgLnRlbmMtY2F0LXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICYgcC5wb3J0LWl0ZW0tY2F0ZWdvcmllcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9ydC1pdGVtLXMyLXdyYXBwZXIge1xuICAgIFxuICAgICYgLnBvcnQtaXRlbS1zMi1ncmlkLXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAmIC5wb3J0LWl0ZW0tczItZ3JpZC1pdGVtIHtcblxuICAgICAgICAgICAgJiAudGVuYy1pbWFnZS13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgLnRlbmMtaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiAudGVuYy12aWRlby13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICYgLnRlbmMtdmlkZW8ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBvcnQtaXRlbS1zMy13cmFwcGVyIHtcblxuICAgICYgLnBvcnQtaXRlbS1zMy1ncmlkLXdyYXBwZXIge1xuICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogYnAobWRtbCkpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiAucG9ydC1pdGVtLXMzLWdyaWQtaXRlbSB7XG5cbiAgICAgICAgICAgICYgLmJ1dHRvbi13cmFwcGVyIHtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiBkYXJrIG1vZGUuc2NzcyAqLyJdfQ== */
