@charset "UTF-8";
/*! 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.
 */
@import url("https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* 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 {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

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

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

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

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: 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;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

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

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

:root {
  --color-white: #FFFFFF;
  --color-black: #000000;
  --color-dark: #1C1B2A;
  --color-main: #fff323;
  --bg: #fffdf9;
  --font: 'Fira Sans';
  --trds: 0.25s;
  --font-h1-weight: 600;
  --font-h1-size: 40px;
  --font-h1-line: 100%;
  --font-h2-weight: 600;
  --font-h2-size: 35px;
  --font-h2-line: auto;
  --font-h3-weight: 600;
  --font-h3-size: 30px;
  --font-h3-line: auto; }
  @media (max-width: 1230px) {
    :root {
      --font-h1-size: 30px;
      --font-h2-size: 25px;
      --font-h3-size: 20px; } }
  @media (max-width: 992px) {
    :root {
      --font-h1-size: 30px;
      --font-h1-line: 120%; } }

html {
  min-height: 100%;
  height: 100%; }

body {
  font: 300 16px/125% var(--font);
  color: var(--color-black);
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  min-width: 300px;
  min-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 767px) {
    body {
      padding-top: 108px; } }
  body.fixed {
    overflow: hidden; }

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

ul,
ol {
  list-style: none;
  padding: 0; }

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0; }

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto; }

img {
  max-width: 100%;
  display: block; }

input,
button,
textarea,
select {
  font: inherit;
  width: 100%; }

/* Удаляем все анимации и переходы для людей, которые предпочитай их не использовать */
@media (prefers-reduced-motion: reduce) {
  * {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
         -o-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important; } }

audio,
canvas,
iframe,
img,
svg,
video,
textarea {
  vertical-align: middle; }

textarea {
  resize: none; }

section {
  position: relative; }

input,
select,
button {
  outline: none; }

