/*
 0   -  600 : Phone 400/16 < 37.5em
 600 -  900 : Tablet 600/16 < 56.25em
 900 - 1200 : Tablet landscape 600/16 < 75em
1200 -      : Desktop 1200/16 > 75em

*/
:root {
  --vh100: calc(100vh);
  --vh100-once: calc(100vh);
  --scrollbar-width: 0;
  --extra-large-font: 5.0625rem;
  --large-font: 2.625rem;
  --medium-font: 2.1875rem;
  --body-font: 1.375rem;
  --small-font: 0.875rem; }
  @media (max-width: 600px) {
    :root {
      --body-font: 1rem;
      --medium-font: 1.25rem;
      --large-font: 1.875rem;
      --extra-large-font: 2.5rem; } }

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.2;
  -webkit-text-size-adjust: 100%; }

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

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 1px;
  width: 100%;
  border: none;
  overflow: visible; }

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

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

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

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

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

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

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

*,
*::after,
*::before {
  margin: 0;
  padding: 0;
  box-sizing: inherit; }

html {
  box-sizing: border-box; }

a,
a:visited {
  text-decoration: none;
  color: inherit; }

ul li {
  list-style-type: none; }

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: normal;
  margin: 0; }

button {
  background-color: transparent;
  outline: none;
  border: none;
  cursor: pointer; }