.d-f {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.a-c {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.j-c {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

a {
  color: var(--color-blue); }
  a:hover {
    text-decoration: none; }

p {
  margin-bottom: 15px; }

.btn {
  font-weight: 500;
  font-size: 18px;
  line-height: normal;
  color: var(--color-white);
  padding: 16px 24px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
  -webkit-transition-duration: var(--trds);
       -o-transition-duration: var(--trds);
          transition-duration: var(--trds);
  cursor: pointer;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: var(--color-main);
  white-space: nowrap;
  line-height: normal;
  font-family: var(--font-add); }
  .btn img, .btn svg {
    width: 20px;
    height: 20px;
    margin-right: 16px; }
    .btn img path, .btn svg path {
      stroke: var(--color-white); }
  .btn:hover {
    background: var(--color-main-light); }
  .btn.btn--transparent {
    color: var(--color-main);
    background: transparent;
    border: 2px solid var(--color-main); }
    .btn.btn--transparent:hover {
      background: var(--color-main-light);
      border: 2px solid var(--color-main-light);
      color: var(--color-white); }
  .btn.btn--white {
    color: #B7BBC3;
    background: var(--color-white);
    border-color: var(--color-white);
    color: var(--color-black); }
    .btn.btn--white:hover {
      background: transparent;
      color: var(--color-white); }
  .btn.btn--invert {
    color: var(--color-orange);
    background: var(--color-white);
    border-color: var(--color-orange); }
    .btn.btn--invert:hover {
      background: var(--color-orange);
      color: var(--color-white); }

.input {
  border-radius: 4px;
  border: none;
  border-right: none;
  height: 50px;
  padding: 13px 30px;
  font-family: "Jost"; }
  @media (max-width: 1230px) {
    .input {
      height: 40px;
      padding: 10px 17px;
      font-size: 15px; } }
  .input::-webkit-input-placeholder {
    color: #000; }
  .input:-moz-placeholder {
    color: #000; }
  .input::-moz-placeholder {
    color: #000; }
  .input:-ms-input-placeholder {
    color: #000; }

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

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

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

.color--orange {
  color: var(--color-orange); }

.color--blue {
  color: var(--color-blue); }

.color--white {
  color: var(--color-white); }

.color--gray {
  color: var(--color-gray); }

.hidden {
  display: none !important; }

.hidden--dekstop {
  display: none; }
  @media (max-width: 992px) {
    .hidden--dekstop {
      display: block; } }

.hidden--tablet {
  display: block; }
  @media (max-width: 992px) {
    .hidden--tablet {
      display: none; } }

h1, .h1 {
  font-size: var(--font-h1-size);
  font-weight: var(--font-h1-weight);
  line-height: var(--font-h1-line); }

h2, .h2 {
  font-size: var(--font-h2-size);
  font-weight: var(--font-h2-weight);
  line-height: var(--font-h2-line); }

h3, .h2 {
  font-size: var(--font-h3-size);
  font-weight: var(--font-h3-weight);
  line-height: var(--font-h3-line); }

.wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100%; }

.container {
  margin: 0 auto;
  max-width: 1160px;
  width: 100%;
  padding: 0 15px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.section__title {
  line-height: normal;
  margin-bottom: 40px;
  position: relative;
  font-weight: 600;
  font-size: 40px;
  line-height: 115%;
  font-family: var(--font-add); }
  @media (max-width: 1330px) {
    .section__title {
      font-size: 42px; } }
  @media (max-width: 1230px) {
    .section__title {
      font-size: 40px; } }
  @media (max-width: 992px) {
    .section__title {
      font-size: 37px;
      margin-bottom: 30px; } }
  @media (max-width: 767px) {
    .section__title {
      font-size: 26px;
      margin-bottom: 30px; } }
  .section__title.section__title--line {
    padding-bottom: 20px; }
    .section__title.section__title--line::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0%;
      width: 240px;
      height: 1px;
      background: var(--color-yellow); }

.overlay {
  display: none;
  background: rgba(20, 22, 35, 0.25);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

.popup__thanks {
  border-radius: 8px;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0);
      -ms-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
  _-webkit-transform: translate(-50%, -50%);
  _    -ms-transform: translate(-50%, -50%);
  _        transform: translate(-50%, -50%);
  padding: 32px;
  z-index: 101;
  width: 80%;
  max-width: 536px;
  max-height: 90%;
  _opacity: 0;
  _visibility: hidden;
  -webkit-box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.2);
  background: url(../images/general/bg.webp) center top var(--bg);
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .popup__thanks.open {
    -webkit-transform: translate(-50%, -50%) scale(1);
        -ms-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
    visibility: visible; }

.popup {
  border-radius: 8px;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0);
      -ms-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
  _-webkit-transform: translate(-50%, -50%);
  _    -ms-transform: translate(-50%, -50%);
  _        transform: translate(-50%, -50%);
  padding: 32px;
  z-index: 101;
  width: 80%;
  max-width: 536px;
  max-height: 90%;
  _opacity: 0;
  _visibility: hidden;
  -webkit-box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.2);
  background: url(../images/general/bg.webp) center top var(--bg);
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .popup .error_files {
    margin-bottom: 0;
    line-height: normal; }
    .popup .error_files .error {
      font-size: 14px;
      line-height: normal; }
  .popup .form {
    display: block;
    max-height: 100%;
    overflow-x: auto;
    padding-right: 5px;
    margin-right: -5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    .popup .form::-webkit-scrollbar {
      width: 6px;
      height: 6px; }
    .popup .form::-webkit-scrollbar-thumb {
      background: #F49700;
      border-radius: 4px;
      cursor: pointer; }
    .popup .form::-webkit-scrollbar-track {
      background: #eee; }
    .popup .form {
      scrollbar-face-color: #F49700;
      scrollbar-track-color: #eee; }
  @media (max-width: 992px) {
    .popup {
      padding: 30px;
      width: 90%; } }
  @media (max-width: 767px) {
    .popup {
      padding: 20px; } }
  .popup.open {
    -webkit-transform: translate(-50%, -50%) scale(1);
        -ms-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
    visibility: visible; }

.popup__title {
  margin-bottom: 21px;
  font-size: 30px;
  line-height: normal;
  font-weight: 400; }

.popup__desc {
  font-size: 20px;
  margin-bottom: 16px;
  font-weight: 300;
  line-height: 150%; }
  .popup__desc a {
    position: relative;
    text-decoration: none;
    color: var(--color-main);
    border-bottom: 1px solid var(--color-main);
    -webkit-transition-duration: var(--trds);
         -o-transition-duration: var(--trds);
            transition-duration: var(--trds); }
    .popup__desc a:hover {
      border-color: transparent; }

.popup__close {
  position: absolute;
  top: 16px;
  right: 16px;
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s;
  font-weight: 300;
  text-decoration: none;
  width: 24px;
  height: 24px; }
  .popup__close svg, .popup__close img {
    display: block;
    width: 24px;
    height: 24px; }

.popup__label {
  display: block; }
  .popup__label + .popup__label {
    margin-top: 20px; }
  .popup__label.error .error__label {
    display: block; }
  .popup__label.error .popup__input, .popup__label.error .popup__textarea {
    border-color: #ff0000; }

.error__label {
  margin-top: 8px;
  color: #ff0000;
  font-size: 12px;
  line-height: 130%;
  display: none; }

.popup__textarea {
  height: 157px;
  border: none;
  padding: 10px;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  color: #515061;
  font-weight: 300;
  font-size: 20px;
  line-height: 150%;
  resize: none;
  outline: none; }
  @media (max-width: 992px) {
    .popup__textarea {
      font-size: 16px; } }

.popup__input {
  height: 48px;
  border: none;
  padding: 10px;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  color: #515061;
  font-weight: 300;
  font-size: 20px;
  line-height: 150%; }
  .popup__input.error {
    color: #000;
    border-color: #ff0000; }
  @media (max-width: 992px) {
    .popup__input {
      font-size: 16px; } }

.popup__btn-close {
  width: 100%; }

.popup__check {
  width: 62px;
  height: 62px;
  margin-bottom: 30px; }
  .popup__check svg {
    width: 62px;
    height: 62px; }

.popup-form__btn {
  margin-top: 20px;
  border: none;
  -ms-flex-item-align: end;
      align-self: flex-end;
  width: auto; }

#jGrowl button {
  width: auto; }

.jGrowl-notification .ui-state-highlight {
  color: #fff !important; }

.grecaptcha-badge {
  opacity: 0;
  visibility: hidden;
  z-index: -100; }

.load {
  background: #fff;
  -webkit-transition-duration: var(--trds);
       -o-transition-duration: var(--trds);
          transition-duration: var(--trds);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100; }
  .load.hide {
    visibility: visible;
    opacity: 0; }

.footer {
  height: 80px;
  background: var(--color-main); }

@media (max-width: 767px) {
  .section__bar {
    position: fixed;
    z-index: 5;
    left: 0;
    right: 0;
    top: 0; } }

.bar__top {
  background: var(--color-main);
  padding-top: 15px;
  padding-bottom: 15px; }
  .bar__top .container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 767px) {
      .bar__top .container {
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end; } }

.top__logo {
  position: absolute;
  display: block;
  top: 0px;
  left: 15px; }
  .top__logo img {
    width: 100px; }
    @media (max-width: 767px) {
      .top__logo img {
        width: 60px; } }

.top__contacts {
  position: absolute;
  right: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-weight: 500; }
  @media (max-width: 767px) {
  .top__contacts {
    display: none;}
}

.top__phone {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-weight: 600;
  line-height: normal;
  font-size: 20px;
}

.phone__link {
  text-decoration: none;}

.top__contacts {
  font-size: 12px;
  line-height: normal; }

.bar__bottom {
  background: var(--color-black); }
  .bar__bottom .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media (max-width: 767px) {
      .bar__bottom .container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }

.nav__open {
  color: var(--color-white);
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 18px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  display: none; }
  .nav__open.open > span {
    margin-top: -4px; }
    .nav__open.open > span span:nth-child(1) {
      -webkit-transform: rotate(45deg) translateY(8px) translateX(8px);
          -ms-transform: rotate(45deg) translateY(8px) translateX(8px);
              transform: rotate(45deg) translateY(8px) translateX(8px); }
    .nav__open.open > span span:nth-child(2) {
      -webkit-transform: rotate(-45deg) translateY(-5px) translateX(5px);
          -ms-transform: rotate(-45deg) translateY(-5px) translateX(5px);
              transform: rotate(-45deg) translateY(-5px) translateX(5px); }
    .nav__open.open > span span:nth-child(3) {
      display: none; }
  @media (max-width: 767px) {
    .nav__open {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  .nav__open > span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 20px;
    height: 20px; }
    .nav__open > span span {
      display: block;
      width: 100%;
      height: 2px;
      background: var(--color-white);
      -webkit-transition-duration: var(--trds);
           -o-transition-duration: var(--trds);
              transition-duration: var(--trds); }

.nav {
  padding-top: 20px;
  padding-bottom: 20px; }
  @media (max-width: 767px) {
    .nav {
      padding-top: 0px;
      padding-bottom: 0px; } }

.nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 45px; }
  @media (max-width: 767px) {
    .nav__list {
      display: none;
      padding-top: 25px;
      padding-bottom: 25px; }
      .nav__list .nav__item + .nav__item {
        margin-top: 15px; } }

.nav__link {
  color: var(--color-white);
  font-weight: 500;
  text-decoration: none;
  position: relative; }
  .nav__link:hover::after {
    width: 50%; }
  .nav__link:hover::before {
    width: 50%; }
  .nav__link::after {
    content: '';
    height: 1px;
    width: 0;
    left: 50%;
    bottom: 0;
    background: var(--color-main);
    position: absolute;
    -webkit-transition-duration: var(--trds);
         -o-transition-duration: var(--trds);
            transition-duration: var(--trds); }
  .nav__link::before {
    content: '';
    height: 1px;
    width: 0;
    right: 50%;
    bottom: 0;
    background: var(--color-main);
    position: absolute;
    -webkit-transition-duration: var(--trds);
         -o-transition-duration: var(--trds);
            transition-duration: var(--trds); }

.nav__float {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10; }
  .nav__float .container {
    position: relative; }

.bar__float {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: var(--color-main);
  border-bottom: 2px solid var(--color-yellow);
  z-index: 30;
  height: 80px;
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s;
  _opacity: 0;
  _visibility: hidden;
  -webkit-transition-duration: .25s;
       -o-transition-duration: .25s;
          transition-duration: .25s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 992px) {
    .bar__float {
      height: 100px; } }
  @media (max-width: 576px) {
    .bar__float {
      height: 80px; } }
  .bar__float .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative; }

.bar__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  text-decoration: none;
  margin-right: 30px;
  position: relative; }
  @media (max-width: 1130px) {
    .bar__logo {
      margin-right: 20px; } }
  @media (max-width: 767px) {
    .bar__logo {
      margin-right: 10px; } }
  .bar__logo::after {
    content: '';
    height: 50px;
    width: 1px;
    background: var(--color-yellow);
    margin-left: 30px;
    opacity: .2;
    min-width: 1px;
    margin-right: 2px; }
    @media (max-width: 767px) {
      .bar__logo::after {
        margin-left: 10px; } }

.bar-logo__img {
  height: 60px;
  -webkit-transition-duration: .25s;
       -o-transition-duration: .25s;
          transition-duration: .25s; }
  @media (max-width: 1550px) {
    .bar-logo__img {
      height: 50px; } }
  @media (max-width: 1230px) {
    .bar-logo__img {
      height: 60px; } }

.bar-logo__img--mobile {
  width: 120px;
  min-width: 120px; }

.bar__contacts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 10px; }

.bar-contacts__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  text-align: right; }

.bar__phone {
  text-decoration: none;
  font-weight: 700;
  font-size: 20px;
  line-height: normal; }
  .bar__phone svg, .bar__phone img {
    width: 25px;
    height: 25px;
    stroke: var(--color-white);
    display: none; }
    @media (max-width: 767px) {
      .bar__phone svg, .bar__phone img {
        display: block; } }
  @media (max-width: 767px) {
    .bar__phone {
      height: 35px;
      padding-left: 0px;
      padding-right: 0px;
      width: 35px;
      min-width: 35px;
      font-size: 0;
      background: var(--color-yellow);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      border-radius: 5px; } }

.bar__timework {
  font-size: 14px;
  line-height: 16px;
  margin-bottom: 3px; }
  @media (max-width: 767px) {
    .bar__timework {
      position: absolute;
      top: -15px;
      right: 20px; } }
  @media (max-width: 576px) {
    .bar__timework {
      display: none; } }

.bar__adress {
  font-size: 14px;
  line-height: 16px;
  text-decoration: none;
  border-bottom: 1px dashed var(--color-yellow);
  -webkit-transition-duration: var(--trds);
       -o-transition-duration: var(--trds);
          transition-duration: var(--trds); }
  .bar__adress:hover {
    border-color: transparent; }
  @media (max-width: 1550px) {
    .bar__adress {
      font-size: 12px; } }
  @media (max-width: 1230px) {
    .bar__adress {
      font-size: 11px; } }
  @media (max-width: 767px) {
    .bar__adress {
      position: absolute;
      bottom: -15px;
      right: 20px; } }
  @media (max-width: 576px) {
    .bar__adress {
      display: none; } }

.bar__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 1330px) {
    .bar__buttons {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-left: 20px; } }
  @media (max-width: 1130px) {
    .bar__buttons {
      display: none; } }
  @media (max-width: 767px) {
    .bar__buttons {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      margin-top: 25px;
      margin-left: 10px; } }

.bar__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 20px; }
  @media (max-width: 1550px) {
    .bar__button {
      font-size: 11px; } }
  .bar__button:hover svg, .bar__button:hover img {
    stroke: var(--color-orange); }
  @media (max-width: 767px) {
    .bar__button {
      height: 40px;
      padding-left: 0px;
      padding-right: 0px;
      width: 40px;
      min-width: 40px; } }
  @media (max-width: 767px) {
    .bar__button span {
      display: none; } }
  .bar__button.btn--transparenty:hover svg, .bar__button.btn--transparenty:hover img {
    stroke: var(--color-white); }
  .bar__button.btn--transparenty svg, .bar__button.btn--transparenty img {
    stroke: var(--color-orange); }
  @media (max-width: 1330px) {
    .bar__button {
      width: 100%;
      margin-left: 0; }
      .bar__button + .bar__button {
        margin-left: 0;
        margin-top: 5px; } }
    @media (max-width: 1330px) and (max-width: 767px) {
      .bar__button + .bar__button {
        margin-top: 0;
        margin-left: 10px; } }

.bar__menu {
  width: 35px;
  height: 35px;
  margin-left: 10px;
  display: none;
  min-width: 35px; }
  @media (max-width: 992px) {
    .bar__menu {
      width: 35px;
      height: 35px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      border-radius: 5px;
      background: var(--color-yellow);
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 5px;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .bar__menu span {
        height: 2px;
        background: var(--color-white);
        width: 20px; } }

@media (max-width: 992px) {
  .bar__nav {
    display: none; } }

.bar-nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.bar-nav__item {
  white-space: nowrap;
  position: relative; }
  .bar-nav__item + .bar-nav__item {
    margin-left: 30px; }
    @media (max-width: 1550px) {
      .bar-nav__item + .bar-nav__item {
        margin-left: 15px; } }
  .bar-nav__item:hover .bar-nav__link {
    color: var(--color-orange); }
  .bar-nav__item.parent .bar-nav__link::after {
    content: '›';
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
    width: 20px;
    height: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 2px;
    margin-left: 2px; }
    @media (max-width: 1230px) {
      .bar-nav__item.parent .bar-nav__link::after {
        margin-top: 0; } }
  .bar-nav__item.parent:hover > .child-nav__list {
    opacity: 1;
    visibility: visible;
    margin-top: 0; }

.bar-nav__link {
  font-size: 16px;
  text-decoration: none;
  color: var(--color-black);
  line-height: normal;
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s;
  padding-top: 11px;
  padding-bottom: 11px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 700; }
  @media (max-width: 1550px) {
    .bar-nav__link {
      font-size: 14px; } }
  @media (max-width: 1230px) {
    .bar-nav__link {
      font-size: 12px; } }
  .bar-nav__link:hover {
    color: var(--color-orange); }

.child-nav__list {
  position: absolute;
  left: 0;
  top: 100%;
  padding: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 5px;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  background: #FFF;
  opacity: 0;
  visibility: hidden;
  margin-top: 15px;
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s; }
  .child-nav__list .bar-nav__item {
    margin: 0; }
  .child-nav__list .child-nav__list {
    top: 0;
    left: 100%;
    margin-top: -15px;
    margin-left: 15px; }

.child-nav__item {
  position: relative; }
  .child-nav__item:hover > .child-nav__link {
    color: var(--color-orange); }
  .child-nav__item.parent > .child-nav__link::after {
    content: '›';
    width: 20px;
    height: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 2px;
    margin-left: 2px; }
  .child-nav__item.parent:hover > .child-nav__list {
    opacity: 1;
    visibility: visible;
    margin-left: 0px;
    margin-top: -15px; }

.child-nav__link {
  font-size: 16px;
  text-decoration: none;
  color: var(--color-black);
  line-height: normal;
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 4px;
  padding-bottom: 4px; }
  .child-nav__link:hover {
    color: var(--color-orange); }

.nav__mobile {
  background: #fff;
  padding: 40px;
  position: fixed;
  z-index: 10;
  top: 120px;
  position: absolute;
  right: 0;
  width: 100%;
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  opacity: 0;
  -webkit-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25); }
  @media (max-width: 992px) {
    .nav__mobile {
      top: 81px; } }
  @media (max-width: 767px) {
    .nav__mobile {
      width: 100%; } }
  .nav__mobile.open {
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
    opacity: 1; }

.nav-mobile__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.nav-mobile__item + .nav-mobile__item {
  margin-top: 24px; }

.nav-mobile__item.nav-mobile__item--order .nav-mobile__link {
  position: relative; }
  .nav-mobile__item.nav-mobile__item--order .nav-mobile__link:hover {
    color: var(--color-yellow); }
    .nav-mobile__item.nav-mobile__item--order .nav-mobile__link:hover::after {
      background: var(--color-black); }
  .nav-mobile__item.nav-mobile__item--order .nav-mobile__link::after {
    content: '';
    position: absolute;
    height: 6px;
    bottom: -3px;
    width: 100%;
    right: 0;
    background: var(--color-yellow);
    -webkit-transition-duration: 0.25s;
         -o-transition-duration: 0.25s;
            transition-duration: 0.25s; }
    @media (max-width: 992px) {
      .nav-mobile__item.nav-mobile__item--order .nav-mobile__link::after {
        height: 3px; } }
    @media (max-width: 767px) {
      .nav-mobile__item.nav-mobile__item--order .nav-mobile__link::after {
        height: 3px; } }

.nav-mobile__link {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 1.44px;
  text-decoration: none;
  -webkit-transition-duration: 0.25s;
       -o-transition-duration: 0.25s;
          transition-duration: 0.25s;
  color: var(--color-main); }
  .nav-mobile__link:hover {
    color: var(--color-yellow); }

.nav-mobile__info {
  font-size: 14px;
  font-weight: 300;
  line-height: normal;
  margin-top: 38px; }

.open__menu {
  display: none;
  width: 30px;
  height: 21px;
  z-index: 3;
  top: 70px;
  right: 40px; }
  @media (max-width: 992px) {
    .open__menu {
      position: absolute;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  @media (max-width: 767px) {
    .open__menu {
      right: 32px;
      top: 42px; } }
  .open__menu:hover svg, .open__menu.open svg {
    fill: var(--color-yellow); }
  .open__menu svg {
    width: 40px;
    height: 28px;
    fill: var(--color-white);
    -webkit-transition-duration: 0.25s;
         -o-transition-duration: 0.25s;
            transition-duration: 0.25s; }

.section__services {
  padding-top: 25px;
  padding-bottom: 80px;
  background: url(../images/general/services_bg.jpg) no-repeat center/cover;
  position: relative; }
  .section__services .container {
    position: relative;
    z-index: 2; }
  .section__services::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(32, 44, 68, 0.79); }

.services__title {
  font-size: var(--font-h1-size);
  font-weight: var(--font-h1-weight);
  text-align: center;
  color: var(--color-white);
  line-height: normal;
  margin-bottom: 25px; }

.services__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px; }
  @media (max-width: 992px) {
    .services__list {
      grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 576px) {
    .services__list {
      grid-template-columns: repeat(1, 1fr); } }

.services__item {
  background: var(--color-white);
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media (max-width: 992px) {
    .services__item {
      padding: 15px; } }

.services__img {
  margin-bottom: 20px;
  display: block; }
  .services__img img {
    display: block;
    width: 100%; }

.services__name {
  font-weight: 600;
  margin-bottom: 20px;
  font-size: 20px; }
  @media (max-width: 576px) {
    .services__name {
      font-size: 16px; } }

.services__link {
  background: var(--color-main);
  text-decoration: none;
  font-size: 14px;
  display: block;
  padding: 3px 8px;
  -ms-flex-item-align: end;
      align-self: flex-end;
  -webkit-transition-duration: var(--trds);
       -o-transition-duration: var(--trds);
          transition-duration: var(--trds); }
  .services__link:hover {
    background: var(--color-black);
    color: var(--color-main); }

.section__about {
  margin-top: -45px;
  position: relative;
  z-index: 2; }
  .section__about .container {
    display: grid;
    grid-template-columns: 1fr; }
    @media (max-width: 767px) {
      .section__about .container {
        grid-template-columns: 1fr; } }

.about__desc {
  background: var(--color-main);
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 25px; }

.about-desc__subtitle {
  font-weight: 500; }

.about-desc__title {
  font-size: var(--font-h2-size);
  font-weight: var(--font-h2-weight);
  line-height: normal;
  margin-top: -10px; }

.about-desc__img {
  display: block;
  width: 100%; }

.about__icons {
  background: var(--color-white);
  padding: 50px; }
  @media (max-width: 992px) {
    .about__icons {
      padding: 50px 25px; } }

.icons__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 100px 25px; }
  @media (max-width: 992px) {
    .icons__list {
      grid-template-columns: 1fr;
      gap: 25px; } }

.icon__item {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 15px; }
  @media (max-width: 992px) {
    .icon__item {
      grid-template-columns: 40px 1fr;
      gap: 10px; } }

.icon__value {
  font-size: 14px; }

.icon__num {
  font-size: 30px;
  font-weight: 700;
  white-space: nowrap;
  line-height: normal; }
  @media (max-width: 992px) {
    .icon__num {
      font-size: 20px; } }

.section__work {
  padding-top: 80px;
  padding-bottom: 25px;
  background: url(../images/general/services_bg.jpg) no-repeat center/cover;
  position: relative;
  color: var(--color-black);
  margin-top: -45px; }
  .section__work .container {
    position: relative;
    z-index: 2; }
  .section__work::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(255, 255, 255, 0.79); }

.work__title {
  font-size: var(--font-h1-size);
  font-weight: var(--font-h1-weight);
  text-align: center;
  line-height: normal;
  margin-bottom: 25px; }

.work__list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px; }
  @media (max-width: 767px) {
    .work__list {
      grid-template-columns: repeat(2, 1fr); } }

.work__link {
  display: block;
  height: 150px; }

.work__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block; }

.section__contacts {
  margin-top: auto; }
  @media (max-width: 767px) {
    .section__contacts {
      border-top: 5px solid var(--color-main); } }

.contacts__list {
  display: grid;
  grid-template-columns: 420px 1fr; }
  @media (max-width: 992px) {
    .contacts__list {
      grid-template-columns: 1fr; } }

.contacts__info {
  padding: 50px 25px; }
  .contacts__info a {
    font-weight: 500; }

.contacts__nav {
  background: url(../images/content/contacts.png) no-repeat center/cover;
  padding: 50px 25px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 992px) {
    .contacts__nav {
      display: none; } }
  .contacts__nav::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5); }

.footer__nav .nav__list {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px; }

.scroll__up {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: var(--color-main);
  color: var(--color-black);
  border: 1px solid var(--color-black);
  font-size: 30px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
  padding: 0;
  margin: 0;
  cursor: pointer;
  padding-bottom: 2px;
  -webkit-transition-duration: var(--trds);
       -o-transition-duration: var(--trds);
          transition-duration: var(--trds);
  visibility: hidden;
  opacity: 0;
  z-index: 4; }
  .scroll__up.visible {
    opacity: 1;
    visibility: visible; }
  .scroll__up:hover {
    background: var(--color-black);
    color: var(--color-main); }

.section__breadcrumbs {
  background: #f7f7f7;
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 16px; }

.breadcrumbs__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.breadcrumbs__link {
  color: #000; }

.breadcrumbs__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .breadcrumbs__item:last-child::after {
    display: none; }
  .breadcrumbs__item::after {
    content: '';
    width: 24px;
    height: 24px;
    display: block;
    background: url(../images/general/icon__bread.svg) no-repeat 50% 50%; }

.breadcrumbs__last {
  opacity: .5; }

.section__content {
  padding-top: 45px;
  padding-bottom: 45px; }
  .section__content h1 {
    margin-bottom: 25px; }

.content__inner {
  margin-bottom: 25px; }

.news__list {
  display: grid;
  grid-template-columns: repeat(1fr);
  gap: 20px; }

.news__item {
  background: var(--color-white);
  padding: 25px;
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 20px;
  -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 2px rgba(0, 0, 0, 0.15); }
  @media (max-width: 992px) {
    .news__item {
      padding: 15px; } }
  @media (max-width: 767px) {
    .news__item {
      grid-template-columns: 1fr; } }

.news__img {
  margin-right: 0px;
  display: block; }
  @media (max-width: 767px) {
    .news__img {
      margin-right: 0; } }
  .news__img img {
    display: block;
    width: 100%; }

.news__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.news__title {
  font-weight: 600;
  margin-bottom: 20px;
  font-size: 20px; }
  @media (max-width: 576px) {
    .news__title {
      font-size: 16px; } }

.news__intro {
  margin-bottom: 20px; }

.news__link {
  background: var(--color-main);
  text-decoration: none;
  font-size: 14px;
  display: block;
  padding: 3px 8px;
  -ms-flex-item-align: end;
      align-self: flex-end;
  -webkit-transition-duration: var(--trds);
       -o-transition-duration: var(--trds);
          transition-duration: var(--trds); }
  .news__link:hover {
    background: var(--color-black);
    color: var(--color-main); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLmNzcy9ub3JtYWxpemUuY3NzIiwidXRpbHMvZm9udHMuc2NzcyIsInN0eWxlcy5zYXNzIiwidXRpbHMvbWl4aW5zLnNjc3MiLCJ1dGlscy92YXJzLnNjc3MiLCJtb2R1bGVzL2Zvb3Rlci9mb290ZXIuc2FzcyIsIm1vZHVsZXMvaGVhZGVyL2hlYWRlci5zYXNzIiwibW9kdWxlcy9pbmRleC9pbmRleC5zYXNzIiwibW9kdWxlcy9pbm5lci9pbm5lci5zYXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQiwyRUFBQTtBQUVBOytFREMrRTtBQ0UvRTs7O0VERUU7QUVQRixvTUFBWTtBRFVaO0VBQ0UsaUJBQWlCO0VBQUUsTUFBQTtFQUNuQiw4QkFBOEI7RUFBRSxNQUFBLEVBQU87O0FBR3pDOytFREMrRTtBQ0UvRTs7RURDRTtBQ0dGO0VBQ0UsU0FBUyxFQUFBOztBQUdYOztFRERFO0FDS0Y7RUFDRSxjQUFjLEVBQUE7O0FBR2hCOzs7RURGRTtBQ09GO0VBQ0UsY0FBYztFQUNkLGdCQUFnQixFQUFBOztBQUdsQjsrRUROK0U7QUNTL0U7OztFRExFO0FDVUY7RUFDRSwrQkFBdUI7VUFBdkIsdUJBQXVCO0VBQUUsTUFBQTtFQUN6QixTQUFTO0VBQUUsTUFBQTtFQUNYLGlCQUFpQjtFQUFFLE1BQUEsRUFBTzs7QUFHNUI7OztFREpFO0FDU0Y7RUFDRSxpQ0FBaUM7RUFBRSxNQUFBO0VBQ25DLGNBQWM7RUFBRSxNQUFBLEVBQU87O0FBR3pCOytFRE4rRTtBQ1MvRTs7RURORTtBQ1VGO0VBQ0UsNkJBQTZCLEVBQUE7O0FBRy9COzs7RURQRTtBQ1lGO0VBQ0UsbUJBQW1CO0VBQUUsTUFBQTtFQUNyQiwwQkFBMEI7RUFBRSxNQUFBO0VBQzVCLHlDQUFpQztVQUFqQyxpQ0FBaUM7RUFBRSxNQUFBLEVBQU87O0FBRzVDOztFRFBFO0FDV0Y7O0VBRUUsbUJBQW1C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d0NBQWdDO09BQWhDLG1DQUFnQztVQUFoQyxnQ0FBZ0MsRUFBQTtFQVBwQztJQVVRLDhCQUE4QjtJQUM5Qix3QkFBd0IsRUFBQSIsImZpbGUiOiJzdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9RmlyYStTYW5zOml0YWwsd2dodEAwLDEwMDswLDIwMDswLDMwMDswLDQwMDswLDUwMDswLDYwMDswLDcwMDswLDgwMDswLDkwMDsxLDEwMDsxLDIwMDsxLDMwMDsxLDQwMDsxLDUwMDsxLDYwMDsxLDcwMDsxLDgwMDsxLDkwMCZkaXNwbGF5PXN3YXBcIik7XG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovIH1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqLyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbjpyb290IHtcbiAgLS1jb2xvci13aGl0ZTogI0ZGRkZGRjtcbiAgLS1jb2xvci1ibGFjazogIzAwMDAwMDtcbiAgLS1jb2xvci1kYXJrOiAjMUMxQjJBO1xuICAtLWNvbG9yLW1haW46ICNmZmYzMjM7XG4gIC0tYmc6ICNmZmZkZjk7XG4gIC0tZm9udDogJ0ZpcmEgU2Fucyc7XG4gIC0tdHJkczogMC4yNXM7XG4gIC0tZm9udC1oMS13ZWlnaHQ6IDYwMDtcbiAgLS1mb250LWgxLXNpemU6IDQwcHg7XG4gIC0tZm9udC1oMS1saW5lOiAxMDAlO1xuICAtLWZvbnQtaDItd2VpZ2h0OiA2MDA7XG4gIC0tZm9udC1oMi1zaXplOiAzNXB4O1xuICAtLWZvbnQtaDItbGluZTogYXV0bztcbiAgLS1mb250LWgzLXdlaWdodDogNjAwO1xuICAtLWZvbnQtaDMtc2l6ZTogMzBweDtcbiAgLS1mb250LWgzLWxpbmU6IGF1dG87IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMzBweCkge1xuICAgIDpyb290IHtcbiAgICAgIC0tZm9udC1oMS1zaXplOiAzMHB4O1xuICAgICAgLS1mb250LWgyLXNpemU6IDI1cHg7XG4gICAgICAtLWZvbnQtaDMtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIDpyb290IHtcbiAgICAgIC0tZm9udC1oMS1zaXplOiAzMHB4O1xuICAgICAgLS1mb250LWgxLWxpbmU6IDEyMCU7IH0gfVxuXG5odG1sIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBmb250OiAzMDAgMTZweC8xMjUlIHZhcigtLWZvbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIG1pbi13aWR0aDogMzAwcHg7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBib2R5IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMDhweDsgfSB9XG4gIGJvZHkuZml4ZWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG51bCxcbm9sIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG5ib2R5LFxuaDEsXG5oMixcbmgzLFxuaDQsXG5wLFxudWwsXG5vbCxcbmxpLFxuZmlndXJlLFxuZmlnY2FwdGlvbixcbmJsb2NrcXVvdGUsXG5kbCxcbmRkIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmE6bm90KFtjbGFzc10pIHtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuaW5wdXQsXG5idXR0b24sXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qINCj0LTQsNC70Y/QtdC8INCy0YHQtSDQsNC90LjQvNCw0YbQuNC4INC4INC/0LXRgNC10YXQvtC00Ysg0LTQu9GPINC70Y7QtNC10LksINC60L7RgtC+0YDRi9C1INC/0YDQtdC00L/QvtGH0LjRgtCw0Lkg0LjRhSDQvdC1INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCAqL1xuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgKiB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuXG5hdWRpbyxcbmNhbnZhcyxcbmlmcmFtZSxcbmltZyxcbnN2ZyxcbnZpZGVvLFxudGV4dGFyZWEge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiBub25lOyB9XG5cbnNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuaW5wdXQsXG5zZWxlY3QsXG5idXR0b24ge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5kLWYge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5hLWMge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5qLWMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG5hIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUpOyB9XG4gIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4uYnRuIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBwYWRkaW5nOiAxNnB4IDI0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IHZhcigtLXRyZHMpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYWRkKTsgfVxuICAuYnRuIGltZywgLmJ0biBzdmcge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7IH1cbiAgICAuYnRuIGltZyBwYXRoLCAuYnRuIHN2ZyBwYXRoIHtcbiAgICAgIHN0cm9rZTogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gIC5idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tbGlnaHQpOyB9XG4gIC5idG4uYnRuLS10cmFuc3BhcmVudCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4pO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4pOyB9XG4gICAgLmJ0bi5idG4tLXRyYW5zcGFyZW50OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tbGlnaHQpO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1saWdodCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gIC5idG4uYnRuLS13aGl0ZSB7XG4gICAgY29sb3I6ICNCN0JCQzM7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgICAuYnRuLmJ0bi0td2hpdGU6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gIC5idG4uYnRuLS1pbnZlcnQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH1cbiAgICAuYnRuLmJ0bi0taW52ZXJ0OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9yYW5nZSk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG5cbi5pbnB1dCB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMTNweCAzMHB4O1xuICBmb250LWZhbWlseTogXCJKb3N0XCI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMzBweCkge1xuICAgIC5pbnB1dCB7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE3cHg7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAuaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5pbnB1dDotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAuaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMDAwOyB9XG5cbi50ZXh0LS1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LS1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbi5jb2xvci0tb3JhbmdlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH1cblxuLmNvbG9yLS1ibHVlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUpOyB9XG5cbi5jb2xvci0td2hpdGUge1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG5cbi5jb2xvci0tZ3JheSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5KTsgfVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5oaWRkZW4tLWRla3N0b3Age1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIC5oaWRkZW4tLWRla3N0b3Age1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uaGlkZGVuLS10YWJsZXQge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAuaGlkZGVuLS10YWJsZXQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtaDEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgxLXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LWgxLWxpbmUpOyB9XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtaDItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgyLXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LWgyLWxpbmUpOyB9XG5cbmgzLCAuaDIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtaDMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgzLXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LWgzLWxpbmUpOyB9XG5cbi53cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG4uY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTE2MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5zZWN0aW9uX190aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiA0MHB4O1xuICBsaW5lLWhlaWdodDogMTE1JTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYWRkKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTMzMHB4KSB7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNDJweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjMwcHgpIHtcbiAgICAuc2VjdGlvbl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMzdweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc2VjdGlvbl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gIC5zZWN0aW9uX190aXRsZS5zZWN0aW9uX190aXRsZS0tbGluZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cbiAgICAuc2VjdGlvbl9fdGl0bGUuc2VjdGlvbl9fdGl0bGUtLWxpbmU6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMCU7XG4gICAgICB3aWR0aDogMjQwcHg7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXllbGxvdyk7IH1cblxuLm92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIwLCAyMiwgMzUsIDAuMjUpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMnB4KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDsgfVxuXG4ucG9wdXBfX3RoYW5rcyB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwKTtcbiAgX3RyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwYWRkaW5nOiAzMnB4O1xuICB6LWluZGV4OiAxMDE7XG4gIHdpZHRoOiA4MCU7XG4gIG1heC13aWR0aDogNTM2cHg7XG4gIG1heC1oZWlnaHQ6IDkwJTtcbiAgX29wYWNpdHk6IDA7XG4gIF92aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2dlbmVyYWwvYmcud2VicCkgY2VudGVyIHRvcCB2YXIoLS1iZyk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnBvcHVwX190aGFua3Mub3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5wb3B1cCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwKTtcbiAgX3RyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwYWRkaW5nOiAzMnB4O1xuICB6LWluZGV4OiAxMDE7XG4gIHdpZHRoOiA4MCU7XG4gIG1heC13aWR0aDogNTM2cHg7XG4gIG1heC1oZWlnaHQ6IDkwJTtcbiAgX29wYWNpdHk6IDA7XG4gIF92aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2dlbmVyYWwvYmcud2VicCkgY2VudGVyIHRvcCB2YXIoLS1iZyk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnBvcHVwIC5lcnJvcl9maWxlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG4gICAgLnBvcHVwIC5lcnJvcl9maWxlcyAuZXJyb3Ige1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuICAucG9wdXAgLmZvcm0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5wb3B1cCAuZm9ybTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgd2lkdGg6IDZweDtcbiAgICAgIGhlaWdodDogNnB4OyB9XG4gICAgLnBvcHVwIC5mb3JtOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRjQ5NzAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnBvcHVwIC5mb3JtOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWVlOyB9XG4gICAgLnBvcHVwIC5mb3JtIHtcbiAgICAgIHNjcm9sbGJhci1mYWNlLWNvbG9yOiAjRjQ5NzAwO1xuICAgICAgc2Nyb2xsYmFyLXRyYWNrLWNvbG9yOiAjZWVlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIC5wb3B1cCB7XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5wb3B1cCB7XG4gICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgLnBvcHVwLm9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4ucG9wdXBfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMjFweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5wb3B1cF9fZGVzYyB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDE1MCU7IH1cbiAgLnBvcHVwX19kZXNjIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4pO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluKTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTsgfVxuICAgIC5wb3B1cF9fZGVzYyBhOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnBvcHVwX19jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNnB4O1xuICByaWdodDogMTZweDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDsgfVxuICAucG9wdXBfX2Nsb3NlIHN2ZywgLnBvcHVwX19jbG9zZSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDsgfVxuXG4ucG9wdXBfX2xhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnBvcHVwX19sYWJlbCArIC5wb3B1cF9fbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLnBvcHVwX19sYWJlbC5lcnJvciAuZXJyb3JfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucG9wdXBfX2xhYmVsLmVycm9yIC5wb3B1cF9faW5wdXQsIC5wb3B1cF9fbGFiZWwuZXJyb3IgLnBvcHVwX190ZXh0YXJlYSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmYwMDAwOyB9XG5cbi5lcnJvcl9fbGFiZWwge1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGNvbG9yOiAjZmYwMDAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wb3B1cF9fdGV4dGFyZWEge1xuICBoZWlnaHQ6IDE1N3B4O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkOGQ4ZDg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6ICM1MTUwNjE7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gIHJlc2l6ZTogbm9uZTtcbiAgb3V0bGluZTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAucG9wdXBfX3RleHRhcmVhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5wb3B1cF9faW5wdXQge1xuICBoZWlnaHQ6IDQ4cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q4ZDhkODtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjb2xvcjogIzUxNTA2MTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMTUwJTsgfVxuICAucG9wdXBfX2lucHV0LmVycm9yIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBib3JkZXItY29sb3I6ICNmZjAwMDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgLnBvcHVwX19pbnB1dCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG4ucG9wdXBfX2J0bi1jbG9zZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5wb3B1cF9fY2hlY2sge1xuICB3aWR0aDogNjJweDtcbiAgaGVpZ2h0OiA2MnB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC5wb3B1cF9fY2hlY2sgc3ZnIHtcbiAgICB3aWR0aDogNjJweDtcbiAgICBoZWlnaHQ6IDYycHg7IH1cblxuLnBvcHVwLWZvcm1fX2J0biB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbiNqR3Jvd2wgYnV0dG9uIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmpHcm93bC1ub3RpZmljYXRpb24gLnVpLXN0YXRlLWhpZ2hsaWdodCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cblxuLmdyZWNhcHRjaGEtYmFkZ2Uge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IC0xMDA7IH1cblxuLmxvYWQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDsgfVxuICAubG9hZC5oaWRlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDA7IH1cblxuLmZvb3RlciB7XG4gIGhlaWdodDogODBweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbik7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zZWN0aW9uX19iYXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwOyB9IH1cblxuLmJhcl9fdG9wIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbik7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfVxuICAuYmFyX190b3AgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmJhcl9fdG9wIC5jb250YWluZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH0gfVxuXG4udG9wX19sb2dvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDE1cHg7IH1cbiAgLnRvcF9fbG9nbyBpbWcge1xuICAgIHdpZHRoOiAxMDBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnRvcF9fbG9nbyBpbWcge1xuICAgICAgICB3aWR0aDogNjBweDsgfSB9XG5cbi50b3BfX2NvbnRhY3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTVweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAudG9wX19jb250YWN0cyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnRvcF9fcGhvbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi5waG9uZV9fbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4udG9wX19jb250YWN0cyB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG4uYmFyX19ib3R0b20ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgLmJhcl9fYm90dG9tIC5jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmJhcl9fYm90dG9tIC5jb250YWluZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cblxuLm5hdl9fb3BlbiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMjBweDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAubmF2X19vcGVuLm9wZW4gPiBzcGFuIHtcbiAgICBtYXJnaW4tdG9wOiAtNHB4OyB9XG4gICAgLm5hdl9fb3Blbi5vcGVuID4gc3BhbiBzcGFuOm50aC1jaGlsZCgxKSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSg4cHgpIHRyYW5zbGF0ZVgoOHB4KTsgfVxuICAgIC5uYXZfX29wZW4ub3BlbiA+IHNwYW4gc3BhbjpudGgtY2hpbGQoMikge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVZKC01cHgpIHRyYW5zbGF0ZVgoNXB4KTsgfVxuICAgIC5uYXZfX29wZW4ub3BlbiA+IHNwYW4gc3BhbjpudGgtY2hpbGQoMykge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubmF2X19vcGVuIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgLm5hdl9fb3BlbiA+IHNwYW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4OyB9XG4gICAgLm5hdl9fb3BlbiA+IHNwYW4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTsgfVxuXG4ubmF2IHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5uYXYge1xuICAgICAgcGFkZGluZy10b3A6IDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7IH0gfVxuXG4ubmF2X19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogNDVweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubmF2X19saXN0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9XG4gICAgICAubmF2X19saXN0IC5uYXZfX2l0ZW0gKyAubmF2X19pdGVtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG5cbi5uYXZfX2xpbmsge1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubmF2X19saW5rOmhvdmVyOjphZnRlciB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubmF2X19saW5rOmhvdmVyOjpiZWZvcmUge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm5hdl9fbGluazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IHZhcigtLXRyZHMpOyB9XG4gIC5uYXZfX2xpbms6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDA7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IHZhcigtLXRyZHMpOyB9XG5cbi5uYXZfX2Zsb2F0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDsgfVxuICAubmF2X19mbG9hdCAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJhcl9fZmxvYXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4pO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3IteWVsbG93KTtcbiAgei1pbmRleDogMzA7XG4gIGhlaWdodDogODBweDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7XG4gIF9vcGFjaXR5OiAwO1xuICBfdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMjVzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIC5iYXJfX2Zsb2F0IHtcbiAgICAgIGhlaWdodDogMTAwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAuYmFyX19mbG9hdCB7XG4gICAgICBoZWlnaHQ6IDgwcHg7IH0gfVxuICAuYmFyX19mbG9hdCAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJhcl9fbG9nbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTEzMHB4KSB7XG4gICAgLmJhcl9fbG9nbyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYmFyX19sb2dvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfSB9XG4gIC5iYXJfX2xvZ286OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgd2lkdGg6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci15ZWxsb3cpO1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIG9wYWNpdHk6IC4yO1xuICAgIG1pbi13aWR0aDogMXB4O1xuICAgIG1hcmdpbi1yaWdodDogMnB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYmFyX19sb2dvOjphZnRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH1cblxuLmJhci1sb2dvX19pbWcge1xuICBoZWlnaHQ6IDYwcHg7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4yNXM7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE1NTBweCkge1xuICAgIC5iYXItbG9nb19faW1nIHtcbiAgICAgIGhlaWdodDogNTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjMwcHgpIHtcbiAgICAuYmFyLWxvZ29fX2ltZyB7XG4gICAgICBoZWlnaHQ6IDYwcHg7IH0gfVxuXG4uYmFyLWxvZ29fX2ltZy0tbW9iaWxlIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBtaW4td2lkdGg6IDEyMHB4OyB9XG5cbi5iYXJfX2NvbnRhY3RzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMTBweDsgfVxuXG4uYmFyLWNvbnRhY3RzX19pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4uYmFyX19waG9uZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG4gIC5iYXJfX3Bob25lIHN2ZywgLmJhcl9fcGhvbmUgaW1nIHtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgc3Ryb2tlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmJhcl9fcGhvbmUgc3ZnLCAuYmFyX19waG9uZSBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5iYXJfX3Bob25lIHtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICBtaW4td2lkdGg6IDM1cHg7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci15ZWxsb3cpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfSB9XG5cbi5iYXJfX3RpbWV3b3JrIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogM3B4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5iYXJfX3RpbWV3b3JrIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTE1cHg7XG4gICAgICByaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIC5iYXJfX3RpbWV3b3JrIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYmFyX19hZHJlc3Mge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgdmFyKC0tY29sb3IteWVsbG93KTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tdHJkcyk7IH1cbiAgLmJhcl9fYWRyZXNzOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNTUwcHgpIHtcbiAgICAuYmFyX19hZHJlc3Mge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMzBweCkge1xuICAgIC5iYXJfX2FkcmVzcyB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYmFyX19hZHJlc3Mge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMTVweDtcbiAgICAgIHJpZ2h0OiAyMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgLmJhcl9fYWRyZXNzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYmFyX19idXR0b25zIHtcbiAgZGlzcGxheTogZmxleDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTMzMHB4KSB7XG4gICAgLmJhcl9fYnV0dG9ucyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTEzMHB4KSB7XG4gICAgLmJhcl9fYnV0dG9ucyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmJhcl9fYnV0dG9ucyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH1cblxuLmJhcl9fYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE1NTBweCkge1xuICAgIC5iYXJfX2J1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICAuYmFyX19idXR0b246aG92ZXIgc3ZnLCAuYmFyX19idXR0b246aG92ZXIgaW1nIHtcbiAgICBzdHJva2U6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmJhcl9fYnV0dG9uIHtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBtaW4td2lkdGg6IDQwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYmFyX19idXR0b24gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmJhcl9fYnV0dG9uLmJ0bi0tdHJhbnNwYXJlbnR5OmhvdmVyIHN2ZywgLmJhcl9fYnV0dG9uLmJ0bi0tdHJhbnNwYXJlbnR5OmhvdmVyIGltZyB7XG4gICAgc3Ryb2tlOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmJhcl9fYnV0dG9uLmJ0bi0tdHJhbnNwYXJlbnR5IHN2ZywgLmJhcl9fYnV0dG9uLmJ0bi0tdHJhbnNwYXJlbnR5IGltZyB7XG4gICAgc3Ryb2tlOiB2YXIoLS1jb2xvci1vcmFuZ2UpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMzMwcHgpIHtcbiAgICAuYmFyX19idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgLmJhcl9fYnV0dG9uICsgLmJhcl9fYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzMzBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYmFyX19idXR0b24gKyAuYmFyX19idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfSB9XG5cbi5iYXJfX21lbnUge1xuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiAzNXB4O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAzNXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIC5iYXJfX21lbnUge1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3IteWVsbG93KTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IDVweDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLmJhcl9fbWVudSBzcGFuIHtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgd2lkdGg6IDIwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLmJhcl9fbmF2IHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmJhci1uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5iYXItbmF2X19pdGVtIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5iYXItbmF2X19pdGVtICsgLmJhci1uYXZfX2l0ZW0ge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE1NTBweCkge1xuICAgICAgLmJhci1uYXZfX2l0ZW0gKyAuYmFyLW5hdl9faXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9IH1cbiAgLmJhci1uYXZfX2l0ZW06aG92ZXIgLmJhci1uYXZfX2xpbmsge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpOyB9XG4gIC5iYXItbmF2X19pdGVtLnBhcmVudCAuYmFyLW5hdl9fbGluazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICfigLonO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICBtYXJnaW4tbGVmdDogMnB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMzBweCkge1xuICAgICAgLmJhci1uYXZfX2l0ZW0ucGFyZW50IC5iYXItbmF2X19saW5rOjphZnRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAuYmFyLW5hdl9faXRlbS5wYXJlbnQ6aG92ZXIgPiAuY2hpbGQtbmF2X19saXN0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4uYmFyLW5hdl9fbGluayB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcbiAgcGFkZGluZy10b3A6IDExcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXdlaWdodDogNzAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNTUwcHgpIHtcbiAgICAuYmFyLW5hdl9fbGluayB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTIzMHB4KSB7XG4gICAgLmJhci1uYXZfX2xpbmsge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgLmJhci1uYXZfX2xpbms6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpOyB9XG5cbi5jaGlsZC1uYXZfX2xpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTAwJTtcbiAgcGFkZGluZzogMTVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7IH1cbiAgLmNoaWxkLW5hdl9fbGlzdCAuYmFyLW5hdl9faXRlbSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5jaGlsZC1uYXZfX2xpc3QgLmNoaWxkLW5hdl9fbGlzdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cblxuLmNoaWxkLW5hdl9faXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY2hpbGQtbmF2X19pdGVtOmhvdmVyID4gLmNoaWxkLW5hdl9fbGluayB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH1cbiAgLmNoaWxkLW5hdl9faXRlbS5wYXJlbnQgPiAuY2hpbGQtbmF2X19saW5rOjphZnRlciB7XG4gICAgY29udGVudDogJ+KAuic7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDsgfVxuICAuY2hpbGQtbmF2X19pdGVtLnBhcmVudDpob3ZlciA+IC5jaGlsZC1uYXZfX2xpc3Qge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgIG1hcmdpbi10b3A6IC0xNXB4OyB9XG5cbi5jaGlsZC1uYXZfX2xpbmsge1xuICBmb250LXNpemU6IDE2cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7IH1cbiAgLmNoaWxkLW5hdl9fbGluazpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH1cblxuLm5hdl9fbW9iaWxlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogNDBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDtcbiAgdG9wOiAxMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIG9wYWNpdHk6IDA7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIC5uYXZfX21vYmlsZSB7XG4gICAgICB0b3A6IDgxcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubmF2X19tb2JpbGUge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAubmF2X19tb2JpbGUub3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLm5hdi1tb2JpbGVfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5uYXYtbW9iaWxlX19pdGVtICsgLm5hdi1tb2JpbGVfX2l0ZW0ge1xuICBtYXJnaW4tdG9wOiAyNHB4OyB9XG5cbi5uYXYtbW9iaWxlX19pdGVtLm5hdi1tb2JpbGVfX2l0ZW0tLW9yZGVyIC5uYXYtbW9iaWxlX19saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5uYXYtbW9iaWxlX19pdGVtLm5hdi1tb2JpbGVfX2l0ZW0tLW9yZGVyIC5uYXYtbW9iaWxlX19saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3IteWVsbG93KTsgfVxuICAgIC5uYXYtbW9iaWxlX19pdGVtLm5hdi1tb2JpbGVfX2l0ZW0tLW9yZGVyIC5uYXYtbW9iaWxlX19saW5rOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgLm5hdi1tb2JpbGVfX2l0ZW0ubmF2LW1vYmlsZV9faXRlbS0tb3JkZXIgLm5hdi1tb2JpbGVfX2xpbms6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgYm90dG9tOiAtM3B4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXllbGxvdyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgIC5uYXYtbW9iaWxlX19pdGVtLm5hdi1tb2JpbGVfX2l0ZW0tLW9yZGVyIC5uYXYtbW9iaWxlX19saW5rOjphZnRlciB7XG4gICAgICAgIGhlaWdodDogM3B4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5uYXYtbW9iaWxlX19pdGVtLm5hdi1tb2JpbGVfX2l0ZW0tLW9yZGVyIC5uYXYtbW9iaWxlX19saW5rOjphZnRlciB7XG4gICAgICAgIGhlaWdodDogM3B4OyB9IH1cblxuLm5hdi1tb2JpbGVfX2xpbmsge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAxLjQ0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTsgfVxuICAubmF2LW1vYmlsZV9fbGluazpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXllbGxvdyk7IH1cblxuLm5hdi1tb2JpbGVfX2luZm8ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi10b3A6IDM4cHg7IH1cblxuLm9wZW5fX21lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAyMXB4O1xuICB6LWluZGV4OiAzO1xuICB0b3A6IDcwcHg7XG4gIHJpZ2h0OiA0MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIC5vcGVuX19tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAub3Blbl9fbWVudSB7XG4gICAgICByaWdodDogMzJweDtcbiAgICAgIHRvcDogNDJweDsgfSB9XG4gIC5vcGVuX19tZW51OmhvdmVyIHN2ZywgLm9wZW5fX21lbnUub3BlbiBzdmcge1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLXllbGxvdyk7IH1cbiAgLm9wZW5fX21lbnUgc3ZnIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgZmlsbDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzOyB9XG5cbi5zZWN0aW9uX19zZXJ2aWNlcyB7XG4gIHBhZGRpbmctdG9wOiAyNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9nZW5lcmFsL3NlcnZpY2VzX2JnLmpwZykgbm8tcmVwZWF0IGNlbnRlci9jb3ZlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zZWN0aW9uX19zZXJ2aWNlcyAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgfVxuICAuc2VjdGlvbl9fc2VydmljZXM6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMyLCA0NCwgNjgsIDAuNzkpOyB9XG5cbi5zZXJ2aWNlc19fdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtaDEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgxLXdlaWdodCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uc2VydmljZXNfX2xpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICBnYXA6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgLnNlcnZpY2VzX19saXN0IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAuc2VydmljZXNfX2xpc3Qge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG5cbi5zZXJ2aWNlc19faXRlbSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgcGFkZGluZzogMjVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAuc2VydmljZXNfX2l0ZW0ge1xuICAgICAgcGFkZGluZzogMTVweDsgfSB9XG5cbi5zZXJ2aWNlc19faW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNlcnZpY2VzX19pbWcgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uc2VydmljZXNfX25hbWUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgLnNlcnZpY2VzX19uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5zZXJ2aWNlc19fbGluayB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4pO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDNweCA4cHg7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTsgfVxuICAuc2VydmljZXNfX2xpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7IH1cblxuLnNlY3Rpb25fX2Fib3V0IHtcbiAgbWFyZ2luLXRvcDogLTQ1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjsgfVxuICAuc2VjdGlvbl9fYWJvdXQgLmNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnNlY3Rpb25fX2Fib3V0IC5jb250YWluZXIge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgfSB9XG5cbi5hYm91dF9fZGVzYyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4pO1xuICBwYWRkaW5nOiAyNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDI1cHg7IH1cblxuLmFib3V0LWRlc2NfX3N1YnRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4uYWJvdXQtZGVzY19fdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtaDItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgyLXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi10b3A6IC0xMHB4OyB9XG5cbi5hYm91dC1kZXNjX19pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmFib3V0X19pY29ucyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgcGFkZGluZzogNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAuYWJvdXRfX2ljb25zIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMjVweDsgfSB9XG5cbi5pY29uc19fbGlzdCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgZ2FwOiAxMDBweCAyNXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIC5pY29uc19fbGlzdCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIGdhcDogMjVweDsgfSB9XG5cbi5pY29uX19pdGVtIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA3MHB4IDFmcjtcbiAgZ2FwOiAxNXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIC5pY29uX19pdGVtIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDBweCAxZnI7XG4gICAgICBnYXA6IDEwcHg7IH0gfVxuXG4uaWNvbl9fdmFsdWUge1xuICBmb250LXNpemU6IDE0cHg7IH1cblxuLmljb25fX251bSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAuaWNvbl9fbnVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG5cbi5zZWN0aW9uX193b3JrIHtcbiAgcGFkZGluZy10b3A6IDgwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2dlbmVyYWwvc2VydmljZXNfYmcuanBnKSBuby1yZXBlYXQgY2VudGVyL2NvdmVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIG1hcmdpbi10b3A6IC00NXB4OyB9XG4gIC5zZWN0aW9uX193b3JrIC5jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5zZWN0aW9uX193b3JrOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc5KTsgfVxuXG4ud29ya19fdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtaDEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgxLXdlaWdodCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4ud29ya19fbGlzdCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XG4gIGdhcDogMjBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAud29ya19fbGlzdCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cblxuLndvcmtfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxNTBweDsgfVxuXG4ud29ya19faW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uc2VjdGlvbl9fY29udGFjdHMge1xuICBtYXJnaW4tdG9wOiBhdXRvOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5zZWN0aW9uX19jb250YWN0cyB7XG4gICAgICBib3JkZXItdG9wOiA1cHggc29saWQgdmFyKC0tY29sb3ItbWFpbik7IH0gfVxuXG4uY29udGFjdHNfX2xpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQyMHB4IDFmcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAuY29udGFjdHNfX2xpc3Qge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH0gfVxuXG4uY29udGFjdHNfX2luZm8ge1xuICBwYWRkaW5nOiA1MHB4IDI1cHg7IH1cbiAgLmNvbnRhY3RzX19pbmZvIGEge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLmNvbnRhY3RzX19uYXYge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2NvbnRlbnQvY29udGFjdHMucG5nKSBuby1yZXBlYXQgY2VudGVyL2NvdmVyO1xuICBwYWRkaW5nOiA1MHB4IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAuY29udGFjdHNfX25hdiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmNvbnRhY3RzX19uYXY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLmZvb3Rlcl9fbmF2IC5uYXZfX2xpc3Qge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDE1cHg7IH1cblxuLnNjcm9sbF9fdXAge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4pO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiA0OyB9XG4gIC5zY3JvbGxfX3VwLnZpc2libGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuc2Nyb2xsX191cDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTsgfVxuXG4uc2VjdGlvbl9fYnJlYWRjcnVtYnMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4uYnJlYWRjcnVtYnNfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLmJyZWFkY3J1bWJzX19saW5rIHtcbiAgY29sb3I6ICMwMDA7IH1cblxuLmJyZWFkY3J1bWJzX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDsgfVxuICAuYnJlYWRjcnVtYnNfX2l0ZW06bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJyZWFkY3J1bWJzX19pdGVtOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZ2VuZXJhbC9pY29uX19icmVhZC5zdmcpIG5vLXJlcGVhdCA1MCUgNTAlOyB9XG5cbi5icmVhZGNydW1ic19fbGFzdCB7XG4gIG9wYWNpdHk6IC41OyB9XG5cbi5zZWN0aW9uX19jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDQ1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA0NXB4OyB9XG4gIC5zZWN0aW9uX19jb250ZW50IGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG5cbi5jb250ZW50X19pbm5lciB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuLm5ld3NfX2xpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxZnIpO1xuICBnYXA6IDIwcHg7IH1cblxuLm5ld3NfX2l0ZW0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjQwcHggMWZyO1xuICBnYXA6IDIwcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAubmV3c19faXRlbSB7XG4gICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm5ld3NfX2l0ZW0ge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH0gfVxuXG4ubmV3c19faW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5uZXdzX19pbWcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgLm5ld3NfX2ltZyBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5uZXdzX19pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4ubmV3c19fdGl0bGUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgLm5ld3NfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5uZXdzX19pbnRybyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLm5ld3NfX2xpbmsge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tdHJkcyk7IH1cbiAgLm5ld3NfX2xpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7IH1cbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1GaXJhK1NhbnM6aXRhbCx3Z2h0QDAsMTAwOzAsMjAwOzAsMzAwOzAsNDAwOzAsNTAwOzAsNjAwOzAsNzAwOzAsODAwOzAsOTAwOzEsMTAwOzEsMjAwOzEsMzAwOzEsNDAwOzEsNTAwOzEsNjAwOzEsNzAwOzEsODAwOzEsOTAwJmRpc3BsYXk9c3dhcCcpOyIsIkBpbXBvcnQgXCJ1dGlscy9saWJzXCI7XG5AaW1wb3J0IFwidXRpbHMvdmFyc1wiO1xuQGltcG9ydCBcInV0aWxzL21peGluc1wiO1xuQGltcG9ydCBcInV0aWxzL2ZvbnRzXCI7XG5cbiA6cm9vdCB7XG5cdC0tY29sb3Itd2hpdGU6ICNGRkZGRkY7XG5cdC0tY29sb3ItYmxhY2s6ICMwMDAwMDA7XG5cdC0tY29sb3ItZGFyazogIzFDMUIyQTtcblx0LS1jb2xvci1tYWluOiAjZmZmMzIzO1xuXHQtLWJnOiAjZmZmZGY5O1xuXHQtLWZvbnQ6ICdGaXJhIFNhbnMnO1xuXHQtLXRyZHM6IDAuMjVzO1xuXHQtLWZvbnQtaDEtd2VpZ2h0OiA2MDA7XG5cdC0tZm9udC1oMS1zaXplOiA0MHB4O1xuXHQtLWZvbnQtaDEtbGluZTogMTAwJTtcblx0LS1mb250LWgyLXdlaWdodDogNjAwO1xuXHQtLWZvbnQtaDItc2l6ZTogMzVweDtcblx0LS1mb250LWgyLWxpbmU6IGF1dG87XG5cdC0tZm9udC1oMy13ZWlnaHQ6IDYwMDtcblx0LS1mb250LWgzLXNpemU6IDMwcHg7XG5cdC0tZm9udC1oMy1saW5lOiBhdXRvO1xuXG5cdEBpbmNsdWRlIGxhcHRvcCB7XG5cdFx0LS1mb250LWgxLXNpemU6IDMwcHg7XG5cdFx0LS1mb250LWgyLXNpemU6IDI1cHg7XG5cdFx0LS1mb250LWgzLXNpemU6IDIwcHg7IH1cblxuXHRAaW5jbHVkZSB0YWJsZXQge1xuXHRcdC0tZm9udC1oMS1zaXplOiAzMHB4O1xuXHRcdC0tZm9udC1oMS1saW5lOiAxMjAlOyB9IH1cblxuaHRtbCB7XG5cdG1pbi1oZWlnaHQ6IDEwMCU7XG5cdGhlaWdodDogMTAwJTsgfVxuXG5ib2R5IHtcblx0Zm9udDogMzAwIDE2cHgvMTI1JSB2YXIoLS1mb250KTtcblx0Y29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcblx0c2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG5cdHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZVNwZWVkO1xuXHRtaW4td2lkdGg6IDMwMHB4O1xuXHRtaW4taGVpZ2h0OiAxMDAlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cblx0QGluY2x1ZGUgdGFibGV0O1xuXG5cdEBpbmNsdWRlIG1vYmlsZSB7XG5cdFx0cGFkZGluZy10b3A6IDEwOHB4OyB9XG5cblx0Ji5maXhlZCB7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5cdCYuc2Nyb2xsIHt9IH1cblxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbnVsLFxub2wge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbmJvZHksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbnAsXG51bCxcbm9sLFxubGksXG5maWd1cmUsXG5maWdjYXB0aW9uLFxuYmxvY2txdW90ZSxcbmRsLFxuZGQge1xuXHRtYXJnaW46IDA7IH1cblxuYTpub3QoW2NsYXNzXSkge1xuXHR0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IGF1dG87IH1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5pbnB1dCxcbmJ1dHRvbixcbnRleHRhcmVhLFxuc2VsZWN0IHtcblx0Zm9udDogaW5oZXJpdDtcblx0d2lkdGg6IDEwMCU7IH1cblxuLyog0KPQtNCw0LvRj9C10Lwg0LLRgdC1INCw0L3QuNC80LDRhtC40Lgg0Lgg0L/QtdGA0LXRhdC+0LTRiyDQtNC70Y8g0LvRjtC00LXQuSwg0LrQvtGC0L7RgNGL0LUg0L/RgNC10LTQv9C+0YfQuNGC0LDQuSDQuNGFINC90LUg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMICovXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAqIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDsgfSB9XG5cbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8sXG50ZXh0YXJlYSB7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxudGV4dGFyZWEge1xuXHRyZXNpemU6IG5vbmU7IH1cblxuc2VjdGlvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5cbmlucHV0LFxuc2VsZWN0LFxuYnV0dG9uIHtcblx0b3V0bGluZTogbm9uZTsgfVxuXG4uZC1mIHtcblx0ZGlzcGxheTogZmxleDsgfVxuXG4uYS1jIHtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uai1jIHtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuYSB7XG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcblxuXHQmOmhvdmVyIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0gfVxuXG5wIHtcblx0bWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4uYnRuIHtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Zm9udC1zaXplOiAxOHB4O1xuXHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHRjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuXHRwYWRkaW5nOiAxNnB4IDI0cHg7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IHZhcigtLXRyZHMpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYWRkKTtcblxuXHRpbWcsIHN2ZyB7XG5cdFx0d2lkdGg6IDIwcHg7XG5cdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdG1hcmdpbi1yaWdodDogMTZweDtcblxuXHRcdHBhdGgge1xuXHRcdFx0c3Ryb2tlOiB2YXIoLS1jb2xvci13aGl0ZSk7IH0gfVxuXG5cdEBpbmNsdWRlIHdpZGU7XG5cblx0QGluY2x1ZGUgdGFibGV0O1xuXG5cdEBpbmNsdWRlIG1vYmlsZTtcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWxpZ2h0KTsgfVxuXG5cblx0Ji5idG4tLXRyYW5zcGFyZW50IHtcblx0XHRjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItbWFpbik7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tbGlnaHQpO1xuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1saWdodCk7XG5cdFx0XHRjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9IH1cblxuXHQmLmJ0bi0td2hpdGUge1xuXHRcdGNvbG9yOiAjQjdCQkMzO1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcblx0XHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblx0XHRjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRcdGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH0gfVxuXG5cdCYuYnRuLS1pbnZlcnQge1xuXHRcdGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcblx0XHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9yYW5nZSk7XG5cdFx0XHRjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9IH0gfVxuXG4uaW5wdXQge1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGJvcmRlcjogbm9uZTtcblx0Ym9yZGVyLXJpZ2h0OiBub25lO1xuXHRoZWlnaHQ6IDUwcHg7XG5cdHBhZGRpbmc6IDEzcHggMzBweDtcblx0Zm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuXG5cdEBpbmNsdWRlIGxhcHRvcCB7XG5cdFx0aGVpZ2h0OiA0MHB4O1xuXHRcdHBhZGRpbmc6IDEwcHggMTdweDtcblx0XHRmb250LXNpemU6IDE1cHg7IH1cblxuXHRAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6ICMwMDA7IH0gfVxuXG4udGV4dC0tbGVmdCB7XG5cdHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuXG4udGV4dC0tcmlnaHQge1xuXHR0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LS1jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4uY29sb3ItLW9yYW5nZSB7XG5cdGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpOyB9XG5cbi5jb2xvci0tYmx1ZSB7XG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTsgfVxuXG4uY29sb3ItLXdoaXRlIHtcblx0Y29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuXG4uY29sb3ItLWdyYXkge1xuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JheSk7IH1cblxuLmhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaGlkZGVuLS1kZWtzdG9wIHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSB0YWJsZXQge1xuXHRcdGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmhpZGRlbi0tdGFibGV0IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cblx0QGluY2x1ZGUgdGFibGV0IHtcblx0XHRkaXNwbGF5OiBub25lOyB9IH1cblxuaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LWgxLXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgxLXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtaDEtbGluZSk7IH1cblxuaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LWgyLXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgyLXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtaDItbGluZSk7IH1cblxuaDMsIC5oMiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LWgzLXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWgzLXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtaDMtbGluZSk7IH1cblxuLndyYXBwZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbi5jb250ZW50IHt9XG5cbi5jb250YWluZXIge1xuXHRtYXJnaW46IDAgYXV0bztcblx0bWF4LXdpZHRoOiAxMTYwcHg7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAwIDE1cHg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGRpc3BsYXk6IGZsZXg7XG5cblx0QGluY2x1ZGUgbW9iaWxlOyB9XG5cblxuLnNlY3Rpb25fX3RpdGxlIHtcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRmb250LXNpemU6IDQwcHg7XG5cdGxpbmUtaGVpZ2h0OiAxMTUlO1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1hZGQpO1xuXG5cdEBpbmNsdWRlIHdpZGVTbWFsbCB7XG5cdFx0Zm9udC1zaXplOiA0MnB4OyB9XG5cblx0QGluY2x1ZGUgbGFwdG9wIHtcblx0XHRcdGZvbnQtc2l6ZTogNDBweDsgfVxuXG5cdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0XHRmb250LXNpemU6IDM3cHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cblx0QGluY2x1ZGUgbW9iaWxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMjZweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuXHQmLnNlY3Rpb25fX3RpdGxlLS1saW5lIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0XHRsZWZ0OiAwJTtcblx0XHRcdFx0XHR3aWR0aDogMjQwcHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxcHg7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0tY29sb3IteWVsbG93KTsgfSB9XG5cblx0QGluY2x1ZGUgbGFwdG9wU21hbGw7XG5cblx0QGluY2x1ZGUgdGFibGV0O1xuXG5cdEBpbmNsdWRlIG1vYmlsZTsgfVxuXG4ub3ZlcmxheSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGJhY2tncm91bmQ6IHJnYmEoMjAsIDIyLCAzNSwgMC4yNSk7XG5cdGJhY2tkcm9wLWZpbHRlcjogYmx1cigycHgpO1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHotaW5kZXg6IDEwMDtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwOyB9XG5cbi5wb3B1cF9fdGhhbmtzIHtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogNTAlO1xuXHRsZWZ0OiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoMCk7XG5cdF90cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuXHRwYWRkaW5nOiAzMnB4O1xuXHR6LWluZGV4OiAxMDE7XG5cdHdpZHRoOiA4MCU7XG5cdG1heC13aWR0aDogNTM2cHg7XG5cdG1heC1oZWlnaHQ6IDkwJTtcblx0X29wYWNpdHk6IDA7XG5cdF92aXNpYmlsaXR5OiBoaWRkZW47XG5cdGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2dlbmVyYWwvYmcud2VicCkgY2VudGVyIHRvcCB2YXIoLS1iZyk7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmRzO1xuXHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0Ji5vcGVuIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDEpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTsgfSB9XG5cbi5wb3B1cCB7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDUwJTtcblx0bGVmdDogNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDApO1xuXHRfdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcblx0cGFkZGluZzogMzJweDtcblx0ei1pbmRleDogMTAxO1xuXHR3aWR0aDogODAlO1xuXHRtYXgtd2lkdGg6IDUzNnB4O1xuXHRtYXgtaGVpZ2h0OiA5MCU7XG5cdF9vcGFjaXR5OiAwO1xuXHRfdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRib3gtc2hhZG93OiAwIDEwcHggNDBweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcblx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9nZW5lcmFsL2JnLndlYnApIGNlbnRlciB0b3AgdmFyKC0tYmcpO1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJkcztcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG5cdC5lcnJvcl9maWxlcyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXG5cdFx0LmVycm9yIHtcblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiBub3JtYWw7IH0gfVxuXG5cdC5mb3JtIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXgtaGVpZ2h0OiAxMDAlO1xuXHRcdG92ZXJmbG93LXg6IGF1dG87XG5cdFx0cGFkZGluZy1yaWdodDogNXB4O1xuXHRcdG1hcmdpbi1yaWdodDogLTVweDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0XHRAaW5jbHVkZSBzY3JvbGxiYXJzKDZweCwjRjQ5NzAwLCNlZWUpOyB9XG5cblx0QGluY2x1ZGUgdGFibGV0IHtcblx0XHRwYWRkaW5nOiAzMHB4O1xuXHRcdHdpZHRoOiA5MCU7IH1cblxuXHRAaW5jbHVkZSBtb2JpbGUge1xuXHRcdHBhZGRpbmc6IDIwcHg7IH1cblxuXHQmLm9wZW4ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoMSk7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlOyB9IH1cblxuLnBvcHVwX190aXRsZSB7XG5cdG1hcmdpbi1ib3R0b206IDIxcHg7XG5cdGZvbnQtc2l6ZTogMzBweDtcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0Zm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4ucG9wdXBfX2Rlc2Mge1xuXHRmb250LXNpemU6IDIwcHg7XG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdGxpbmUtaGVpZ2h0OiAxNTAlO1xuXG5cdGEge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Y29sb3I6IHZhcigtLWNvbG9yLW1haW4pO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluKTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9IH1cblxuLnBvcHVwX19jbG9zZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxNnB4O1xuXHRyaWdodDogMTZweDtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyZHM7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0d2lkdGg6IDI0cHg7XG5cdGhlaWdodDogMjRweDtcblxuXHRzdmcsIGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDI0cHg7XG5cdFx0aGVpZ2h0OiAyNHB4OyB9IH1cblxuLnBvcHVwX19sYWJlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXG5cdCYgKyAucG9wdXBfX2xhYmVsIHtcblx0XHRtYXJnaW4tdG9wOiAyMHB4OyB9XG5cblx0Ji5lcnJvciB7XG5cblx0XHQuZXJyb3JfX2xhYmVsIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrOyB9XG5cblx0XHQucG9wdXBfX2lucHV0LCAucG9wdXBfX3RleHRhcmVhIHtcblx0XHRcdGJvcmRlci1jb2xvcjogI2ZmMDAwMDsgfSB9IH1cblxuLmVycm9yX19sYWJlbCB7XG5cdG1hcmdpbi10b3A6IDhweDtcblx0Y29sb3I6ICNmZjAwMDA7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0bGluZS1oZWlnaHQ6IDEzMCU7XG5cdGRpc3BsYXk6IG5vbmU7IH1cblxuLnBvcHVwX190ZXh0YXJlYSB7XG5cdGhlaWdodDogMTU3cHg7XG5cdGJvcmRlcjogbm9uZTtcblx0cGFkZGluZzogMTBweDtcblx0Ym9yZGVyOiAxcHggc29saWQgI2Q4ZDhkODtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRjb2xvcjogIzUxNTA2MTtcblx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0Zm9udC1zaXplOiAyMHB4O1xuXHRsaW5lLWhlaWdodDogMTUwJTtcblx0cmVzaXplOiBub25lO1xuXHRvdXRsaW5lOiBub25lO1xuXG5cdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0Zm9udC1zaXplOiAxNnB4OyB9IH1cblxuLnBvcHVwX19pbnB1dCB7XG5cdGhlaWdodDogNDhweDtcblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiAxMHB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCAjZDhkOGQ4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGNvbG9yOiAjNTE1MDYxO1xuXHRmb250LXdlaWdodDogMzAwO1xuXHRmb250LXNpemU6IDIwcHg7XG5cdGxpbmUtaGVpZ2h0OiAxNTAlO1xuXG5cdCYuZXJyb3Ige1xuXHRcdGNvbG9yOiAjMDAwO1xuXHRcdGJvcmRlci1jb2xvcjogI2ZmMDAwMDsgfVxuXG5cdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0Zm9udC1zaXplOiAxNnB4OyB9IH1cblxuLnBvcHVwX19idG4tY2xvc2Uge1xuXHR3aWR0aDogMTAwJTsgfVxuXG4ucG9wdXBfX2NoZWNrIHtcblx0d2lkdGg6IDYycHg7XG5cdGhlaWdodDogNjJweDtcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcblxuXHRzdmcge1xuXHRcdHdpZHRoOiA2MnB4O1xuXHRcdGhlaWdodDogNjJweDsgfSB9XG5cbi5wb3B1cC1mb3JtX19idG4ge1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRib3JkZXI6IG5vbmU7XG5cdGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuXHR3aWR0aDogYXV0bzsgfVxuXG4jakdyb3dsIGJ1dHRvbiB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5qR3Jvd2wtbm90aWZpY2F0aW9uIC51aS1zdGF0ZS1oaWdobGlnaHQge1xuXHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG5cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcblx0b3BhY2l0eTogMDtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR6LWluZGV4OiAtMTAwOyB9XG5cbi5sb2FkIHtcblx0YmFja2dyb3VuZDogI2ZmZjtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tdHJkcyk7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xuXHR6LWluZGV4OiAxMDA7XG5cblx0Ji5oaWRlIHtcblx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdG9wYWNpdHk6IDA7IH0gfVxuXG4vL9Cc0L7QtNGD0LvQuFxuQGltcG9ydCBcIm1vZHVsZXMvbW9kdWxlc1wiO1xuIiwiQG1peGluIHNpemUoJGEsJGI6ICRhKSB7XG4gIHdpZHRoOiAkYTtcbiAgaGVpZ2h0OiAkYjtcbn1cblxuQG1peGluIG9wdGlvbmFsLWF0LXJvb3QoJHNlbCkge1xuICBAYXQtcm9vdCAje2lmKG5vdCAmLCAkc2VsLCBzZWxlY3Rvci1hcHBlbmQoJiwgJHNlbCkpfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgQGluY2x1ZGUgb3B0aW9uYWwtYXQtcm9vdCgnOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyJykge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgQGluY2x1ZGUgb3B0aW9uYWwtYXQtcm9vdCgnOi1tb3otcGxhY2Vob2xkZXInKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBvcHRpb25hbC1hdC1yb290KCc6Oi1tb3otcGxhY2Vob2xkZXInKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBvcHRpb25hbC1hdC1yb290KCc6LW1zLWlucHV0LXBsYWNlaG9sZGVyJykge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBzY3JvbGxiYXJzKCRzaXplLCAkZm9yZWdyb3VuZC1jb2xvciwgJGJhY2tncm91bmQtY29sb3I6IG1peCgkZm9yZWdyb3VuZC1jb2xvciwgd2hpdGUsICA1MCUpKSB7XG4gIC8vIEZvciBHb29nbGUgQ2hyb21lXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogICRzaXplO1xuICAgIGhlaWdodDogJHNpemU7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdFx0YmFja2dyb3VuZDogJGZvcmVncm91bmQtY29sb3I7XG5cdFx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuXG4gIC8vIEZvciBJbnRlcm5ldCBFeHBsb3JlclxuICAmIHtcbiAgICBzY3JvbGxiYXItZmFjZS1jb2xvcjogJGZvcmVncm91bmQtY29sb3I7XG4gICAgc2Nyb2xsYmFyLXRyYWNrLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgfVxuICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gIH1cbiAgQC1tcy1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gd2lkZTE2NTAge1xuICBAbWVkaWEgKG1heC13aWR0aDogMTY1MHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHdpZGVCaWcge1xuICBAbWVkaWEgKG1heC13aWR0aDogMTU1MHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHdpZGUge1xuICBAbWVkaWEgKG1heC13aWR0aDogMTQzMHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHdpZGVTbWFsbCB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMzMwcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbGFwdG9wIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMzBweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5AbWl4aW4gbGFwdG9wU21hbGwge1xuICBAbWVkaWEgKG1heC13aWR0aDogMTEzMHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHRhYmxldCB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiB1cFRhYmxldCB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTFweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtb2JpbGUge1xuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gdXBNb2JpbGUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogNzY2cHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWluTW9iaWxlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIFNpemVzXG4kYmFzZS1mb250LXNpemU6IDIwcHg7XG5cbi8vIEZhbWlseVxuJGJhc2UtZm9udC1mYW1pbHk6ICdKb3N0JztcblxuLy8gdHJhbnNpdGlvbi1kdXJhdGlvblxuJHRyZHM6IDAuMjVzO1xuXG4kYnJlYWtwb2ludHM6IChcbiAgXCJwaG9uZVwiICAgICAgIDogNDAwcHgsXG4gIFwicGhvbmUtd2lkZVwiICA6IDQ4MHB4LFxuICBcInBoYWJsZXRcIiAgICAgOiA1NjBweCxcbiAgXCJ0YWJsZXQtc21hbGxcIjogNjQwcHgsXG4gIFwidGFibGV0XCIgICAgICA6IDc2OHB4LFxuICBcInRhYmxldC13aWRlXCIgOiAxMDI0cHgsXG4gIFwiZGVza3RvcFwiICAgICA6IDEyNDhweCxcbiAgXCJkZXNrdG9wLXdpZGVcIjogMTQ0MHB4XG4pO1xuXG4kY29udGVudC1zaXplOiAxNjgwcHg7XG5cbi8vIEZvbnRzIiwiLmZvb3RlciB7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4pOyB9XG4iLCIuc2VjdGlvbl9fYmFyIHtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDsgfSB9XG5cbi5iYXJfX3RvcCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbik7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9IH0gfVxuXG4udG9wX19sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMTVweDtcblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcblxuICAgICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7IH0gfSB9XG5cbi50b3BfX2NvbnRhY3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnRvcF9fcGhvbmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLnBob25lX19saW5rIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnRvcF9fY29udGFjdHMge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi5iYXJfX2JvdHRvbSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmxhY2spO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH0gfVxuXG4ubmF2X19vcGVuIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDIwcHg7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYub3BlbiB7XG5cbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcblxuICAgICAgICAgICAgc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKDhweCkgIHRyYW5zbGF0ZVgoOHB4KTsgfVxuXG4gICAgICAgICAgICBzcGFuOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVZKC01cHgpICB0cmFuc2xhdGVYKDVweCk7IH1cblxuICAgICAgICAgICAgc3BhbjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfSB9XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbiAgICAmID4gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IHZhcigtLXRyZHMpOyB9IH0gfVxuXG4ubmF2IHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7IH0gfVxuXG4ubmF2X19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogNDVweDtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcblxuICAgICAgICAubmF2X19pdGVtICsgLm5hdl9faXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH0gfVxuXG4ubmF2X19saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6aG92ZXIge1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7IH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTsgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTsgfSB9XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLm5hdl9fZmxvYXQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuXG4uYmFyX19mbG9hdCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4pO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1jb2xvci15ZWxsb3cpO1xuICAgIHotaW5kZXg6IDMwO1xuICAgIGhlaWdodDogODBweDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJkcztcbiAgICBfb3BhY2l0eTogMDtcbiAgICBfdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4yNXM7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDsgfVxuXG4gICAgQGluY2x1ZGUgbWluTW9iaWxlIHtcbiAgICAgICAgaGVpZ2h0OiA4MHB4OyB9XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cblxuLnNjcm9sbCB7fVxuXG5cbi5iYXJfX2xvZ28ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBsYXB0b3BTbWFsbCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuXG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXllbGxvdyk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfSB9XG5cbiAgICBAaW5jbHVkZSB3aWRlO1xuXG4gICAgQGluY2x1ZGUgdGFibGV0O1xuXG4gICAgQGluY2x1ZGUgbW9iaWxlOyB9XG5cbi5iYXItbG9nb19faW1nIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjI1cztcblxuICAgIEBpbmNsdWRlIHdpZGVCaWcge1xuICAgICAgICBoZWlnaHQ6IDUwcHg7IH1cblxuICAgIEBpbmNsdWRlIGxhcHRvcCB7XG4gICAgICAgIGhlaWdodDogNjBweDsgfVxuXG4gICAgQGluY2x1ZGUgbW9iaWxlOyB9XG5cbi5iYXItbG9nb19faW1nLS1tb2JpbGUge1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBtaW4td2lkdGg6IDEyMHB4O1xuXG4gICAgQGluY2x1ZGUgbW9iaWxlOyB9XG5cblxuLmJhcl9fY29udGFjdHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cblxuLmJhci1jb250YWN0c19faW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4uYmFyX19waG9uZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cbiAgICBzdmcsIGltZyB7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIHN0cm9rZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBtaW4td2lkdGg6IDM1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3IteWVsbG93KTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfSB9XG5cbi5iYXJfX3RpbWV3b3JrIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuXG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICByaWdodDogMjBweDsgfVxuXG4gICAgQGluY2x1ZGUgbWluTW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5iYXJfX2FkcmVzcyB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLXllbGxvdyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tdHJkcyk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4gICAgQGluY2x1ZGUgd2lkZUJpZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuXG4gICAgQGluY2x1ZGUgbGFwdG9wIHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTE1cHg7XG4gICAgICAgIHJpZ2h0OiAyMHB4OyB9XG5cbiAgICBAaW5jbHVkZSBtaW5Nb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmJhcl9fYnV0dG9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIEBpbmNsdWRlIHdpZGVTbWFsbCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG5cbiAgICBAaW5jbHVkZSBsYXB0b3BTbWFsbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH1cblxuLmJhcl9fYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSB3aWRlQmlnIHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9XG5cbiAgICAmOmhvdmVyIHtcblxuICAgICAgICBzdmcsIGltZyB7XG4gICAgICAgICAgICBzdHJva2U6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH0gfVxuXG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgbWluLXdpZHRoOiA0MHB4OyB9XG5cbiAgICBzcGFuIHtcblxuICAgICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbiAgICAmLmJ0bi0tdHJhbnNwYXJlbnR5IHtcblxuICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgc3ZnLCBpbWcge1xuICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tY29sb3Itd2hpdGUpOyB9IH1cblxuICAgICAgICBzdmcsIGltZyB7XG4gICAgICAgICAgICBzdHJva2U6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH0gfVxuXG5cbiAgICBAaW5jbHVkZSB3aWRlU21hbGwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgJiArIC5iYXJfX2J1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH0gfSB9XG5cbi5iYXJfX21lbnUge1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIGhlaWdodDogMzVweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogMzVweDtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3IteWVsbG93KTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiA1cHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICB3aWR0aDogMjBweDsgfSB9XG5cbiAgICBAaW5jbHVkZSBtb2JpbGU7XG5cblxuICAgICY6aG92ZXIsICYub3BlbiB7fSB9XG5cbi5iYXJfX25hdiB7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmJhci1uYXZfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cblxuLmJhci1uYXZfX2l0ZW0ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJiArIC5iYXItbmF2X19pdGVtIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgd2lkZUJpZyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDsgfSB9XG5cbiAgICAmOmhvdmVyIHtcblxuICAgICAgICAuYmFyLW5hdl9fbGluayB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlKTsgfSB9XG5cbiAgICAmLnBhcmVudCB7XG5cbiAgICAgICAgLmJhci1uYXZfX2xpbmsge1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ+KAuic7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsYXB0b3Age1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH0gfVxuXG4gICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAmID4gLmNoaWxkLW5hdl9fbGlzdCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfSB9IH1cblxuLmJhci1uYXZfX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmRzO1xuICAgIHBhZGRpbmctdG9wOiAxMXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgIEBpbmNsdWRlIHdpZGVCaWcge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cblxuICAgIEBpbmNsdWRlIGxhcHRvcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpOyB9IH1cblxuLmNoaWxkLW5hdl9fbGlzdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxMDAlO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyLXJhZGl1czogIDVweDtcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsMCwwLC4yKTtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyZHM7XG5cbiAgICAuYmFyLW5hdl9faXRlbSB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuXG4gICAgLmNoaWxkLW5hdl9fbGlzdCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9IH1cblxuLmNoaWxkLW5hdl9faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpob3ZlciB7XG5cbiAgICAgICAgJiA+IC5jaGlsZC1uYXZfX2xpbmsge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH0gfVxuXG4gICAgJi5wYXJlbnQge1xuXG4gICAgICAgICYgPiAuY2hpbGQtbmF2X19saW5rIHtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICfigLonO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7IH0gfVxuXG4gICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAmID4gLmNoaWxkLW5hdl9fbGlzdCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7IH0gfSB9IH1cblxuLmNoaWxkLW5hdl9fbGluayB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyZHM7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7IH0gfVxuXG4ubmF2X19tb2JpbGUge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogNDBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTA7XG4gICAgdG9wOiAxMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyZHM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCA0cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICB0b3A6IDgxcHg7IH1cblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAmLm9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5cbi5uYXYtbW9iaWxlX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubmF2LW1vYmlsZV9faXRlbSB7XG5cbiAgICAmICsgLm5hdi1tb2JpbGVfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4OyB9XG5cbiAgICAmLm5hdi1tb2JpbGVfX2l0ZW0tLW9yZGVyIHtcblxuICAgICAgICAubmF2LW1vYmlsZV9fbGluayB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci15ZWxsb3cpO1xuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibGFjayk7IH0gfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci15ZWxsb3cpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmRzO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzcHg7IH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogM3B4OyB9IH0gfSB9IH1cblxuLm5hdi1tb2JpbGVfX2xpbmsge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS40NHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJkcztcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXllbGxvdyk7IH0gfVxuXG4ubmF2LW1vYmlsZV9faW5mbyB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tdG9wOiAzOHB4OyB9XG5cbi5vcGVuX19tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMjFweDtcbiAgICB6LWluZGV4OiAzO1xuICAgIHRvcDogNzBweDtcbiAgICByaWdodDogNDBweDtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuXG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgICAgcmlnaHQ6IDMycHg7XG4gICAgICAgIHRvcDogNDJweDsgfVxuXG4gICAgJjpob3ZlciwgJi5vcGVuIHtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3IteWVsbG93KTsgfSB9XG5cbiAgICBzdmcge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmRzOyB9IH1cbiIsIi5zZWN0aW9uX19zZXJ2aWNlcyB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9nZW5lcmFsL3NlcnZpY2VzX2JnLmpwZykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7IH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMiwgNDQsIDY4LCAwLjc5KTsgfSB9XG5cbi5zZXJ2aWNlc19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1oMS1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC1oMS13ZWlnaHQpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uc2VydmljZXNfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywxZnIpO1xuICAgIGdhcDogMjBweDtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsMWZyKTsgfVxuXG4gICAgQGluY2x1ZGUgbWluTW9iaWxlIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwxZnIpOyB9IH1cblxuLnNlcnZpY2VzX19pdGVtIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgcGFkZGluZzogMjVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cblxuLnNlcnZpY2VzX19pbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc2VydmljZXNfX25hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtaW5Nb2JpbGUge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG4uc2VydmljZXNfX2xpbmsge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4pO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogM3B4IDhweDtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTsgfSB9XG5cbi5zZWN0aW9uX19hYm91dCB7XG4gICAgbWFyZ2luLXRvcDogLTQ1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICAgICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9IH0gfVxuXG4uYWJvdXRfX2Rlc2Mge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4pO1xuICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMjVweDsgfVxuXG4uYWJvdXQtZGVzY19fc3VidGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLmFib3V0LWRlc2NfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtaDItc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtaDItd2VpZ2h0KTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi10b3A6IC0xMHB4OyB9XG5cbi5hYm91dC1kZXNjX19pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5hYm91dF9faWNvbnMge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBwYWRkaW5nOiA1MHB4O1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgcGFkZGluZzogNTBweCAyNXB4OyB9IH1cblxuLmljb25zX19saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICBnYXA6IDEwMHB4IDI1cHg7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgZ2FwOiAyNXB4OyB9IH1cblxuLmljb25fX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA3MHB4IDFmcjtcbiAgICBnYXA6IDE1cHg7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQwcHggMWZyO1xuICAgICAgICBnYXA6IDEwcHg7IH0gfVxuXG4uaWNvbl9fdmFsdWUge1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4uaWNvbl9fbnVtIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuXG4uc2VjdGlvbl9fd29yayB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9nZW5lcmFsL3NlcnZpY2VzX2JnLmpwZykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIG1hcmdpbi10b3A6IC00NXB4O1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjsgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzkpOyB9IH1cblxuLndvcmtfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtaDEtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtaDEtd2VpZ2h0KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG5cbi53b3JrX19saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsMWZyKTtcbiAgICBnYXA6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLDFmcik7IH0gfVxuXG4ud29ya19fbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxNTBweDsgfVxuXG4ud29ya19faW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnNlY3Rpb25fX2NvbnRhY3RzIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuXG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4pOyB9IH1cblxuLmNvbnRhY3RzX19saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDIwcHggMWZyO1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH0gfVxuXG4uY29udGFjdHNfX2luZm8ge1xuICAgIHBhZGRpbmc6IDUwcHggMjVweDtcblxuICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNTAwOyB9IH1cblxuLmNvbnRhY3RzX19uYXYge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvY29udGVudC9jb250YWN0cy5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb3ZlcjtcbiAgICBwYWRkaW5nOiA1MHB4IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNSk7IH0gfVxuXG4uZm9vdGVyX19uYXYge1xuXG4gICAgLm5hdl9fbGlzdCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMTVweDsgfSB9XG5cblxuLnNjcm9sbF9fdXAge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDIwcHg7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS10cmRzKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiA0O1xuXG4gICAgJi52aXNpYmxlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4pOyB9IH1cbiIsIi5wYWdlLWlubmVyIHt9XG5cbi5zZWN0aW9uX19icmVhZGNydW1icyB7XG4gICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cblxuLmJyZWFkY3J1bWJzX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5icmVhZGNydW1ic19fbGluayB7XG4gICAgY29sb3I6ICMwMDA7IH1cblxuLmJyZWFkY3J1bWJzX19pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2dlbmVyYWwvaWNvbl9fYnJlYWQuc3ZnKSBuby1yZXBlYXQgNTAlIDUwJTsgfSB9XG5cbi5icmVhZGNydW1ic19fbGFzdCB7XG4gICAgb3BhY2l0eTogLjU7IH1cblxuLnNlY3Rpb25fX2NvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiA0NXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuXG4gICAgaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9IH1cblxuLmNvbnRlbnRfX2lubmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG5cbi5uZXdzX19saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDFmcik7XG4gICAgZ2FwOiAyMHB4OyB9XG5cbi5uZXdzX19pdGVtIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgcGFkZGluZzogMjVweDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjQwcHggMWZyO1xuICAgIGdhcDogMjBweDtcbiAgICBib3gtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwwLDAsLjE1KTtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7IH1cblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9IH1cblxuLm5ld3NfX2ltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5uZXdzX19pbmZvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLm5ld3NfX3RpdGxlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgbWluTW9iaWxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLm5ld3NfX2ludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5uZXdzX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCA4cHg7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tdHJkcyk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7IH0gfVxuIl19 */