@font-face {
  font-family: 'Basis Grotesque Pro';
  src: url("../fonts/subset-BasisGrotesquePro-BoldItalic.woff2") format("woff2"), url("../fonts/subset-BasisGrotesquePro-BoldItalic.woff") format("woff");
  font-weight: bold;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Basis Grotesque Pro';
  src: url("../fonts/subset-BasisGrotesquePro-Italic.woff2") format("woff2"), url("../fonts/subset-BasisGrotesquePro-Italic.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Basis Grotesque Pro';
  src: url("../fonts/subset-BasisGrotesquePro-Black.woff2") format("woff2"), url("../fonts/subset-BasisGrotesquePro-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Basis Grotesque Pro Off White';
  src: url("../fonts/subset-BasisGrotesquePro-OffWhite.woff2") format("woff2"), url("../fonts/subset-BasisGrotesquePro-OffWhite.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Basis Grotesque Pro';
  src: url("../fonts/subset-BasisGrotesquePro-Bold.woff2") format("woff2"), url("../fonts/subset-BasisGrotesquePro-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Basis Grotesque Pro';
  src: url("../fonts/subset-BasisGrotesquePro-Regular.woff2") format("woff2"), url("../fonts/subset-BasisGrotesquePro-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

html {
  font-size: 16px; }
  html body {
    font-family: "Basis Grotesque Pro" !important;
    color: #000; }

* a, * span, * div, * p, * a, * button {
  font-family: "Basis Grotesque Pro" !important; }

* p {
  font-size: var(--body-font) !important; }

.qodef-main-menu > ul > li > a:after {
  background-color: #d23f0e !important; }

.qodef-main-menu > ul > li:hover span {
  color: #FFF; }

h4, h2 {
  font-size: var(--medium-font) !important;
  font-weight: 600; }

h1 {
  font-size: var(--large-font); }

.wpml-ls-statics-footer.wpml-ls.wpml-ls-legacy-list-horizontal ul {
  display: flex;
  align-items: center;
  justify-content: center; }
  .wpml-ls-statics-footer.wpml-ls.wpml-ls-legacy-list-horizontal ul li {
    margin: 0 1rem; }

p strong {
  font-weight: 600 !important; }

.text-color-white p, .text-color-white h2, .text-color-white h1, .text-color-white h3, .text-color-white h4, .text-color-white h5, .text-color-white h6, .text-color-white a, .text-color-white li, .text-color-white ul {
  color: #FFF !important; }

.qodef-title {
  background-color: #d23f0e !important; }

.qodef-blog-list li.qodef-blog-list-item {
  margin-bottom: 4rem; }

.qodef-comment-holder {
  display: none !important; }

.qodef-post-info .qodef-post-info-date::after {
  display: none !important; }

.qodef-post-info .qodef-post-info-category {
  display: none !important; }

.qodef-post-info .qodef-post-info-author {
  display: none !important; }

.qodef-drop-down .narrow .second .inner ul li:last-child {
  width: auto; }
  .qodef-drop-down .narrow .second .inner ul li:last-child .item_text span {
    color: #000; }

.qodef-team.main-info-below-image .qodef-team-image {
  border-radius: 0 !important; }

.qodef-main-menu > ul > li.qodef-active-item > a,
body:not(.qodef-menu-item-first-level-bg-color)
.qodef-main-menu > ul > li:hover > a {
  color: #FFF !important; }

.qodef-blog-holder article .qodef-post-info > div {
  color: #000 !important; }

.qodef-blog-holder article .qodef-post-text-inner a {
  font-weight: 600; }

body .vc_custom_1750298782374 {
  padding-left: 0 !important;
  padding-right: 0 !important; }

.italic {
  font-style: italic; }

.upper {
  text-transform: uppercase; }

.lower {
  text-transform: lowercase; }

.cap {
  text-transform: capitalize; }

.underline {
  text-decoration: underline; }

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

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

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

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

.m0-auto {
  margin: 0 auto; }

.flex {
  display: flex; }

.flex-center {
  display: flex;
  align-items: center; }

.flex-between {
  display: flex;
  justify-content: space-between; }

.flex-between-center {
  display: flex;
  justify-content: space-between;
  align-items: center; }

.flex-center-center {
  display: flex;
  justify-content: center;
  align-items: center; }

.flex-col {
  display: flex;
  flex-direction: column; }

.flex-col-center {
  display: flex;
  flex-direction: column;
  align-items: center; }

.flex-col-between-center {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center; }

.flex-break {
  flex: 1 0 100%;
  height: 0; }

.grid {
  display: grid; }

.grid-12 {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: var(--col-gap); }

.overlay-fadein {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  pointer-events: none;
  z-index: 0; }

.overlay-left {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  transform: translateX(-100%);
  transition: transform 0.3s ease-out;
  pointer-events: none;
  z-index: 5; }
  .overlay-left.transform-x0 {
    transform: translateX(0); }

@media only screen and (max-width: 62.5em) {
  .overlay-right {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translateX(100%);
    transition: transform 0.3s ease-out;
    pointer-events: none;
    z-index: 5; } }

.overlay-fadein.show {
  opacity: 1;
  z-index: 10; }

.transform-x0 {
  transform: translateX(0); }

.transformed-y {
  transform: translateY(150px);
  transition: transform .7s ease-in-out, opacity .7s ease-in; }
  .transformed-y.unrevealed {
    transition: transform .7s ease-in-out, opacity .7s ease-in; }
  .transformed-y.transform-0 {
    transform: translateY(0); }

.sequential > div {
  transform: translateY(150px);
  opacity: 0;
  transition: transform .7s ease-in-out, opacity .7s ease-in; }
  .sequential > div.show.transform-0 {
    transform: translateY(0);
    opacity: 1; }

.events-none {
  pointer-events: none; }

.events-auto {
  pointer-events: auto; }

.overflowY-hidden {
  overflow-y: hidden; }

.events-none.overflowY-hidden {
  overflow-y: auto; }
  @media only screen and (max-width: 62.5em) {
    .events-none.overflowY-hidden {
      pointer-events: none;
      overflow: hidden; } }

.scroll-cont {
  overflow: unset;
  height: auto; }
  @media only screen and (min-width: 37.5em) {
    .scroll-cont {
      overflow: hidden;
      height: var(--vh100); } }
  @media only screen and (min-width: 62.5em) {
    .scroll-cont {
      overflow: hidden;
      width: 100%; } }

.scroll-inner {
  padding-right: var(--scrollbar-width);
  overflow-y: scroll;
  height: var(--vh100);
  display: flex;
  flex-direction: column;
  width: calc(100% + var(--scrollbar-width)); }

.scrollbar-measure {
  width: 100px;
  height: 100px;
  overflow: scroll;
  position: absolute;
  top: -9999px; }

.sticky {
  position: sticky; }

.hidden-title {
  opacity: 0;
  height: 0;
  margin: 0; }

.invisible {
  visibility: hidden; }

.nodisplay {
  display: none; }

.hidden {
  opacity: 0; }

.show {
  opacity: 1; }

.unrevealed {
  opacity: 0;
  transition: opacity .5s ease-in; }
  .unrevealed.show {
    opacity: 1; }

@media only screen and (max-width: 37.5em) {
  .mobile-hidden {
    display: none; } }

@media only screen and (max-width: 62.5em) {
  .tablet-hidden {
    display: none !important; } }

@media only screen and (max-width: 75em) {
  .tablet-land-hidden {
    display: none !important; } }

.mobile-only {
  display: none; }
  @media only screen and (max-width: 37.5em) {
    .mobile-only {
      display: block; } }

.tablet-only {
  display: none; }
  @media only screen and (max-width: 62.5em) {
    .tablet-only {
      display: block; } }

.tablet-land-only {
  display: none; }
  @media only screen and (max-width: 75em) {
    .tablet-land-only {
      display: block; } }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: none; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }

.slick-track:before,
.slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: block; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-slider.hover .city-multicard-cont {
  opacity: .5; }
  .slick-slider.hover .city-multicard-cont.over {
    opacity: 1; }

.slick-slide {
  outline: none;
  height: inherit; }

.slick-disabled {
  display: none !important; }

.slick-track {
  margin-left: calc(var(--main-pad-lr) - 1rem);
  display: flex; }

@media only screen and (max-width: 62.5em) {
  .slick-track {
    margin-left: calc(var(--main-pad-lr) - .8rem); } }

@media only screen and (max-width: 37.5em) {
  .slick-track {
    margin-left: unset; } }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 16px 14px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #FFF; }

.hamburger-box {
  width: 20px;
  height: 15px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -0.5px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 20px;
    height: 1px;
    background-color: #FFF;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -7px; }
  .hamburger-inner::after {
    bottom: -7px; }

/*
   * 3DXY
   */
.hamburger--3dxy .hamburger-box {
  perspective: 40px; }

.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg); }
  .hamburger--3dxy.is-active .hamburger-inner::before {
    transform: translate3d(0, 7px, 0) rotate(45deg); }
  .hamburger--3dxy.is-active .hamburger-inner::after {
    transform: translate3d(0, -7px, 0) rotate(-45deg); }

footer {
  display: none !important; }

.qodef-footer-top-holder {
  background-color: #FFF !important;
  border-bottom: 2px solid #000 !important; }
  .qodef-footer-top-holder .footer-top-area-nk {
    display: none !important; }

.footer-top-area-nk-new {
  max-width: 1300px;
  margin: 0 auto;
  padding: 32px; }
  @media (max-width: 600px) {
    .footer-top-area-nk-new {
      padding: 1rem; } }
  .footer-top-area-nk-new .first-row img {
    width: 460px;
    display: block;
    height: auto; }
  .footer-top-area-nk-new .second-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 32px 0; }
    @media (max-width: 600px) {
      .footer-top-area-nk-new .second-row {
        flex-flow: column-reverse; } }
    .footer-top-area-nk-new .second-row .first-item {
      width: 50%;
      display: flex;
      justify-content: left; }
      @media (max-width: 600px) {
        .footer-top-area-nk-new .second-row .first-item {
          width: 100%;
          height: auto;
          margin-top: 1rem; } }
      .footer-top-area-nk-new .second-row .first-item img {
        height: 161px;
        display: block;
        width: auto; }
        @media (max-width: 600px) {
          .footer-top-area-nk-new .second-row .first-item img {
            height: auto; } }
    .footer-top-area-nk-new .second-row .second-item {
      width: 50%;
      display: flex;
      justify-content: right; }
      @media (max-width: 600px) {
        .footer-top-area-nk-new .second-row .second-item {
          width: 100%;
          justify-content: center; } }
      .footer-top-area-nk-new .second-row .second-item img {
        height: 164px;
        display: block;
        width: auto; }

#homepage-with-a-glance .vc_sep_holder .vc_sep_line {
  border-color: #000; }

#homepage-with-a-glance h4 {
  font-weight: bold;
  color: #FFF;
  font-family: inherit; }

#with-a-glance-row-content p {
  font-weight: 500 !important; }

#homepage-counter-info .qodef-counter-text {
  font-weight: 500;
  font-size: 1.5rem;
  color: #FFF; }

#homepage-counter-info .qodef-counter-holder .qodef-counter {
  color: #FFF !important; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YXN0eWxlLmNzcyIsInNvdXJjZXMiOlsibWV0YXN0eWxlLnNjc3MiLCJhYnN0cmFjdHMvX21peGlucy5zY3NzIiwiYWJzdHJhY3RzL192YXJpYWJsZXMuc2NzcyIsImJhc2UvX25vcm1hbGl6ZS5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fYmFzZS5zY3NzIiwiYmFzZS9fbW9kdWxlcy5zY3NzIiwiYmFzZS9fdXRpbGl0aWVzLnNjc3MiLCJjb21wb25lbnRzL3NsaWNrL19zbGljay5zY3NzIiwiY29tcG9uZW50cy9oYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2NzcyIsImNvbXBvbmVudHMvaGFtYnVyZ2Vycy9fYmFzZS5zY3NzIiwiY29tcG9uZW50cy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImxheW91dC9fZnJvbnQtcGFnZS5zY3NzIiwibGF5b3V0L19hYm91dC5zY3NzIiwibGF5b3V0L19jb250YWN0LnNjc3MiLCJsYXlvdXQvX3BvbGljeS5zY3NzIiwibGF5b3V0L19lcnJvci5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ2Fic3RyYWN0cy9taXhpbnMnO1xuQGltcG9ydCAnYWJzdHJhY3RzL3ZhcmlhYmxlcyc7XG5cbi8vQkFTRVxuQGltcG9ydCAnYmFzZS9ub3JtYWxpemUnO1xuQGltcG9ydCAnYmFzZS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Jhc2UvYmFzZSc7XG5AaW1wb3J0ICdiYXNlL21vZHVsZXMnO1xuXG4vL1VUSUxTXG5AaW1wb3J0ICdiYXNlL3V0aWxpdGllcyc7XG5cbi8vQ09NUE9ORU5UU1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGljay9zbGljayc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycyc7XG4vLyBAaW1wb3J0IFwiY29tcG9uZW50cy9oYW1idXJnZXJzL2Jhc2VcIjtcbi8vIEBpbXBvcnQgXCJjb21wb25lbnRzL2hhbWJ1cmdlcnMvdHlwZXMvM2R4eVwiO1xuXG4vL0xBWU9VVFxuQGltcG9ydCAnbGF5b3V0L2hlYWRlcic7XG5AaW1wb3J0ICdsYXlvdXQvZm9vdGVyJztcbkBpbXBvcnQgJ2xheW91dC9mcm9udC1wYWdlJztcbkBpbXBvcnQgJ2xheW91dC9hYm91dCc7XG5AaW1wb3J0ICdsYXlvdXQvY29udGFjdCc7XG5AaW1wb3J0ICdsYXlvdXQvcG9saWN5JztcbkBpbXBvcnQgJ2xheW91dC9lcnJvcic7XG5cbiIsIi8vIE1FRElBIFFVRVJZIE1BTkFHRVJcbi8qXG4gMCAgIC0gIDYwMCA6IFBob25lIDQwMC8xNiA8IDM3LjVlbVxuIDYwMCAtICA5MDAgOiBUYWJsZXQgNjAwLzE2IDwgNTYuMjVlbVxuIDkwMCAtIDEyMDAgOiBUYWJsZXQgbGFuZHNjYXBlIDYwMC8xNiA8IDc1ZW1cbjEyMDAgLSAgICAgIDogRGVza3RvcCAxMjAwLzE2ID4gNzVlbVxuXG4qL1xuXG5AbWl4aW4gbWluKCRicmVha3BvaW50KSB7XG4gICAgQGlmICRicmVha3BvaW50PT00MDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI1ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT02MDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTgwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTBlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTEwMDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyLjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTExMDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xMjAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09MTMwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTE2MDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9tYXggKGRlc2t0b3AgZmlyc3QpXG5AbWl4aW4gbWF4KCRicmVha3BvaW50KSB7XG4gICAgQGlmICRicmVha3BvaW50PT00MDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI1ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT02MDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PW1vYmlsZSB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09NzAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0My43NWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09ODAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09OTAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgQGlmICRicmVha3BvaW50PT05MDBsYW5kIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1Ni4yNWVtKSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTEwMDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYyLjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQGlmICRicmVha3BvaW50PT10YWJsZXQge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYyLjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTExMDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY4Ljc1ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xMjAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09dGFibGFuZCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTEzMDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgxLjI1ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xNDAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4Ny41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xNjAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDBlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTE4MDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExMi41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL2JldHdlZW4gKHNwZWNpYWwgb2NjYXNpb25zKVxuQG1peGluIGJldHdlZW4oJGJwbWluLCAkYnBtYXgpIHtcbiAgICBAaWYgJGJwbWluPT02MDAgYW5kICRicG1heD09ODAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNy41ZW0pIGFuZCAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnBtaW49PTYwMCBhbmQgJGJwbWF4PT05MDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3LjVlbSkgYW5kIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicG1pbj09NjAwIGFuZCAkYnBtYXg9PTEwMDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3LjVlbSkgYW5kIChtYXgtd2lkdGg6IDYyLjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJwbWluPT04MDAgYW5kICRicG1heD09MTAwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTBlbSkgYW5kIChtYXgtd2lkdGg6IDYyLjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vd2lkdGggJiBoZWlnaHQgcXVlcmllc1xuQG1peGluIG1pbldtYXhIKCR3bWluLCAkaG1heCkge1xuICAgIEBpZiAkd21pbj09MTAwMCBhbmQgJGhtYXggPT0gODAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2Mi41ZW0pIGFuZCAobWF4LWhlaWdodDogNTBlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBsYW5kc2NhcGUoJGhtYXgpIHtcbiAgICBAaWYgJGhtYXg9PTYwMCB7XG4gICAgICAgIEBtZWRpYSAobWF4LWhlaWdodDogMzcuNWVtKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpICB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5AbWl4aW4gZm9yLXNtYWxsLW1vYmlsZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM1MXB4KSB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBmb3ItbW9iaWxlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGZvci1tb2JpbGUtbGFuZHNjYXBlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gZm9yLXRhYmxldC1wb3J0cmFpdCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExODBweCkgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gZm9yLXRhYmxldC1sYW5kc2NhcGUge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGZvci1kZXNrdG9wIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTgwMHB4KSB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBmb3ItYmlnLWRlc2t0b3Age1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxODAxcHgpIHsgQGNvbnRlbnQ7IH1cbn1cbiIsIi8vUk9PVCBWQVJJQUJMRVNcbjpyb290IHtcbiAgICAtLXZoMTAwOiBjYWxjKDEwMHZoKTtcbiAgICAtLXZoMTAwLW9uY2U6IGNhbGMoMTAwdmgpO1xuICAgIC0tc2Nyb2xsYmFyLXdpZHRoOiAwO1xuXG5cbiAgICAtLWV4dHJhLWxhcmdlLWZvbnQ6IDUuMDYyNXJlbTsgLy84MXB4XG4gICAgLS1sYXJnZS1mb250OiAyLjYyNXJlbTsgLy80MnB4XG4gICAgLS1tZWRpdW0tZm9udDogMi4xODc1cmVtOyAvLzM1cHhcbiAgICAtLWJvZHktZm9udDogMS4zNzVyZW07IC8vMjJweFxuICAgIC0tc21hbGwtZm9udDogMC44NzVyZW07IC8vMTRweFxuXG4gICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XG4gICAgICAgIC0tYm9keS1mb250OiAxcmVtO1xuICAgICAgICAtLW1lZGl1bS1mb250OiAxLjI1cmVtOyAvLzIwcHhcbiAgICAgICAgLS1sYXJnZS1mb250OiAxLjg3NXJlbTsgLy8zMHB4XG4gICAgICAgIC0tZXh0cmEtbGFyZ2UtZm9udDogMi41cmVtOyAvLzQwcHhcbiAgICB9XG5cbn1cblxuXG4vL0NPTE9SU1xuJGJsYWNrOiAjMDAwO1xuJHdoaXRlOiAjRkZGO1xuJGdyZWVuOiAjMUFCRTc1O1xuJHllbGxvdzogI0ZGQ0IzMTtcbiRvcmFuZ2U6ICNkMjNmMGU7XG4kYmx1ZTogIzMyM2FkYztcbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5cbi8qIFNlY3Rpb25zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPSdidXR0b24nXSxcblt0eXBlPSdyZXNldCddLFxuW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPSdidXR0b24nXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPSdyZXNldCddOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9J3N1Ym1pdCddOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9J2J1dHRvbiddOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9J3Jlc2V0J106LW1vei1mb2N1c3JpbmcsXG5bdHlwZT0nc3VibWl0J106LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICpcdFx0YGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9J3NlYXJjaCddIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9J3NlYXJjaCddOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICBmb250OiBpbmhlcml0O1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLy9DVVNUT00gTk9STUFMSVpFXG4qLFxuKjo6YWZ0ZXIsXG4qOjpiZWZvcmUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmEsXG5hOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbn1cblxudWwgbGkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi8vIC8vIFRZUE9HUkFQSFlcbi8vIEBmb250LWZhY2Uge1xuLy8gICAgIGZvbnQtZmFtaWx5OiAnTWFicnkgUHJvJztcbi8vICAgICBzcmM6IHVybCguLi9mb250cy9NYWJyeVByby1SZWd1bGFyLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4vLyAgICAgICAgIHVybCguLi9mb250cy9NYWJyeVByby1SZWd1bGFyLndvZmYpIGZvcm1hdCgnd29mZicpO1xuLy8gICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4vLyAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuLy8gICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbi8vIH1cblxuXG4vLyBAZm9udC1mYWNlIHtcbi8vICAgICBmb250LWZhbWlseTogJ01hYnJ5IFBybyc7XG4vLyAgICAgc3JjOiB1cmwoLi4vZm9udHMvTWFicnlQcm8tQm9sZC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuLy8gICAgICAgICB1cmwoLi4vZm9udHMvTWFicnlQcm8tQm9sZC53b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbi8vICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4vLyAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbi8vICAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4vLyB9XG5cbi8vIEBmb250LWZhY2Uge1xuLy8gICAgIGZvbnQtZmFtaWx5OiAnQ0YgR2FyYW1vbmQnO1xuLy8gICAgIC8vIHNyYzogdXJsKC4uL2ZvbnRzL0NGR2FyYW1vbmQtUmVndWxhci53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuLy8gICAgIC8vICAgICB1cmwoLi4vZm9udHMvQ0ZHYXJhbW9uZC1SZWd1bGFyLndvZmYpIGZvcm1hdCgnd29mZicpO1xuLy8gICAgIHNyYzogdXJsKC4uL2ZvbnRzL0NGLUdhcmFtb25kLVJnLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4vLyAgICAgICAgIHVybCguLi9mb250cy9DRi1HYXJhbW9uZC1SZy53b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbi8vICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4vLyAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbi8vICAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4vLyB9XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQmFzaXMgR3JvdGVzcXVlIFBybyc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL3N1YnNldC1CYXNpc0dyb3Rlc3F1ZVByby1Cb2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3N1YnNldC1CYXNpc0dyb3Rlc3F1ZVByby1Cb2xkSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0Jhc2lzIEdyb3Rlc3F1ZSBQcm8nO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9zdWJzZXQtQmFzaXNHcm90ZXNxdWVQcm8tSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3N1YnNldC1CYXNpc0dyb3Rlc3F1ZVByby1JdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdCYXNpcyBHcm90ZXNxdWUgUHJvJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvc3Vic2V0LUJhc2lzR3JvdGVzcXVlUHJvLUJsYWNrLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3N1YnNldC1CYXNpc0dyb3Rlc3F1ZVByby1CbGFjay53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0Jhc2lzIEdyb3Rlc3F1ZSBQcm8gT2ZmIFdoaXRlJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvc3Vic2V0LUJhc2lzR3JvdGVzcXVlUHJvLU9mZldoaXRlLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3N1YnNldC1CYXNpc0dyb3Rlc3F1ZVByby1PZmZXaGl0ZS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0Jhc2lzIEdyb3Rlc3F1ZSBQcm8nO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9zdWJzZXQtQmFzaXNHcm90ZXNxdWVQcm8tQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9zdWJzZXQtQmFzaXNHcm90ZXNxdWVQcm8tQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdCYXNpcyBHcm90ZXNxdWUgUHJvJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvc3Vic2V0LUJhc2lzR3JvdGVzcXVlUHJvLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvc3Vic2V0LUJhc2lzR3JvdGVzcXVlUHJvLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn0iLCJodG1sIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuXHJcbiAgICBib2R5IHtcclxuICAgICAgICBmb250LWZhbWlseTogJ0Jhc2lzIEdyb3Rlc3F1ZSBQcm8nIWltcG9ydGFudDtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgfVxyXG59XHJcblxyXG4qIHtcclxuICAgIGEsc3BhbixkaXYscCxhLGJ1dHRvbiB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICdCYXNpcyBHcm90ZXNxdWUgUHJvJyFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQpIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLnFvZGVmLW1haW4tbWVudSB7XHJcbiAgICAmID4gdWwge1xyXG4gICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2UhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmg0LGgyIHtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tbWVkaXVtLWZvbnQpIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbmgxIHtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tbGFyZ2UtZm9udCk7XHJcbn1cclxuXHJcblxyXG4ud3BtbC1scy1zdGF0aWNzLWZvb3Rlci53cG1sLWxzLndwbWwtbHMtbGVnYWN5LWxpc3QtaG9yaXpvbnRhbCB7XHJcbiAgICB1bCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDFyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5wIHtcclxuICAgIHN0cm9uZyB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXh0LWNvbG9yLXdoaXRlIHtcclxuICAgIHAsaDIsaDEsaDMsaDQsaDUsaDYsYSxsaSx1bCB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5xb2RlZi10aXRsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi5xb2RlZi1ibG9nLWxpc3Qge1xyXG4gICAgbGkucW9kZWYtYmxvZy1saXN0LWl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5xb2RlZi1jb21tZW50LWhvbGRlciB7XHJcbiAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxufVxyXG5cclxuLnFvZGVmLXBvc3QtaW5mbyB7XHJcbiAgICAucW9kZWYtcG9zdC1pbmZvLWRhdGUge1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5xb2RlZi1wb3N0LWluZm8tY2F0ZWdvcnkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5xb2RlZi1wb3N0LWluZm8tYXV0aG9yIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5xb2RlZi1kcm9wLWRvd24ge1xyXG4gICAgLm5hcnJvdyB7XHJcbiAgICAgICAgLnNlY29uZCB7XHJcbiAgICAgICAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW1fdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5xb2RlZi10ZWFtLm1haW4taW5mby1iZWxvdy1pbWFnZSB7XHJcbiAgICAucW9kZWYtdGVhbS1pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn0gXHJcblxyXG4ucW9kZWYtbWFpbi1tZW51PnVsPmxpLnFvZGVmLWFjdGl2ZS1pdGVtPmEsIFxyXG5ib2R5Om5vdCgucW9kZWYtbWVudS1pdGVtLWZpcnN0LWxldmVsLWJnLWNvbG9yKSBcclxuLnFvZGVmLW1haW4tbWVudT51bD5saTpob3Zlcj5hIHtcclxuICAgIGNvbG9yOiAkd2hpdGUhaW1wb3J0YW50XHJcbn1cclxuXHJcbi5xb2RlZi1ibG9nLWhvbGRlciBhcnRpY2xlIC5xb2RlZi1wb3N0LWluZm8+ZGl2IHtcclxuICAgIGNvbG9yOiAkYmxhY2shaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucW9kZWYtYmxvZy1ob2xkZXIgeyBcclxuICAgIGFydGljbGUgeyBcclxuICAgICAgICAucW9kZWYtcG9zdC10ZXh0LWlubmVyIHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLy8vb3ZlcnJpZGVzXHJcblxyXG5ib2R5IHtcclxuICAgIC52Y19jdXN0b21fMTc1MDI5ODc4MjM3NCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudDtcclxuICAgIH1cclxufSIsIiIsIi8vVVRJTElUSUVTXG4vL3RleHQgb3B0aW9uc1xuLml0YWxpYyB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4udXBwZXIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5sb3dlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cblxuLmNhcCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi51bmRlcmxpbmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4udGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLnRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5cbi8vbGF5b3V0IG9wdGlvbnNcbi5tMC1hdXRvIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLy8gLmhhbGYtcGFnZSB7XG4vLyAgICAgQGluY2x1ZGUgbWluKDEwMDApIHtcbi8vICAgICAgICAgd2lkdGg6IGNhbGMoNTAlKTtcbi8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICAgICB0b3A6IDEuNHJlbTtcbi8vICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAvLyByaWdodDogJG1haW4tcGFkZGluZy1MUi1tO1xuLy8gICAgIH1cbi8vIH1cblxuLmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mbGV4LWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZmxleC1iZXR3ZWVuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmZsZXgtYmV0d2Vlbi1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LWNlbnRlci1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZsZXgtY29sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mbGV4LWNvbC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZmxleC1jb2wtYmV0d2Vlbi1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZsZXgtYnJlYWsge1xuICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgIGhlaWdodDogMDtcbn1cblxuLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG59XG5cbi5ncmlkLTEyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xuICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tY29sLWdhcCk7XG59XG5cbi8vb3ZlcmxheXNcbi5vdmVybGF5LWZhZGVpbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMCA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICAvLyB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDA7XG59XG5cbi5vdmVybGF5LWxlZnQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7IC8vJGhlYWRlci1oZWlnaHQtc207XG4gICAgbGVmdDogMDtcbiAgICAvLyByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgJi50cmFuc2Zvcm0teDAge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxufVxuXG5cbi5vdmVybGF5LXJpZ2h0IHtcblxuICAgIEBpbmNsdWRlIG1heCgxMDAwKSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwOyAvLyRoZWFkZXItaGVpZ2h0LXNtO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICB9XG59XG5cbi5vdmVybGF5LWZhZGVpbi5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDEwO1xufVxuXG4udHJhbnNmb3JtLXgwIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi50cmFuc2Zvcm1lZC15IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwcHgpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuN3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjdzIGVhc2UtaW47XG4gICAgXG4gICAgJi51bnJldmVhbGVkIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC43cyBlYXNlLWluLW91dCwgb3BhY2l0eSAuN3MgZWFzZS1pbjtcbiAgICB9XG4gICAgJi50cmFuc2Zvcm0tMCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5cbi5zZXF1ZW50aWFsID4gZGl2IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC43cyBlYXNlLWluLW91dCwgb3BhY2l0eSAuN3MgZWFzZS1pbjtcblxuICAgICYuc2hvdy50cmFuc2Zvcm0tMCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi5ldmVudHMge1xuICAgICYtbm9uZSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgICYtYXV0byB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cbn1cblxuLm92ZXJmbG93WS1oaWRkZW4ge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLmV2ZW50cy1ub25lLm92ZXJmbG93WS1oaWRkZW4ge1xuICAgIC8vIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtYXgoMTAwMCkge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG5cbi8vc2Nyb2xsc1xuLnNjcm9sbCB7XG4gICAgJi1jb250IHtcbiAgICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBtaW4oNjAwKSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS12aDEwMCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtaW4oMTAwMCkge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1pbm5lciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNjcm9sbGJhci13aWR0aCk7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS12aDEwMCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS1zY3JvbGxiYXItd2lkdGgpKTtcbiAgICB9XG59XG5cbi5zY3JvbGxiYXItbWVhc3VyZSB7XG5cdHdpZHRoOiAxMDBweDtcblx0aGVpZ2h0OiAxMDBweDtcblx0b3ZlcmZsb3c6IHNjcm9sbDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC05OTk5cHg7XG59XG5cbi5zdGlja3kge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgLy8gdG9wOiAkaGVhZGVyLWhlaWdodC1sO1xuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcblxuICAgIC8vIEBpbmNsdWRlIG1heCg2MDApIHtcbiAgICAvLyAgICAgcG9zaXRpb246IHVuc2V0O1xuICAgIC8vIH1cbn1cblxuXG4vL3Zpc2liaWxpdHlcbi5oaWRkZW4tdGl0bGUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubm9kaXNwbGF5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4uc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnVucmV2ZWFsZWQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgZWFzZS1pbjtcblxuICAgICYuc2hvdyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG4vL21lZGlhIHF1ZXJpZWQgc3R5bGVzXG4ubW9iaWxlLWhpZGRlbiB7XG4gICAgQGluY2x1ZGUgbWF4KDYwMCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLnRhYmxldC1oaWRkZW4ge1xuICAgIEBpbmNsdWRlIG1heCgxMDAwKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi50YWJsZXQtbGFuZC1oaWRkZW4ge1xuICAgIEBpbmNsdWRlIG1heCgxMjAwKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5tb2JpbGUtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1heCg2MDApIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4udGFibGV0LW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTAwMCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG4udGFibGV0LWxhbmQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn0iLCIvL1NMSUNLIENTUyBmaWxlXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXJcbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWxpc3RcbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG4uc2xpY2stbGlzdDpmb2N1c1xue1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG4uc2xpY2stbGlzdC5kcmFnZ2luZ1xue1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdFxue1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFja1xue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5zbGljay10cmFjazpiZWZvcmUsXG4uc2xpY2stdHJhY2s6YWZ0ZXJcbntcbiAgICBkaXNwbGF5OiB0YWJsZTtcblxuICAgIGNvbnRlbnQ6ICcnO1xufVxuLnNsaWNrLXRyYWNrOmFmdGVyXG57XG4gICAgY2xlYXI6IGJvdGg7XG59XG4uc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2tcbntcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGljay1zbGlkZVxue1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xufVxuW2Rpcj0ncnRsJ10gLnNsaWNrLXNsaWRlXG57XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuLnNsaWNrLXNsaWRlIGltZ1xue1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nXG57XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWdcbntcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGVcbntcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZVxue1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGVcbntcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIGhlaWdodDogYXV0bztcblxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuXG5cbi8vU0xJQ0sgT1ZFUlJJREVTXG4uc2xpY2sge1xuICAgIFxuICAgICYtc2xpZGVyLmhvdmVyIC5jaXR5LW11bHRpY2FyZC1jb250IHtcbiAgICAgICAgb3BhY2l0eTogLjU7XG5cbiAgICAgICAgJi5vdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi1zbGlkZSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmLWRpc2FibGVkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAmLXRyYWNrIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tbWFpbi1wYWQtbHIpIC0gMXJlbSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KHRhYmxldCkge1xuICAgICAgICAmLXRyYWNrIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLW1haW4tcGFkLWxyKSAtIC44cmVtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heChtb2JpbGUpIHtcbiAgICAgICAgJi10cmFjayB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBIYW1idXJnZXJzXG4gKiBAZGVzY3JpcHRpb24gVGFzdHkgQ1NTLWFuaW1hdGVkIGhhbWJ1cmdlcnNcbiAqIEBhdXRob3IgSm9uYXRoYW4gU3VoIEBqb25zdWhcbiAqIEBzaXRlIGh0dHBzOi8vam9uc3VoLmNvbS9oYW1idXJnZXJzXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vam9uc3VoL2hhbWJ1cmdlcnNcbiAqL1xuXG4vLyBTZXR0aW5nc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItcGFkZGluZy14ICAgICAgICAgICA6IDE0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLXBhZGRpbmcteSAgICAgICAgICAgOiAxNnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci13aWR0aCAgICAgICAgIDogMjBweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICAgICAgICA6IDFweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAgICAgICA6IDZweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItY29sb3IgICAgICAgICA6ICR3aGl0ZSAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyA6IDRweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAgICAgICA6IDAuNyAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yICA6ICRoYW1idXJnZXItbGF5ZXItY29sb3IgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgIWRlZmF1bHQ7XG5cblxuLy8gVG8gdXNlIENTUyBmaWx0ZXJzIGFzIHRoZSBob3ZlciBlZmZlY3QgaW5zdGVhZCBvZiBvcGFjaXR5LFxuLy8gc2V0ICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciBhcyB0cnVlIGFuZFxuLy8gY2hhbmdlIHRoZSB2YWx1ZSBvZiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciBhY2NvcmRpbmdseS5cbiRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciAgIDogZmFsc2UgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAgICAgICA6IG9wYWNpdHkoNTAlKSAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgIWRlZmF1bHQ7XG5cbi8vIFR5cGVzIChSZW1vdmUgb3IgY29tbWVudCBvdXQgd2hhdCB5b3UgZG9u4oCZdCBuZWVkKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItdHlwZXM6IChcbiAgM2R4LFxuICAzZHgtcixcbiAgM2R5LFxuICAzZHktcixcbiAgM2R4eSxcbiAgM2R4eS1yLFxuICBhcnJvdyxcbiAgYXJyb3ctcixcbiAgYXJyb3dhbHQsXG4gIGFycm93YWx0LXIsXG4gIGFycm93dHVybixcbiAgYXJyb3d0dXJuLXIsXG4gIGJvcmluZyxcbiAgY29sbGFwc2UsXG4gIGNvbGxhcHNlLXIsXG4gIGVsYXN0aWMsXG4gIGVsYXN0aWMtcixcbiAgZW1waGF0aWMsXG4gIGVtcGhhdGljLXIsXG4gIG1pbnVzLFxuICBzbGlkZXIsXG4gIHNsaWRlci1yLFxuICBzcGluLFxuICBzcGluLXIsXG4gIHNwcmluZyxcbiAgc3ByaW5nLXIsXG4gIHN0YW5kLFxuICBzdGFuZC1yLFxuICBzcXVlZXplLFxuICB2b3J0ZXgsXG4gIHZvcnRleC1yXG4pICFkZWZhdWx0O1xuXG4vLyBCYXNlIEhhbWJ1cmdlciAoV2UgbmVlZCB0aGlzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vIEhhbWJ1cmdlciB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEBpbXBvcnQgXCJ0eXBlcy8zZHhcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy8zZHgtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzLzNkeVwiO1xuLy8gQGltcG9ydCBcInR5cGVzLzNkeS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4eVwiO1xuLy8gQGltcG9ydCBcInR5cGVzLzNkeHktclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2Fycm93XCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYXJyb3ctclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2Fycm93YWx0XCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYXJyb3dhbHQtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2Fycm93dHVyblwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2Fycm93dHVybi1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYm9yaW5nXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvY29sbGFwc2VcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZS1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvZWxhc3RpY1wiO1xuLy8gQGltcG9ydCBcInR5cGVzL2VsYXN0aWMtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2VtcGhhdGljXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvZW1waGF0aWMtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL21pbnVzXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc2xpZGVyXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc2xpZGVyLXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zcGluXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc3Bpbi1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc3ByaW5nXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc3ByaW5nLXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zdGFuZFwiO1xuLy8gQGltcG9ydCBcInR5cGVzL3N0YW5kLXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zcXVlZXplXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvdm9ydGV4XCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvdm9ydGV4LXJcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvb2tpbmcgdXAgYWRkaXRpb25hbCB0eXBlczpcbi8vXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXG4vLyBpbnNpZGUgYW4gQGlmIGRpcmVjdGl2ZSB0byBjaGVjayB3aGV0aGVyIG9yIG5vdFxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cbi8vXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3Ncbi8vXG4vLyBAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbmV3LXR5cGUpIHtcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xuLy8gICAgIC4uLlxuLy8gICB9XG4vLyB9XG4iLCIvLyBIYW1idXJnZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogJGhhbWJ1cmdlci1wYWRkaW5nLXkgJGhhbWJ1cmdlci1wYWRkaW5nLXg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cbiAgLy8gTm9ybWFsaXplICg8YnV0dG9uPilcbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gIC8vICY6aG92ZXIge1xuICAvLyAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gIC8vICAgICBmaWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyO1xuICAvLyAgIH1cbiAgLy8gICBAZWxzZSB7XG4gIC8vICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIC8vICY6aG92ZXIge1xuICAgIC8vICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAvLyAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI7XG4gICAgLy8gICB9XG4gICAgLy8gICBAZWxzZSB7XG4gICAgLy8gICAgIG9wYWNpdHk6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk7XG4gICAgLy8gICB9XG4gICAgLy8gfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lcixcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5oYW1idXJnZXItYm94IHtcbiAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAzICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gLTI7XG5cbiAgJixcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICB9XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYm90dG9tOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5KSB7XG4gIC8qXG4gICAqIDNEWFlcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeHkge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiIsImZvb3RlciB7XHJcbiAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxufVxyXG5cclxuLnFvZGVmLWZvb3Rlci10b3AtaG9sZGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJsYWNrIWltcG9ydGFudDtcclxuXHJcbiAgICAuZm9vdGVyLXRvcC1hcmVhLW5rIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmZvb3Rlci10b3AtYXJlYS1uay1uZXcge1xyXG4gICAgbWF4LXdpZHRoOiAxMzAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6IDMycHg7XHJcbiAgICAvLyBib3JkZXItYm90dG9tOiAycHggc29saWQgYmxhY2s7XHJcbiAgICAvLyBib3JkZXItdG9wOiAycHggc29saWQgYmxhY2s7XHJcblxyXG4gICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgcGFkZGluZzogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuZmlyc3Qtcm93IHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogNDYwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIC8vIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2Vjb25kLXJvdyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW46IDMycHggMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uLXJldmVyc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmlyc3QtaXRlbSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG4gICAgICAgICAgICB9IFxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTYxcHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlY29uZC1pdGVtIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiByaWdodDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTY0cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiI2hvbWVwYWdlLXdpdGgtYS1nbGFuY2Uge1xyXG4gICAgLnZjX3NlcF9ob2xkZXIge1xyXG4gICAgICAgIC52Y19zZXBfbGluZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbiN3aXRoLWEtZ2xhbmNlLXJvdy1jb250ZW50IHtcclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4jaG9tZXBhZ2UtY291bnRlci1pbmZvIHtcclxuICAgIC5xb2RlZi1jb3VudGVyLXRleHQge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICAucW9kZWYtY291bnRlci1ob2xkZXIge1xyXG4gICAgICAgIC5xb2RlZi1jb3VudGVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiIiwiIiwiIiwiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQ0NBOzs7Ozs7RUFNRTtBQ05GLEFBQUEsS0FBSyxDQUFDO0VBQ0YsT0FBTyxDQUFBLFlBQUM7RUFDUixZQUFZLENBQUEsWUFBQztFQUNiLGlCQUFpQixDQUFBLEVBQUM7RUFHbEIsa0JBQWtCLENBQUEsVUFBQztFQUNuQixZQUFZLENBQUEsU0FBQztFQUNiLGFBQWEsQ0FBQSxVQUFDO0VBQ2QsV0FBVyxDQUFBLFNBQUM7RUFDWixZQUFZLENBQUEsU0FBQyxHQVNoQjtFRDZMRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SUNoTjVCLEFBQUEsS0FBSyxDQUFDO01BYUUsV0FBVyxDQUFBLEtBQUM7TUFDWixhQUFhLENBQUEsUUFBQztNQUNkLFlBQVksQ0FBQSxTQUFDO01BQ2Isa0JBQWtCLENBQUEsT0FBQyxHQUcxQjs7QUNwQkQsNEVBQTRFO0FBRTVFOytFQUMrRTtBQUUvRTs7O0dBR0c7QUFFSCxBQUFBLElBQUksQ0FBQztFQUNELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLHdCQUF3QixFQUFFLElBQUksR0FDakM7O0FBRUQ7K0VBQytFO0FBRS9FOztHQUVHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDRCxNQUFNLEVBQUUsQ0FBQyxHQUNaOztBQUVEOztHQUVHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDRCxPQUFPLEVBQUUsS0FBSyxHQUNqQjs7QUFFRDs7O0dBR0c7QUFFSCxBQUFBLEVBQUUsQ0FBQztFQUNDLFNBQVMsRUFBRSxHQUFHO0VBQ2QsTUFBTSxFQUFFLFFBQVEsR0FDbkI7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 */
